[plugin] plxStarView

15 janv. modifié dans Plugins

Voici un plugin permettant

version 1.2 le 15/01/23 @ https://github.com/gcyrillus/plxStarView/tree/v1.2 (filtrage ip sur comptage des vues et ajout d'option d'affichage : soleil et coeur en plus des étoiles)
Version : 1.01

  • d'afficher un systéme de vote à étoiles dans vos articles en Ajax.
  • d’insérer un système de vote à étoile dans une page statique ou tout autre endroit de vos thème via une iframe
  • De compter le nombre de vue de vos articles
  • d'afficher une liste des mieux notés, des plus vus, des moins noté ou des moins vues
  • possibilité d'inclure les pages statiques individuellement
  • enregistrement des données seulement si celle-ci correspondent à un article ou page statique qui existent.
  • Un seul vote par IP pour chaque formulaire

particularités: datas extraites et stockées dans un fichier json plutôt que XML

Disponible et forgeable sur github à https://github.com/gcyrillus/plxStarView .

Configuration
Via l'administration
Affichage Du formulaire dans les pages 'articles'

Le formulaire est afficher par défaut

Dans la page configuration du plugin, il est possible de sélectionner les articles où ne pas afficher de votes à étoiles

Options d'Étoiles

Dans la page configuration du plugin, vous pouvez sélectionner le type d’étoile à afficher : ☆ ou ★

À partir des fichiers du thème

4 Hooks sont disponibles et leur fonctionnement est basé sur lastartlist(), ce qui vous permet de choisir les données de vos articles à affichés et d'adapté la structure HTML à vos besoins: Quelques exemples ci dessous.

Notez, le format d'affichage est passé dans un tableau à deux entrées. La première correspond au nom de la balise parente (un ul, ol, p, details, ...) et la seconde correspond au format d'affichage natif de la fonction lastArtList() de pluXml.

Il est possible d'affichée des listes triées en fonction de

  • Les mieux notés:
    Exemple dans un div et chaque lien dans paragraphe
    <div class="stargrid mostRated" ><?php eval($plxShow->callHook('mostRated',array('div','<p><a class="#art_status plxStars" href="#art_url" title="#art_title">#art_title</a></p>'))) ; ?></div>
  • Les plus vues
    exemple en affichant l'image d'accroche, l'intro et le lien vers l'article complet:
    <div class="stargrid mostViewed"><?php eval($plxShow->callHook('mostViewed',array('ul','<li>#art_thumbnail <h2>#art_title</h2><div>#art_chapo</div><a class="#art_status plxStars" href="#art_url" title="#art_title">'. L_ARTCHAPO .'</a></li>'))) ; ?></div>
  • Les moins bien notés
    exemple en list avec image d'accroche
    <div class="stargrid worstRated"><?php eval($plxShow->callHook('worstRated',array('ul','<li><a class="#art_status plxStars" href="#art_url" title="#art_title">#art_thumbnail #art_title</a></li>'))) ; ?></div>
  • Les moins vus
    Exemple dans une balise détails
    <div class="stargrid lessViewed"><?php eval($plxShow->callHook('lessViewed',array('details','<p><a class="#art_status plxStars" href="#art_url" title="#art_title">#art_title</a></p>'))) ; ?></div>

Par défaut 5 articles sont listés, cette option est modifiable dans l'administration

Inclure un formulaire pour une page statique.

Pour attribué un formulaire de vote à étoile pour une page statique, il suffit d’insérer une iframe en y passant en paramètre le chiffre 9999 + le numéro de la page statique, par exemple : 9999002 pour votre page statique numéro 2 (002 dans l'admin).

Cette Iframe peut aussi être intégré dans le template de la fonction lastartlist() si vous souhaitez listez en tout ou partie vos articles dans une page statique ou autres endroits de votre thème.

Voici un exemple listant et affichant tous vos articles de la catégorie 1 avec son image d'accroche:

$plxShow->lastArtList('<figure class="gal-item" data-theme="#art_title">#art_thumbnail <figcaption><div>#art_chapo(3000) #art_content() </div><a href="#art_url#form" title="#art_title">Donner son avis</a><iframe style="grid-column:1/3;width:18em;border:none;height:5em;display:block;margin:auto;max-width: 100%;overflow:hidden;" src="./plugins/plxStarView/rateIt.php?art=#art_id"></iframe></figcaption></figure>', 9999, '001'); C'est un peu long, certes. N’hésitez pas à consulter la documentation de PluXml pour allez plus loin.


Support

le forum de PluXml sera le bon endroit pour demander de l'aide ou y trouver la solution d'un probléme similaire au votre. C'est ici :)

Mon site PluXml: https://re7net.com
| Mes plugins : https://github.com/gcyrillus
| PluXml 5.8.7 sur free ? oui c'est possible : http://gcyrillus.free.fr/new .
| des thèmes @ https://pluxthemes.com

Réponses

Connectez-vous ou Inscrivez-vous pour répondre.