Configuration pour un thème

Bonjour à tous,

Lorsque l'on créé un plugin nous avons la possibilité de définir une page de configuration. Est-ce qu'il serait possible de transposer la même idée mais pour un thème ?

Je m'explique, pour un thème que je dev qui comporte un slide je souhaiterais permettre aux utilisateurs la possibilité de définir le répertoire où ce trouve les fichiers à utiliser pour le slide. Actuellement ils sont obligés d'éditer un fichier php et de faire les modifications à la main, pas très pratique dans le quotidien.

Je pourrais le faire via un plugin mais lors de l'installation il faudra que l'utilisateur install le plugin.

Philippe.

J'ai un string de l'array

Réponses

  • DjbWebmasterDjbWebmaster Member
    août 2016 modifié
    Bonjour,

    Je me suis posé la même question et j'ai choisi la solution du plugin associé au template
  • Le plugin est le plus simple. Ce qui serait bien par contre, ce serait d'indiquer les dépendances dans le fichiers de présentation du thème (dans une balise officielle dédiée par exemple)
  • PierrePierre Member
    août 2016 modifié
    Je seconde la demande de quelques fichiers configurables pour un thème dans l'admin mais je confesse que ce n'est pas ce que je mettrais en début de liste. Ça ne change toutefois pas le fait que ce soit une idée qui rendrait les thèmes plus accessibles aux nouveaux qui sont souvent terrorisés à l'idée d'ouvrir un fichier php, c'est leur droit.

    Pour donner un coup de main à la question initiale, une solution rapide pour charger le slider est d'utiliser la fonction d'image d'accroche artThumbnail('#img_url'). J'ai fait des douzaines de thèmes avec slider et le truc fonctionne à merveille. On crée des articles (peu importe si leur texte sera utilisé ou pas) et on leur accroche une image. En mettant ces articles dans une catégorie stricte qui n'est pas affichée ailleurs, on contrôle l'arrivée des images, leur quantité, etc. À noter qu'il faut utiliser le format ('#img_url') dans la fonction pour ne pas créer un lien vers une page vide. On voulait tout pouvoir gérer de l'admin, mission accomplie.

    L'opération semble dénaturer les principes d'article, de catégorie, de miniature qui ne l'est pas, etc, mais pour moi ce n'est qu'un autre exemple de la flexibilité de PluXml pour arriver à nos fins.
  • Pour le créateur du thème le plugin alourdit le processus de création et de maintenance car en plus du thème à mettre à jour par rapport au montée en version de PluXml il va devoir aussi gérer la mise à jour du plugin. Alors que juste une page de configuration qui permet juste la lecture/écriture d'un fichier xml de configuration et la reprise de ces paramètres côté template me parait plus simple.

    J'ai un string de l'array

  • Pour donner un coup de main à la question initiale, une solution rapide pour charger le slider est d'utiliser la fonction d'image d'accroche artThumbnail('#img_url'). J'ai fait des douzaines de thèmes avec slider et le truc fonctionne à merveille. On crée des articles (peu importe si leur texte sera utilisé ou pas) et on leur accroche une image. En mettant ces articles dans une catégorie stricte qui n'est pas affichée ailleurs, on contrôle l'arrivée des images, leur quantité, etc. À noter qu'il faut utiliser le format ('#img_url') dans la fonction pour ne pas créer un lien vers une page vide. On voulait tout pouvoir gérer de l'admin, mission accomplie.

    J'y ai bien pensé à faire un truc du genre mais ça oblige pas mal d'opération pour faire un slide qui pourrait simplement être fait par la lecture d'un répertoire précis (et paramétrable). Bien sûr c'est pas résoudre mon problème de slide qui est importante dans ce post mais bien avancer la discussion sur l'idée de permettre la gestion d'une configuration depuis le gestionnaire de thème.

    J'ai un string de l'array

  • PierrePierre Member
    août 2016 modifié
    Le slider n'est rien d'autre qu'une représentation différente de la fonction lastArtList() avec une variable $format qui contient le contenu de la boucle du slider, ça se fait en moins de 5 minutes.

    Créer 3 ou 4 articles (vides) et leur attacher une image d'accroche présente dans le répertoire média, ça ne doit pas prendre plus de quelques minutes non plus. Il faudrait comparer au temps nécessaire pour expliquer à notre visiteur-client frileux quelque chose de nouveau dans une interface unique qui ne servira qu'une fois par mois, et encore.

    Si on préfère la totale, ma technique habituelle est d'utiliser la boucle classique de la home.php pour populer le slider. Les articles "cochés" pour l'accueil voient donc immédiatement leur image d'accroche rouler dans le slider, avec en bonus le lien vers l'article en question. Pratiquement tous mes sliders sont en page d'accueil, ils utilisent tous cette technique. J'utilise l'utilitaire cImage (qui fonctionne tout seul sans rien configurer) pour rogner les images et les présenter de taille uniforme dans le slider. Preuve à l'appui, voici le slider de ta propre page d'accueil
    [== Indéfini ==]
    <div class="line">
    <div id="owl-demo" class="owl-carousel owl-theme margin-bottom" style="opacity: 1; display: block;">
    <div class="owl-wrapper-outer">
    <div class="owl-wrapper" style="width: 6400px; left: 0px; display: block; transition: all 400ms ease; transform: translate3d(-2400px, 0px, 0px);">
    
    while($plxShow->plxMotor->plxRecord_arts->loop()): ?>
    
    <div class="owl-item" style="width: 800px;">
    <div class="item">
    <img src="<?php $plxShow->template(); ?>/img.php?src=<?php $plxShow->artThumbnail('#img_url'); ?>&w=800&h=335&crop-to-fit" alt="">
    </div></div>
    
    <?php  endwhile; ?>
    
    </div>
    </div>
    
    <div class="owl-controls clickable">
    <div class="owl-pagination">
    <div class="owl-page">
    <span class=""></span></div><div class="owl-page"><span class=""></span></div><div class="owl-page"><span class=""></span></div><div class="owl-page active"><span class=""></span></div></div><div class="owl-buttons"><div class="owl-prev">prev</div><div class="owl-next">next</div></div></div></div>
    </div>
    

    Pour l'instant, les images ne sont pas liées à leur article respectif, simplement pour reproduire le slider actuel, mais c'est très simple avec un lien A.

    À noter que cet exemple présume que le fichier img.php (disponible dans presque tous mes thèmes) est installé dans le répertoire du thème actif et qu'un répertoire (vide) nommé "cache" est présent au même endroit.

    Pour la version lastArtList, c'est une variante simple de la même chose, avec le contenu de "l'intérieur" de la boucle dans sa variable $format. Je pourrai la donner si cette version "articles cochés pour l'accueil" ne fait pas l'affaire.
  • Merci Pierre pour ton astuce, je la garde de côté. Mais je souhaiterais qu'on ne s'écarte pas du sujet principal de ce post : page de config ou non pour les thèmes ? ;)

    J'ai un string de l'array

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