Plugin SEO

Search Engine Optimisation Plugin

SEO est un plugin qui ajoute la possibilité d’insérer manuellement où vous le souhaitez ou de manière automatique dans la partie <head> de votre site web : meta tags, URL canonique, Google webmaster tools Meta Code et Google Analytics javascript.

Il est configurable dans la page de configuration de SPIP ainsi que dans chaque rubrique et article pour les meta tags.

Installation

Insertion manuelle

Les balises suivantes sont à votre disposition :

  • #SEO_META_TAGS : pour insérer les balises META configurées
  • #SEO_META_BRUTE{nom_de_la_meta} : pour insérer la valeur brute d’une META (keywords, copyright, etc.)
  • #SEO_GWT : pour insérer la META Google Webmaster Tools
  • #SEO_URL : pour insérer le des liens canoniques
  • #SEO_GA : pour insérer le JavaScript Google Analytics

Il est donc préférable d’insérer la balise #SEO_META_TAGS avant votre appel à INSERT_HEAD, suivie de la balise #SEO_GWT.

La balise #SEO_GA pourra être placée en pied de page.

La balise #SEO_META_BRUTE pourra quant à elle être placée n’importe où dans le flux HTML, ou utilisé pour générer une balise sur mesure dans le HEAD (cas d’un sitemap Google News et de sa balise <news:keywords> par exemple).

Insertion automatique

La balise #INSERT_HEAD doit être présente dans toutes vos pages du squelette (si possible avant le <INCLURE{fond=inc-head}> si présent dans vos squelettes).

ATTENTION : dans ce cas le plugin ne fonctionnera pas correctement si vous placez #INSERT_HEAD dans le fichier inc-head.html ou un autre fichier que vous incluez dans la partie <head> de vos squelettes. Par conséquence le plugin n’est pas compatible avec le “squelettes-dist” fournit de base.

Nota : Depuis la version 1.7.3, il est possible de forcer les metas pour tous squelettes, y compris ceux fournissant déjà par défaut ces balises. Pour activer ce mode, l’option s’active depuis la page de configuration. La constante _SEO_FORCER_SQUELETTE (apparue à partie de la version 1.7.0) est maintenant obsolète et n’est plus prise en charge.

Configuration

La configuration du plugin se fait dans “Configuration / Search Engine Optimisation” (voir la capture d’écran si-dessous).

Si “l’édition des meta tags dans les rubriques et les articles” est activé vous pourrez configurer les meta tags dans chaque rubrique ou article par le biais du formulaire qui est ajouté dans les pages d’éditions.

Page de Configuration
Page de Configuration

Fonctionnement

  • Insert Head (si activé) : Rajoute les configurations activées de manière automatique dans le HEAD grâce à la balise #INSERT_HEAD de SPIP.
  • Meta tags (si activé) : Les meta tags sont ajouté dans toutes les pages (sommaire, article ou rubrique) où #INSERT_HEAD est présent ou à l’aide de la balise #SEO_META_TAGS. Vous pouvez configurer le comportement par défaut dans la configuration du plugin mais si “l’édition des meta tags dans les rubriques et les articles” est activé ce sont ces meta tag qui sont prioritaire si ils sont renseigné.
  • Url Canonique (si activé) : Les URL canoniques sont ajoutées pour la page d’accueil du site et pour tous les articles et rubriques.
  • Google Webmaster Tools (si activé) : Le Meta Tag comprenant le code de vérification est ajouté uniquement sur la page d’accueil du site.
  • Google Analytics (si activé) : Le code javascript de Google Analytics est ajouté a touts les pages où #INSERT_HEAD est présent.

Portfolio

updated on 9 February 2019

Discussion

80 discussions

  • 3
    Spipmalion

    Bonjour,

    Comment parlez-vous de la version SEO 2.0.3 alors que celle proposée en téléchargement est 1.8.1 ?
    Merci

    • Salut et désolé pour le retard de réponse. En réalité la version 2.1.2 devrait être zippée mais manifestement il y a un problème.

      Elle est toutefois disponible au téléchargement depuis SVN :

      1. svn co svn://zone.spip.org/spip-zone/_plugins_/seo/trunk seo_2_1_2

      en attendant le rétablissement du ZIP :)

    • Spipmalion

      Bonjour,

      C’est toujours la v1 en téléchargement dans cette page ?

    • Merci pour le rappel.
      C’est corrigé.

    Reply to this message

  • 1

    Bonjour,

    Est-ce que cela peut servir à compléter des données structurées demandées par Google type hentry , Champ manquant : author, updated ?

    • Salut.

      Je ne suis pas bien sûr de comprendre ta question, mais la réponse est sans aucun doute “non”.

      Si tu parles des h-entry en tant que microformats, non, ça ne le fera pas à ta place, c’est à toi dans ton HTML (donc dans ton squelette) de mettre en place le balise sémantique pertinent dont tu as besoin :
      -  http://microformats.org/wiki/h-entry-fr

      Aucun CMS ne peut “prédire” les endroits de ton code HTML qui contiennent des microdatas, ça ne peut être fait que par un humain ça !

    Reply to this message

  • 6

    Bug très pénalisant (surtout pour le référencement google).

    Les titres qui utilisent la balisent “multi” voient leur titre mal inteprété losque référencé et aussi tout en haut dans la barre windows.

    Exemple :

    "<multi>[fr]toto[en]tutu</multi>"
    
    au lieu d'afficher : "toto"
    
    cela affiche : "[fr]toto[en]tutu"
    • Des nouvelles de ce bug ?

    • Bug très pénalisant (surtout pour le référencement google).
      Les titres qui utilisent la balisent « multi » voient leur titre mal inteprété lorsque référencé et aussi tout en haut dans la barre windows.

      J’ai également eu ce problème pour le résoudre il faut légèrement modifier la méthode seo_calculer_meta_tags (l.222) du fichier seo_fonctions.php :

      function seo_calculer_meta_tags($contexte=null){
         include_spip('inc/config');
         include_spip('inc/filtres');  // [+]
       
          ...
       
         if (isset($row['titre']))
            $tag['title'] = couper(extraire_multi($row['titre'], 
            $contexte['lang']), 64); // [+]
            //$tag['title'] = couper($row['titre'], 64); [-]
            unset($row['titre']);
       
          ...
    • Salut Thomas ! :)

      Bah faut commiter ton correctif sur SPIP Zone alors !! ;-) Vous n’avez pas un accès avec Ben ou autre ?

      (sinon je commite pour vous, mais c’est dommage)

    • C’est corrigé pour la version 2.1.1 du plugin :
      -  http://zone.spip.org/trac/spip-zone/changeset/84804

    • Bonjour,
      J’utilise SEO 2.1.3 - test et les balises [fr] apparaissent dans les résultats Google.lorsque l’URL de la page se termine en ?lang=fr

      Est-ce que c’est lié à $GLOBALS[’forcer_lang’]=true; qui est défini via le couteau kiss ?

      Merci

      dd

    • Bonjour

      C’est bien probable. Le fait d’utiliser $GLOBALS[’forcer_lang’] indique à SPIP, entre autre, d’intégrer le contexte de langue dans l’url.
      De ce fait les urls calculées et publiques auront cet argument par défaut, et donc les moteurs de recherche les prendront en compte.

    Reply to this message

  • 6

    Bonjour,

    J’utilise ce plugin systématiquement, je le trouve très pratique. Merci à ses concepteurs !

    Je remarque que sur les sites conçus en Spip 2.x, je pouvais régler la balise robots sur chaque page ou rubrique, au cas par cas. Sur mes sites en Spip 3.x, ce n’est plus le cas, le champ n’apparaît plus. Pourquoi ?

    • Bonjour,

      Je suis dans le même cas, la balise robot ne remonte plus lors de l’édition d’un article ou d’une rubrique.

      SPIP 3.0.16 + SEO 2.0.4
      ou
      SPIP 3.0.13 + SEO 1.8.1

    • crazyspip

      Bonjour,

      Je remonte cette question car je trouve que l’abandon du réglage possible de meta robots au niveau de l’édition des articles, comme c’était le cas dans des versions précédentes, est très dommage !

      Pour contourner le problème, j’ai abandonné le plugin SEO sur certains sites et utilise “Champs extra” mais c’est assez lourd. Et puis j’aimais bien ce plugin tout simple.

      Y a-t-il une raison pour cet abandon ? Ou un oubli ? Qqch de prévu à ce niveau ?
      Merci d’avance de votre réponse.

    • Ha bah c’est con oui.

      C’est rétabli dans la version 2.1.2 du plugin (qui sera zippée je pense cette nuit).

    • crazyspip

      Ah chouette ! Merci beaucoup xdjuj. Mais dors un peu quand même, hein ! :-)
      En tout cas, compte sur moi pour la dézipper dès que dispo. ;-)

    • Tu pourras même l’essayer sous SPIP 3.1 ! :)

    • crazyspip

      Mais... mais c’est Noël avant l’heure !!!

    Reply to this message

  • 3
    Sandrine

    Bonjour,

    Je rencontre un souci de title et autres metas dupliqués sur les pages utilisant une pagination.
    Exemple: une page rubrique avec un pas de 5 sur la pagination et qui contient 8 articles aura les mêmes title et metas qu’on soit sur la page 1 ou la page 2.

    Sur des sites n’utilisant pas le plugin SEO et dont le title est généré par les squelettes, je récupère #ENVdebut_articles pour ajouter une pagination dans le title.
    Avec le plugin SEO, ça me semble plus ardu (je ne maîtrise pas PHP...)

    Quelqu’un s’est-il déjà penché sur le problème?

    Merci d’avance pour vos réponses,

    Sandrine

    • Salut.

      C’est une très bonne remarque, et qui s’applique d’ailleurs aussi aux balises meta link prev/next qui ne sont pas encore prises en compte dans ce plugin (faudrait le mettre en Todo).

      Je pense que la solution pour toi serait simplement de ne pas faire d’insertion automatique, et de composer “toi même” tes meta dans tes squelettes avec un truc du genre

      1. #SEO_META_BRUTE{title}[ - (#ENV{debut_articles})]

      par exemple, comme ça, si tu as un début d’article, alors tu auras la pagination de rajoutée.

      Mais ça me fait penser qu’il me semble qu’un commit a peut être cassé SEO_META_BRUTE... à vérifier donc :)

    • Sandrine

      Merci de ta réponse.

      Je viens de tester avec le plugin en version 1.8.1, puis en version 2.0.6: SEO_META_BRUTE ne semble pas cassée :)
      J’ai donc ajouté la balise dans mes squelettes (avec le filtre supprimer_numero pour être tranquille s’il n’y a pas de title spécifique renseigné):

      1. [(#SEO_META_BRUTE{title}|supprimer_numero)]

      Pour que la pagination soit cohérente dans mes titres, je fais un SET:

      [(#ENV{debut_articles}|oui)
      	[(#SET{numero-page, #ENV{debut_articles}|div{5}|plus{1}})]
      ]

      où ’5’ correspond à mon pas de pagination. ça me permet d’affiche ’Page 1’, ’Page 2’... et non ’Page 5’, ’Page 10’

      Je récupère le tout dans mes squelettes

      1. [(#SEO_META_BRUTE{title}|supprimer_numero)][ - Page (#GET{numero-page})]
    • Pour compléter ma remarque précédente: j’ajoute mon #GETnumero-page également dans mes h1 sur les différents squelettes.

      (mais ce n’est peut-être pas le bon endroit pour le mentionner, le plugin SEO ne gérant pas les balises dans le contenu)

    Reply to this message

  • 3
    germain

    Bonjour,

    Je fais appel à votre aide car je ne trouve pas de solutions,

    Pour résumé, j’ai besoin d’obtenir toutes les métas descriptions des articles d’une rubrique
    Exemple de ma boucle :

    <BOUCLE_articles(ARTICLES) {id_rubrique=1} >
    #SEO_META_BRUTE{description}
    </BOUCLE>
    • germain

      Et cela ne fonctionne pas.

      Quelqu’un aurait une idée pour pouvoir récupérer la meta desc ?

      (sorry pour le double poste, j’ai publier trop vite ma question)

      Merci !

    • C’est normal.

      Tu as une table spécifique qui est utilisée pour les valeurs SEO.

      Tu devrais donc faire une boucle du genre :

      <BOUCLE_articles(ARTICLES) {id_rubrique=1} >
      <BOUCLE_meta(SEO){objet=article}{id_objet=#ID_ARTICLE}{meta_name=description}>
              #META_CONTENT
      </BOUCLE_meta>
      </BOUCLE_articles>

      Pour afficher la description pour ton article.

      La table SEO comporte les champs suivants : id_objet / objet / meta_name / meta_content.

      • objet prend la valeur de l’objet (article, rubrique, etc.)
      • meta_name prend les valeurs genre (description, title, keywords)
    • germain

      Super Merci xdjuj, je débute dans spip et je comprends mieux certaines choses :) !

    Reply to this message

  • 1

    Bonjour!

    SPIP 3.0.11 + SEO 2.0.3

    Je pourrais enregistrer les valeurs pour les articles and rubriques, mais je ne pouvais pas fot mots-clés (MOTS).

    Quelle est la raison?solution?

    merci d’avance

    Serge

    • Apparemment seuls les articles et rubriques sont gérés dans le code

    Reply to this message

  • 19

    J’ai également un problème avec la version 2.0.3 du plugin avec SPIP 3.0.13

    Message ARRAY dans le head de la page.

    • Bonjour

      Est il possible de connaitre la version SPIP utilisée et les options du plugin activées ?

    • SPIP 3.0.13, aucun problème lorsque j’étais avec SPIP 3.0.11

      Uniquement Meta tags activé : article et rubriques

      #SEO_META_TAGS dans le head
      #SEO_GWT

      site : www.divan-production.com

      voir l’image : https://www.dropbox.com/s/ok0g4jp328mhacr/Untitled.jpg

    • Merci pour le retour.

      Je vais essayer de reproduire le comportement sur un site de test avec la même configuration.
      J’espère pouvoir identifier la cause et la résoudre.

    • J’ai le même soucis sur une 3.0.13 :( des nouvelles à propos de ce soucis?

    • pas de news? :(

    • Pas de news pour le moment. J’attend encore un peu. Sinon je ferais à la main

    • Yop

      Normalement j’ai un peu de disponibilité début de semaine prochaine :)

    • :) :) :) clap clap clap :) croisons les doigts

    • problème confirmé, le debut de semaine est passé cam.lafit :) , je regarde

    • des news ?

    • Yop

      Je suis dessus :) Oui j’ai des semaines plutôt jupétérienne ....

    • Bonjour,
      j’utilise ce plugin très intéressant, et je rencontrais le même problème que vous avec Array qui apparaissait en haut de page.
      Après quelques recherches, je n’ai pas trouvé de où il pouvait provenir mais j’ai trouvé comment le masquer en attendant :
      Ajouter «$head = str_replace(’Array’,’’,$head);» à la ligne 153 du fichier seo_fonctions.php dans la fonction «seo_insere_remplace_metas» juqte avant le «return».

      A défaut de vrai solution, c’est déjà ça en attendant.

    • Je débute sur spip donc c’est peut être évident pour vous mais je préfère préciser que pour que ça fonctionne n’oubliez pas de vider votre cache.
      A plus

    • merci ! est ce une bonne idée en attendant d’utiliser la méthode à Gery?

    • Des nouvelles? peut on utiliser la méthode à Gery en attendant?

    • Bonsoir.

      Je viens de publier un correctif.

      Pour ma part je n’utilise pas l’insertion auto, mais la balise SEO_META_TAGS, qui était cassée. En la réparant je me suis rendu compte que je cassais en retour l’insertion automatique.

      Je pense que la dernière personne à avoir travaillé sur l’insertion auto avait justement cassé la balise SEO_META_TAGS.

      J’ai normalement corrigé ET gardé les spécificités de chacun à savoir :
      -  les contraintes pour la balise SEO_META_TAGS
      -  les contraintes pour l’insertion auto

      Merci d’avance à ceux qui l’utilisent de me confirmer que l’insertion auto est bien fonctionnelle.

      Merci à ceux qui avaient le bug de “Array” de me confirmer que c’est corrigé pour eux.

      Bonne soirée.

    • Alors ça fonctionne! J’ai supprimé et réinstallé le plugin sans ça l’erreur était toujours là! Merci!!!

    • Cool.

      En fait le bug provoquait également l’absence de meta_tag sur les pages... Ce qui n’était pas très cool :)

      Tant que tu n’as plus l’alerte et que tu as bien les META dans le code source, c’est que c’est bon !

    • c’est le cas, tout en ordre, trop cool! Un grand merci!!!!

    Reply to this message

  • 1

    Bonjour,
    pour moi c’est la cata !
    j’ai du désactiver le plugins suite au passe sur la V2 car je me retrouvais avec une page blanche !
    d’où cela peut il bien provenir ?
    merci d’avance d’éclairer ma chandelle !

    • Bonjour

      Pour pouvoir répondre il faudrait plus d’informations comme :

      • quelles sont les options activées pour le module
      • que dit spip.log
      • que dit apache2/error.log

      Il peut être intéressant de rajouter le mode debogue de Apache/PHP pour afficher les erreurs.

    Reply to this message

  • 2

    Je viens de faire la mise à jour du plugin depuis une version 1.81 (fonctionnant parfaitement) vers une version 2.03
    Et j’ai des soucis depuis :

    -  Affichage en tête de page d’un “Array” (sans rien d’autre)
    -  Et surtout disparition de la zone à remplir dans chaque rubrique ou article pour personnaliser les métas.
    J’ai essayé différents réglages de config du plugin mais rien n’y fait, sauf à enlever [(#SEO_META_TAGS)] de mon début de code...

    J’ai bien vu le message “ATTENTION : dans ce cas le plugin ne fonctionnera pas correctement si vous placez #INSERT_HEAD dans le fichier inc-head.html ou un autre fichier que vous incluez dans la partie

    de vos squelettes” qui ne me parait pas très clair sans exemple concret, mais j’ai quand même sorti le #INSERT_HEAD de mon include pour le même résultat final (au passage, ça ne simplifie pas vraiment la vie des gens).

    Est-ce normal, ai-je zappé qqchose ou est-ce un bug ?

    Merci par avance pour votre aide

    • Bonjour

      Est ce que tu aurais un site de test ? La version 2 fonctionne (en théorie) il est possible qu’il reste des ersatz de mauvais codes.

      La zone de texte est maintenant en bas de l’article avec un effet de déplier/replier.

      Normalement le #INSERT_HEAD ne devrait plus poser de problème particulier. Je dois reconnaitre le cas le plus testé et le cas où on laisse le plugin surcharger le squelettes à la fin.

    • Oui, Camille.
      Je te fais parvenir le nécessaire en “privé” ;)

      Entre temps, je suis revenu à la version 1.81 fonctionnelle.

    Reply to this message

Comment on this article

Who are you?
  • [Log in]

To show your avatar with your message, register it first on gravatar.com (free et painless) and don’t forget to indicate your Email addresse here.

Enter your comment here

This form accepts SPIP shortcuts {{bold}} {italic} -*list [text->url] <quote> <code> and HTML code <q> <del> <ins>. To create paragraphs, just leave empty lines.

Add a document

Follow the comments: RSS 2.0 | Atom