Simpleshare : besoin d'un coup de main
Bonjour,
je tente de créer mon premier plugin en m'appuyant sur le guide du dev et d'autre plugin.
Mon plugin est super simple, je voudrais afficher une barre de partage style j'aime facebook, googe+1 et tweeter.
J'ai trouver comment faire pour les pages...mais pas les articles
Plus embêtant, en local ça à lair de fonctionner...mais pas en ligne ? quelq'un peut me dire ou est l'erreur
//
Résolu merci
//
Version complète + aide: Téléchargement v0.3
je tente de créer mon premier plugin en m'appuyant sur le guide du dev et d'autre plugin.
Mon plugin est super simple, je voudrais afficher une barre de partage style j'aime facebook, googe+1 et tweeter.
J'ai trouver comment faire pour les pages...mais pas les articles
Plus embêtant, en local ça à lair de fonctionner...mais pas en ligne ? quelq'un peut me dire ou est l'erreur
//
Résolu merci
//
Version complète + aide: Téléchargement v0.3
0
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
tu as demandé à ton plugin de s'afficher dans "plxShowStaticContent" soit seulement dans les pages statiques.
Tu pourrais peut-être essayer de créer un hook "simpleshare" et faire appel à ce hook là où tu veux dans ton thème ?
ton fichier simpleshare.php
<?php class simpleshare extends plxPlugin { public function __construct($default_lang) { # appel du constructeur de la classe plxPlugin (obligatoire) parent::__construct($default_lang); # déclaration du hook $this->addHook('SimpleShare', 'SimpleShare'); } /* * Traitement du hook ShowInPage */ public function SimpleShare() { #start echo "<div id=\"simpleshare\" style=\"padding-top:5px; padding-bottom:5px; clear:both; overflow:hidden;\">"; # ajout tweeter echo "<div id=\"tw\" style=\"float:left;\"><a href=\"http://twitter.com/share\" class=\"twitter-share-button\" data-count=\"horizontal\">Tweet</a><script type=\"text/javascript\" src=\"http://platform.twitter.com/widgets.js\"></script></div>"; # ajout Google+1 echo "<div id=\"g1\" style=\"float:left;\"><script type=\"text/javascript\" src=\"https://apis.google.com/js/plusone.js\"></script><g:plusone size=\"medium\"></g:plusone></div>"; # ajout FB echo "<div id=\"fb-root\" style=\"float:left;\"><script src=\"http://connect.facebook.net/en_US/all.js#xfbml=1\"></script><fb:like href=\"\" send=\"false\" layout=\"button_count\" width=\"200\" show_faces=\"true\" font=\"\"></fb:like></div>"; # end echo "</div>"; } } ?>puis sur tes pages tu appelles ce hook<?php $plxShow->callHook('SimpleShare'); ?>en faisant ça, cela s'affiche partout.Cordialement,
_____
D.San
en effet, ici j'ai utilisé uniquement la fonction pour afficher dans les pages statiques, c'est bon il me faudrait la même technique pour afficher dans les articles maintenant.
Ta méthode à l'air bien, mais comme c'est un truc vraiment simple, je voudrais que ce soit ready-to-use
Ensuite j'ai un autre soucis en local ca fonctionne, mais en ligne j'ai cette erreur: une idée ?
As-tu des espaces ou des retours de lignes, après ton dernier ?> ?
Est-ce qu'il existe un "plxShowStaticContent" mais pour les articles ?
Je ne pense pas que ton plugin puisse être "ready to use" à 100 % vu qu'on ne peut pas savoir où placer ta barre. Sa position peut varier en fonction du thème utilisé.
Par contre si je veux afficher ma barre uniquement dans une certaines pages pas dans toutes ? comment je dois m'y prendre, car la fonction:
<?php $plxShow->callHook('SimpleShare'); ?>ne s'appel pas dans un contenu ...merci
ton "plugin" marche super bien,
perso je l'ai placé dans tous les articles du blog ( template article.php )
et seulement sur la page static accueil car j'ai un template static-home.php
En gros tu fais un template static-simpleshare.php attribué aux pages sur lesquelles tu souhaites le voir afficher.
( dans la création d'article tu peux choisir le modèle de mise en page ).
Cordialement,
_____
D.San
Cependant je l'ai un peu simplifié:
<?php class simpleshare extends plxPlugin { public function __construct($default_lang) { # appel du constructeur de la classe plxPlugin (obligatoire) parent::__construct($default_lang); # déclaration du hook $this->addHook('SimpleShare', 'SimpleShare'); } public function SimpleShare() { echo "<ul id=\"simpleshare\">\n"; echo "<li>\n"; echo "<a href=\"http://twitter.com/share\" class=\"twitter-share-button\" data-count=\"horizontal\">Tweet</a><script type=\"text/javascript\" src=\"http://platform.twitter.com/widgets.js\"></script>\n"; echo "</li>\n"; echo "<li>\n"; echo "<script type=\"text/javascript\" src=\"https://apis.google.com/js/plusone.js\"></script><g:plusone size=\"medium\"></g:plusone>\n"; echo "</li>\n"; echo "<li>\n"; echo "<script src=\"http://connect.facebook.net/en_US/all.js#xfbml=1\"></script><fb:like href=\"\" send=\"false\" layout=\"button_count\" width=\"200\" show_faces=\"true\" font=\"\"></fb:like>\n"; echo "</li>\n"; echo "</ul>\n"; } } ?>et sa feuille de style:ul#simpleshare li{ display: inline; list-style: none; }8)