Données ajoutées au buffer "head" ne s'affiche pas via le <jdoc include"head">

Réduire
Ce sujet est fermé.
X
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Données ajoutées au buffer "head" ne s'affiche pas via le <jdoc include"head">

    Bonjour à toutes et tous,

    Voilà j'ai mis ce code là dans le fichier tmpl "article" du composant "com_content" en surcharge dans mon template :

    Code PHP:
    if($this->item->catid == 9) :
        
    $snmeta '<meta name="twitter:card" content="summary">'.PHP_EOL;
        
    $snmeta.= '<meta name="twitter:creator" content="@mickaelouthier">'.PHP_EOL;
        
    $snmeta.= '<meta name="twitter:title" content="'.$doc->title.'">'.PHP_EOL;
        
    $snmeta.= '<meta name="twitter:description" content="'.$doc->description.'">'.PHP_EOL;
    endif;
    $doc->setBuffer($snmeta'head''snmeta'); 
    Alors je ne sais pas si les données sont bien ajoutées au buffer, en tout cas elle n'apparaissent pas au niveau de "<jdoc:include type="head" />"

    Qui peut me dire l'erreur que je comment ??

    Merci d'avance et bonne journée

    MICKAEL

  • #2
    Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

    Bonjour,

    Pourquoi ne pas utiliser le standard setMetaData ?
    Code PHP:
    if($this->item->catid == 9) : 
        
    $doc->setMetaData'twitter:card''summary' ) ;
        
    $doc->setMetaData'twitter:creator''@mickaelouthier' ) ;
        
    $doc->setMetaData'twitter:title'$doc->title ) ;
        
    $doc->setMetaData'twitter:description'$doc->description ) ;
    endif; 
    qui a le mérite de faire exactement ce qui est voulu, sans prise de tête.
    Pas de demande de support par MP.
    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

    Commentaire


    • #3
      Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

      A le c... j'ai mis l'inverse de ce que je voulais mettre... en fait c'est surtout pour ajouter les données OpenGraph, qui utilise "property" au lien de "name"

      Code PHP:
      if($this->item->catid == 9) :
          
      $snmeta.= '<meta property="og:title" content="'.$doc->title.'" />'.PHP_EOL;
          
      $snmeta.= '<meta property="og:description" content="'.$doc->description.'" />'.PHP_EOL;
          
      $snmeta.= '<meta property="og:image" content="http://www.mo-web-creation.com/images/webmaster-jura.jpg" />'.PHP_EOL;
          
      $snmeta.= '<meta property="og:url" content="'.$doc->base.'" />'.PHP_EOL;
          
      $snmeta.= '<meta property="og:type" content="article" />'.PHP_EOL;
      endif;

      $doc->setBuffer($snmeta'head''snmeta'); 
      J'aimerais aussi ajouter un lien "<link />" dans ma head, comment je peux faire ? Avec "addLink" ? Dans ce cas comment préciser l'attribut "rel" ??

      Commentaire


      • #4
        Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

        Dans ce cas,
        Code PHP:
        if($this->item->catid == 9) : 
            
        $snmeta.= '<meta property="og:title" content="'.$doc->title.'" />'.PHP_EOL
            
        $snmeta.= '<meta property="og:description" content="'.$doc->description.'" />'.PHP_EOL
            
        $snmeta.= '<meta property="og:image" content="http://www.mo-web-creation.com/images/webmaster-jura.jpg" />'.PHP_EOL
            
        $snmeta.= '<meta property="og:url" content="'.$doc->base.'" />'.PHP_EOL
            
        $snmeta.= '<meta property="og:type" content="article" />'.PHP_EOL
        endif; 
        $document->addCustomTag$snmeta ) ; 
        Pas de demande de support par MP.
        S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

        Commentaire


        • #5
          Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

          J'aimerais aussi ajouter un lien "<link />" dans ma head, comment je peux faire ? Avec "addLink" ? Dans ce cas comment préciser l'attribut "rel" ??
          Tout bête, un peu de RTFM des docs Joomla renvoie $doc->addHeadLink() http://docs.joomla.org/JDocumentHTML/addHeadLink
          Pas de demande de support par MP.
          S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

          Commentaire


          • #6
            Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

            OK Merci super merci ça fonctionne, bizarrement j'avais jamais réussi à utiliser "addCustomTag", peut être parce qu’effectivement je me prenais trop la tête lol.

            Par contre ce qui est dommage c'est que ça charge les données après mes appels CSS et mes appels JS, je sais que tu en a deja fait beaucoup mais est ce que tu sais si il est possible de faire en sorte que les données soit chargées à la suite des autres balises "meta" ?? à la suite de "description", "keywords" et cpie.. ?

            J'aimerais avoir une <head> la plus propre possible.

            Merci aussi pour addHeadLink, je suis passé à côté

            Commentaire


            • #7
              Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

              Tout ce qui touche au head après insertion standard du jdoc:include est mis à la suite, le head étant une pile (un tableau) de déclarations qui sont ensuite simplement convertis.

              Dans un head, l'ordre n'a en général aucune importance (sauf pour certains JavaScripts ou CSS à dépendances multiples), les humains ne le lisant pas, et les robots se contentant de découvrir leur présence.
              Pas de demande de support par MP.
              S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

              Commentaire


              • #8
                Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

                Envoyé par jisse03 Voir le message
                les robots se contentant de découvrir leur présence.
                Donc d'un point de vue SEO ça n'a aucune incidence ??

                Commentaire


                • #9
                  Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

                  Mais si tu veux vraiment te prendre la tête pour pas grand chose, tu peux récupérer le tableau $doc->_metatags (variable d'instance public en libraries/joomla/document/document.php, ligne 172, et réorganiser le tableau à ta sauce...

                  A mon avis, c'ets utiliser du temps CPU pour vraiment pas grand chose.
                  Pas de demande de support par MP.
                  S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                  Commentaire


                  • #10
                    Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

                    Envoyé par Soundboy39 Voir le message
                    Donc d'un point de vue SEO ça n'a aucune incidence ??
                    Au moins à ma connaissance, non. Rien dans les documents W3C n'indique un ordre de préséance des éléments d'un head.
                    Pas de demande de support par MP.
                    S'il n'y a pas de solution, c'est qu'il n'y a pas de problème (Devise Shadok)

                    Commentaire


                    • #11
                      Re : Données ajoutées au buffer &quot;head&quot; ne s'affiche pas via le &lt;jdoc include&quot;head&quot;&gt;

                      OK Merci beaucoup pour le temps passé et pour avoir solutionné mon problème, bon appétit et bonne journée.

                      Commentaire

                      Annonce

                      Réduire
                      Aucune annonce pour le moment.

                      Partenaire de l'association

                      Réduire

                      Hébergeur Web PlanetHoster
                      Travaille ...
                      X