Référencement site multilingue dynamique (ajax-php-mysql)

Règles du forum
Attention ce forum est destiné avant tout à ceux qui découvrent le référencement. Les membres qui auront l'amabilité de répondre à leurs questions sont priés de rester courtois, polis, indulgents, patients et pédagogues... Merci d'avance !

Par ailleurs, inutile d'utiliser ce forum uniquement pour obtenir des liens vers vos sites, les liens sont désactivés pour le référencement (nofollow).

Consultez la formation au REFERENCEMENT naturel Google de WebRankInfo / Ranking Metrics

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Référencement site multilingue dynamique (ajax-php-mysql)

Message le Mar Juil 08, 2008 16:59

Bonjour à tous,

je finis par poster pour décrire ma problématique, car après de longues recherches je n'ai toujours pas trouvé de réponse ciblée.
Pardonnez moi si je n'ai pas su chercher comme il fallait, ce n'est pas faute d'avoir essayé, d'autre part je rencontre des difficultés avec le moteur du recherche du site, il me dit qu'il ne trouve rien...

Bien je m'explique, je suis en école d'ingé (après avoir perdu mon boulot) et je me suis initié cette années aux technologies web, je connaissais déjà bien le html et le js mais j'ai découvert en plus le php, l'ajax et le SQL.
Donc on a commencé un site pour une "cliente" et je le termine seul pendant le mois de juillet.
Le site se structure de la façon suivante:

    1 page "porte d'entrée" qui détecte la langue du navigateur (html simple avec une chtouille de js), qui redirige après 5 secondes vers
    1 page "home" en html qui ne comporte que des identifiants à la place du texte (ex: [menu1_elem1], [zone_centrale]), tout le reste de la structure est écrite en dur, et la page fait appel à des fichiers .css et .js. Cette page passe dans un moteur de template
    1 page "template_engine" en php qui va traiter dans un premier temps la page "home" pour la remplir dans la langue voulue, en faisant les requête SQL qui s'imposent

Si on souhaite consulter un lien interne, le but est de modifier dynamiquement la zone centrale du site, comme la mise en page de la page "home" ne convient pas, on s'en va vers

    1 page "page_type" en html simple, conçue exactement comme la page "home" et qui passera à travers le moteur de template, la différence cette fois, c'est que l'action sur un lien interne, lancera un moteur ajax, qui appellera un fichier php effectuant d'autres requêtes SQL pour enfin donner une réponse que l'on placera dans la zone centrale de la page type


Pour résumer, c'est comme si on avait autant de pages html que de contenus centraux, sauf que ceux ci sont chargés dynamiquement dans la zone centrale.
La cliente souhaite un référencement passif des plus efficaces, et je ne sais absolument pas du tout comment faire sur une telle structure.
La dernière solution de secours à laquelle j'ai pensé, est d'écrire une page html par contenu, sans aucun menu, et un seul lien, renvoyant vers la structure du site chargée avec le contenu souhaité pour permettre à l'internaute de poursuivre sa navigation, mais bon, c'est franchement du brciolage comme solution et je suis sûr qu'il y a des moyens plus pros.

D'après ce que j'ai lu sur ce forum il y a beaucoup de gens qui s'y connaissent vraiment bien, j'ai bon espoir que l'un d'entre vous éclairera ma lanterne :D

Je n'ai actuellement pas de contenu en ligne pour vous montrer à quoi cela ressemble, je vous tiens au courant dès que cela change.
Merci d'avance.


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8579
Inscription: 23 Nov 2005

Message le Mar Juil 08, 2008 17:38

Donc si je comprends bien tu as :

1/ Une page d'accueil avec aucun contenu dont le but est uniquement de rediriger en fonction d'une langue

2/ Du contenu chargé exclusivement à partir de fonctions AJAX

Bref deux points qui ne vont pas aider en terme de référencement. L'Ajax c'est bien, mais pour afficher du contenu, tu te tires un peu une balle dans le pied en terme de réf.

Donc je te conseillerais :

1/ De faire sauter ta page d'accueil et de la remplacer par un lien permettant, sur chaque page du site, de switcher entre les version française et anglaise.

2/ Pour le chargement du contenu, le mieux serait de supprimer l'affichage des données via du JS, mais j'imagine que c'est un peu tard...

Je te conseille d'utiliser des simulateurs de bot, type http://www.spider-simulator.com/fr/ pour voir comment il interprète ton site.


Marie-Aude
Modérateur
Modérateur
 
Messages: 11900
Inscription: 5 Juin 2006

Message le Mar Juil 08, 2008 18:08

Ca dépend exactement de ce que fait ta page d'accueil, mais si elle fonctionne comme la mienne, c'est à dire détection ET redirection, ce n'est pas un problème pour le référencement.

Sinon, je plussoie, une page qui ne sert qu'à choisir une lagnue, et sur laquelle, en plus l'internaute doit cliquer, c'est pas bon.

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mar Juil 08, 2008 18:09

la page d'accueil temporise uniquement dans le but de laisser au système le temps d'écrire le cookie dans lequel on trouvera l'information de la langue, l'utilisateur n'a rien à faire si ce n'est patienter 5s. Dans certains cas, lorsque l'on effectue un traitement s'appuyant sur le contenu d'un cookie que l'on vient d'écrire, il ne peut pas le lire puisqu'il est en cours d'écriture.

Pour le chargement du contenu textuel de la zone centrale, je ne passe effectivement que pas le moteur ajax, le reste de la structure est généré par du php qui ouvre des fichiers html ou qui fait des requêtes (contenu linguistique), le contenu de la structure n'est chargé qu'a l'ouverture ou au rafraichissement de la page (template_engine.php?params) avec bien entendu un chargement de la zone centrale par ce même template_engine.php lors d'un chargement ou rechargement seulement.

D'après ce que tu me dis, il me faudrait mieux changer la page d'accueil (qui n'est autre que mon index.html) par une simple page proposant le choix des 5 langues, qui renverraient respectivement vers une sorte de table des matières ou de sitemap dans la langue voulue(attention je fais peut être un abus de language avec ce mot)?
Toujours est il que je n'aurai que des url exotiques derrière ces liens, et ça ne correspond plus du tout au cahier des charges que je suis... :?

Tu me dis qu'il serait préférable de ne pas utiliser du js pour modifier le contenu central, je veux bien, je peux toujours changer mon fusil d'épaule (si j'en ai encore le temps bien sûr) mais tu me conseillerais de m'y prendre comment dans ce cas?

La solution "bricolage" que j'ai évoqué plus haut fonctionnerait elle au pire des cas?

En tout cas merci de ton aide :)


bruno212
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 497
Inscription: 13 Fév 2005

Message le Mar Juil 08, 2008 19:24

D'après ce que je comprends, tu cherches à faire un site dynamique, optimisé pour le référencement.

Une question, pourquoi tu n'utilises pas un cms:
http://fr.wikipedia.org/wiki/Content_management_system

à plus

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mar Juil 08, 2008 19:26

j'ai effectivement découvert ce qu'étais un cms après la fin de notre période de projet.
Vu les ressources dont je dispose déjà, tout reprendre de 0 m'arrache un peu la bouche :P
Il ne me manque pas grand chose pour terminer le site, si ce n'est m'assurer un bon référencement passif.
Voilà pourquoi je n'ai pas utilié un cms. D'autre part, en milieu scolaire, le but étant d'aprendre, je me voyais mal dire à mes profs que j'avais rien fait moi même... :wink:


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8579
Inscription: 23 Nov 2005

Message le Mar Juil 08, 2008 19:30

Ah non l'idée serait au contraire de t'affranchir de ce genre de page d'accueil, et de donner directement accès à une page d'accueil dans une langue par défaut, en offrant a posteriori le choix à l'internaute de choisir une autre langue.

Pour les contenus, le webmaster du site doit ultérieurement pouvoir rajouter du contenu (donc des pages) ou non ?

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mar Juil 08, 2008 19:39

le webmaster n'est autre que la cliente, qui ne dispose que de connaissances rudimentaires des technologies web, je lui configure donc une interface d'administration qui lui permet de modifier le contenu de sa base afin d'éditer les contenu centraux (tinyMCE)
au départ effectivement la langue était par défaut avec possiblité de la changer, mais la structure du site est toujours inchangée et j'ignore ce qu'en penseront les robots


Marie-Aude
Modérateur
Modérateur
 
Messages: 11900
Inscription: 5 Juin 2006

Message le Mar Juil 08, 2008 20:37

Jax a écrit:la page d'accueil temporise uniquement dans le but de laisser au système le temps d'écrire le cookie dans lequel on trouvera l'information de la langue, l'utilisateur n'a rien à faire si ce n'est patienter 5s. Dans certains cas, lorsque l'on effectue un traitement s'appuyant sur le contenu d'un cookie que l'on vient d'écrire, il ne peut pas le lire puisqu'il est en cours d'écriture.


Là je suis d'accord avec l'utilisateur au pseudo japonisant que je n'arrive pas à retenir : ça pas bon.

5 sec c'est long, dans le temps du Web, et il faudra ensuite rajouter le temps de chargement de la page.
Détecte la langue, dirige vers une page et écris le cookie ensuite :)

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mar Juil 08, 2008 21:40

Ben en fait ça parait pas si long, mais je suis d'accord avec ta proposition qui semble bien plus intelligente. Cependant on s'éloigne du vrai problème :D
Mais bon, j'ai toujours des questions épouvantables pour ce qui est des solutions :P


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8579
Inscription: 23 Nov 2005

Message le Mar Juil 08, 2008 21:51

Sauf que ta redirection en js, les bots des moteurs de recherche se cognent les dents dessus. Ils sont dans certains cas a priori capable de suivre une url si elle apparaît en clair dans le code source (encore que je n'ai jamais pu le vérifier par moi-même), mais une redirection en relatif je vois mal comment.

Donc tant que tu laisses là les bots des moteurs de recherche s'arrêteront pour beaucoup à ta page d'accueil vide...

Et c'est aussi pour ca qu'utiliser Ajax pour afficher l'essentiel du contenu d'un site est à éviter (affichage géré en JS donc pas pris en compte par les bots).

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mar Juil 08, 2008 22:16

c'est bien ce qu'il me semblait, je te remercie de me le confirmer, au moins, j'en suis sûr.
Maintenant il me reste à trouver un moyen de faire comprendre aux bots ce qu'il doivent regarder.
Est ce que tu penses que la solution - si on peut appeler ça une solution - dont j'ai parlé au départ, à savoir créer une page de contenu en html simple pour chaque contenu, qui ne contient que le texte du contenu mis en page et un seul lien, qui renverrait vers la page type du site affichant le même contenu, serait viable? ou débile?

Mais bon, quand j'y repense... quand la cliente va éditer un contenu, elle va sûrement pas éditer la page qui correspond... donc c'est quand même complètement débile de ce côté là... à moins que... tu vas peut être pouvoir me répondre, je génère ces mêmes pages simple en php via les même requêtes SQL, mais sans passer par le moteur ajax bien enendu. Que ferait le bot dans ce cas là? il va lire la page?


Marie-Aude
Modérateur
Modérateur
 
Messages: 11900
Inscription: 5 Juin 2006

Message le Mar Juil 08, 2008 22:25

Excuses moi, mais je ne comprends pas l'intérêt de sortir une page en Ajax si tu peux la sortir en php.
Rappel : pourquoi faire compliqué quand on peut faire simple ?


UsagiYojimbo
WRInaute accro
WRInaute accro
 
Messages: 8579
Inscription: 23 Nov 2005

Message le Mar Juil 08, 2008 22:29

Le pseudo japonisant est du même avis que la damoiselle à l'avatar so sexy.

Si tu veux une vraie solution pérenne, qui ne risque pas de se retourner contre toi à un moment ou un autre et qui va permettre un maximum de souplesse à l'utilisateur final, laisse tomber l'Ajax pour l'affichage du contenu.

Jax
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 13
Inscription: 8 Juil 2008

Message le Mer Juil 09, 2008 0:33

"pourquoi faire compliqué quand on peut faire simple", je suis tellement d'accord avec ce principe...
Alors charger la page en php demande de systématiquement recharger toute la page avec sa structure qui elle, ne change pas. Voilà pourquoi on avait choisit l'ajax, pour gagner en rapidité et ne pas toucher au contenu fixe.
Après je parlais de générer des documents bcp plus légers avec seulement du php pour faire sourir les bots de référencement. Ces documents n'auraient été affichés seulement suite à une recherche (google) puis n'offraient comme seule possibilité de lien, le site dans sa structure complète avec le contenu correspondant au document dont ils viennent.

Alors effectivement l'ajax complique les choses, mais ... dans l'état actuel, comment puis je faire au mieux?

Dans le cas (qui ne me plait pas trop) ou j'abandonne l'ajax pour systématiquement recharger toute la page par le moteur de template, donc en php, comment va se comporter le bot de rérérencement puisque tout le contenu textuel reste dans la base de donnée et n'est appelé qu'a l'action sur les liens qui passent de toute façon par du javascript (url exotique déterminé en fonction de l'id de l'élément de menu)? Je crois que même comme ça, le problème n'est que déplacé ailleurs...
Dernière édition par Jax le Jeu Juil 10, 2008 11:16, édité 1 fois.

Référencement site multilingue dynamique (ajax-php-mysql)

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Formation recommandée sur ce thème :

Formation REFERENCEMENT naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.

Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités