bonjours,
j'aurais voulu un renseignement car la doc cakephp ne dis rien dessus.

Est-il possible de définir des balise meta dans la vue sachant que le head de mes pages se trouve dans mon layout pour pouvoir remplir les parties contenu,url...etc pour un bouton j'aime facebook ?

5 réponses


moket
Auteur
Réponse acceptée

je viens de faire mon code et ça fonctionne plutôt bien

je partage mon code pour ceux qui pourraient avoir un problème similaire
dans mon cas c'est pour une galerie de vidéos, donc remplacez la partie if...etc par le lien vers l'image de votre contenu

Dans ma vue :

<?php $fbmeta'fbmeta'] = $video'Video']; ?>
<?php $fbmeta'lien1'] = $lien1; //url de ma page en cours ?>
<?php $this->set($fbmeta); ?>

et dans mon layout :

<?php if(isset($fbmeta)){
                echo '<meta name="og:description" content="'.$fbmeta'content'].'" />';
                echo '<meta property="og:title" content="'.$fbmeta'name'].'" />';
                echo '<meta property="og:type" content="website" />';
                echo '<meta property="og:url" content="'.$lien1.'" />';
                if($fbmeta'type'] == 'youtube'){
                    echo '<meta property="og:image" content="http://i2.ytimg.com/vi/'.$fbmeta'url'].'/default.jpg" />';
                }elseif($fbmeta'type'] == 'dailymotion'){
                    echo '<meta property="og:image" content="http://www.dailymotion.com/thumbnail/video/'.$fbmeta'url'].'" />';
                }
                echo '<meta property="og:site_name" content="Moket-studio" />';
                echo '<meta property="fb:admins" content="1234567890" />';
            }
        ?>

Salut, je ne suis pas sûr d'avoir compris ta question, mais pour les balises meta, j'ai un lien vers le Helper Cakephp
HtmlHelperMeta

moket
Auteur

oui j'ai vu cette section déjà sue le book mais ce que je voudrais faire c'est définir les balises dans ma vue pour y intégrer le name content etc de l'article lu que ça me donne quelque chose comme ça

<meta name="description" content="<?php echo $post'Post']'content']; ?>" />

puis que cela soit transmis dans la balise head de mon layout

Ok en effet c'est pas tout à fait la même chose.
Essaye de faire comme pour la balise title. Je n'ai jamais essayé mais ça vaut le coup d'essayer.
Par ex:
dans ton layout

<meta name="description" content="<?php echo $tavariable; ?>" />

dans ta vue

<?php $this->set('tavariable'); ?>

C'est une idée

moket
Auteur

oui bonne idée je vais essayer