Question

J'utilise Zend Framework 1.8. J'ai un problème avec headMeta () qui duplique mes méta mots-clés.

Dans mon layout.phtml, j'ai
    <?php echo $this->headMeta(); ?>

J'ai un Custom Controller_Plugin_ViewSetup (extension Zend_Controller_Plugin_Abstract) qui contient le code suivant, dans la fonction dispatchLoopStartup():
    $view->headMeta()->setHttpEquiv('Content-Type', 'text/html;charset=utf-8');     $view->headMeta()->setName('keywords', 'global,generic,keywords,');

Enfin, dans mes scripts de vue, j'ai les éléments suivants:
    $this->headMeta()->appendName('keywords', 'view,specific,keywords');

Je m'attendais à ce que dans mon code source HTML, je vois:
    <meta http-equiv="Content-Type" content="text/html;charset=utf-8" />
    <meta name="keywords" content="global,generic,keywords,view,specific,keywords" />

Cependant, je vois effectivement ceci:
    <meta name="keywords" content="global,generic,keywords," />
    <meta name="keywords" content="view,specific,keywords" />
    <=>

En d'autres termes, les méta-mots-clés ne sont pas concaténés comme ils le devraient. Qu'est-ce que je fais mal?

À la vôtre,
   Matt

Était-ce utile?

La solution

En effet, la méthode append n'ajoute pas de mots clés à la liste déjà définie. La méthode append ajoutera la prochaine balise aux balises déjà définies. De même, si vous choisissez prepend, ceci ajoutera votre nouvelle balise avant celle que vous avez définie dans votre plugin.

Je pense que la meilleure chose à faire serait de supprimer le titulaire de mots-clés du plug-in, de stocker vos mots-clés par défaut dans votre objet de configuration et de les insérer dans votre affichage en même temps que vous ajoutez vos mots-clés supplémentaires.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top