PluXml.org

Blog ou CMS à l'Xml

Vous n'êtes pas identifié(e).

#1 21/06/2012 13:34:23

flipflip
Membre
Lieu : Lyon
Inscription : 19/05/2008
Messages : 575
Site Web

Balise meta

Bonjour,

En voulant personnaliser les metas pour la publication de lien via facebook avec cette méthode (http://www.blogoflip.fr/article129/face … scriptions) je me suis rendu compte d'une contrainte. Les fonctions :

<?php $plxShow->meta('description') ?>
<?php $plxShow->meta('keywords') ?>

Renvoie directement les balises html donc pas moyen de récupérer directement la valeur de content. Certains vont dire que c'est pas grave peu de moteur utilisent encore les meta mais dans le cas de facebook c'est un moyen (en utilisant les balises og:...) de personnaliser la description, le titre récupéré lors de la publication de lien. Je pourrais passer par un plugin mais c'est dommage de dupliquer une donnée.

Dernière modification par flipflip (21/06/2012 13:35:06)


"J'ai un string dans l'array" | http://www.blogoflip.fr | Démo des plugins

Hors ligne

#2 21/06/2012 13:56:06

danielsan
Membre
Lieu : Montpellier
Inscription : 18/07/2011
Messages : 908
Site Web

Re : Balise meta

Salut


peut-être peux-tu t'inspirer de l'astuce du Lapin bleu: Jouer avec la meta-balise "Description" ..?


Que l'inspiration soit avec vous, à jamais !

Samare le lapin bleuTu connais pas Samare ?! Le lapin bleu qui propose des plugins, templates et autres trucs et astuces pour PluXml ?!

Hors ligne

#3 23/06/2012 07:57:59

flipflip
Membre
Lieu : Lyon
Inscription : 19/05/2008
Messages : 575
Site Web

Re : Balise meta

Salut, c'est parfait ça marche avec ta solution.
Merci


"J'ai un string dans l'array" | http://www.blogoflip.fr | Démo des plugins

Hors ligne

#4 25/06/2012 10:39:53

Francis
Membre
Inscription : 19/11/2011
Messages : 140
Site Web

Re : Balise meta

Bonjour Flipflip,
Pour ton problème, la solution proposée par Danielsan est la meilleure.


Mais si on veut généraliser et pour ceux que ça intéresserait, il y a moyen d'intercepter un contenu envoyé par "echo", et de le mettre dans une variable pour le traiter avant affichage :

ob_start();
echo "Texte à afficher....";
$texte = ob_get_clean();

Grâce à la fonction ob_start, l'instruction "echo" place le contenu dans un tampon au lieu de l'afficher, ce tampon de sortie pouvant être récupéré dans une variable avec ob_get_clean.


J'ai eu ce genre de problème, et j'étais bien embêté jusqu'à ce que je découvre ces fonctions de bufferisation de sortie : http://cz2.php.net/manual/fr/ref.outcontrol.php


Elles sont bien utiles avec PluXml, dont bon nombre de fonctions (notamment dans la classe plxShow) affichent directement le résultat avec l'instruction echo.

Dernière modification par Francis (25/06/2012 10:40:39)

Hors ligne

#5 25/06/2012 12:10:18

danielsan
Membre
Lieu : Montpellier
Inscription : 18/07/2011
Messages : 908
Site Web

Re : Balise meta

On pourrait peut-être demander si une fonction native utilisant plxShow nous permettrait pas de récupérer n'importe quel champ de la page ..?
du style

$ma var = $plxShow->getChamp['le_champ'];

si le champ existe on retourne sa valeur sinon ... on fait tout péter ! ^^^


Que l'inspiration soit avec vous, à jamais !

Samare le lapin bleuTu connais pas Samare ?! Le lapin bleu qui propose des plugins, templates et autres trucs et astuces pour PluXml ?!

Hors ligne

#6 25/06/2012 13:00:43

Stéphane
Responsable du projet
Lieu : pas loin de Metz
Inscription : 07/08/2007
Messages : 3 823
Site Web

Re : Balise meta

Bonjour

vous pouvez accèder à partir du thème à plusieurs variables directement avec ce genre de syntaxe

$plxShow->plxMotor->aConf['xxx']
$plxShow->plxMotor->plxRecord_arts->f('title')

Pluxopolis un site sur PluXml, mais pas seulement...
Twitter: @pluxopolis
-----
Mon site perso
Mon compte twitter

Hors ligne

#7 25/06/2012 14:11:51

Jerry Wham
Membre
Inscription : 13/07/2011
Messages : 1 042
Site Web

Re : Balise meta

J'allais le dire ^_^


Mangez un castor, vous sauverez un arbre !

J'ai la tête dans le cul ...code

Hors ligne

#8 25/06/2012 14:28:31

danielsan
Membre
Lieu : Montpellier
Inscription : 18/07/2011
Messages : 908
Site Web

Re : Balise meta

c'est qu'on est fainéant !
Vous ne vous rendez pas compte de tout ce qu'il faut écrire:

$plxShow->plxMotor->plxRecord_arts->f('title');

alors qu'un

$plxShow->getChamp['le_champ'];

c'est plus court !!! ^^^


Que l'inspiration soit avec vous, à jamais !

Samare le lapin bleuTu connais pas Samare ?! Le lapin bleu qui propose des plugins, templates et autres trucs et astuces pour PluXml ?!

Hors ligne

#9 25/06/2012 15:25:25

Francis
Membre
Inscription : 19/11/2011
Messages : 140
Site Web

Re : Balise meta

Cette méthode $plxShow->plxMotor->... est intéressante, mais elle ne s'applique qu'à certaines variables. D'ailleurs, ce serait bien d'en avoir la liste, mais peut-être que Croque-Odille nous prépare ça....


Si on prend l'exemple de la fonction comme lastArtList() qui affiche directement la liste des derniers articles avec "echo", on obtient un message d'erreur en écrivant $plxShow->plxMotor->lastArtList().

ob_start() est pour l'instant la seule façon de récupérer le contenu envoyé par cette fonction lastArtList(), pour le traiter et l'afficher différemment.

Hors ligne

#10 25/06/2012 16:15:24

Stéphane
Responsable du projet
Lieu : pas loin de Metz
Inscription : 07/08/2007
Messages : 3 823
Site Web

Re : Balise meta

Francis a écrit :

Si on prend l'exemple de la fonction comme lastArtList() qui affiche directement la liste des derniers articles avec "echo", on obtient un message d'erreur en écrivant $plxShow->plxMotor->lastArtList().

Normal: lastArtList() est une méthode de la classe plxShow et pas de plxMotor, contrairement à aConf et plxRecord_arts qui appartiennent à plxMotor.


Pluxopolis un site sur PluXml, mais pas seulement...
Twitter: @pluxopolis
-----
Mon site perso
Mon compte twitter

Hors ligne

#11 25/06/2012 16:44:34

Francis
Membre
Inscription : 19/11/2011
Messages : 140
Site Web

Re : Balise meta

Effectivement, j'ai cru un instant que, par magie, on pourrait récupérer sous forme de variable tout ce qu'affichent les fonctions de la classe plxShow !
Je conserve donc la fonction ob_start() pour faire ça, mais heureusement elle est simple à utiliser.

Hors ligne

Pied de page des forums

Copyright © 2006-2013 PluXml.org, tous droits réservés