Ajout de champs personnalisés dans une surcharge : la valeur n’apparaît pas

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Ajout de champs personnalisés dans une surcharge : la valeur n’apparaît pas

    Salut

    Je voudrais faire une surcharge du fichier \html\com_tags\tag\default_items.php en y ajoutant des champs persos. Pour ça j'ai suivis le tuto Utiliser les champs personnalisés dans vos substitutions. J'ai commencé en y ajoutant un seul champ (pour l'affichage d'une image), mais j'ai des notices et des warning. On me dira de désactiver les rapports d'erreurs, mais mon problème c'est que l'image n’apparaît pas.

    J'ai mis :

    Code PHP:
    <?php foreach($item->jcfields as $jcfield)
         {
              
    $item->jcFields[$jcfield->name] = $jcfield;
         }
    ?>

    juste au dessus de :

    Code PHP:
    <?php
    /**
     * @package     Joomla.Site
     * @subpackage  com_tags
     *
     * @copyright   Copyright (C) 2005 - 2020 Open Source Matters, Inc. All rights reserved.
     * @license     GNU General Public License version 2 or later; see LICENSE.txt
     */

    Puis j'ai mis le code pour faire afficher la valeur du champ (celui-ci ayant comme nom image-intro) :

    Code PHP:
    <div class="img-intro">
    <?php echo $item->jcFields['image-intro']->rawvalue?>
    </div>

    Le tuto est bien expliqué et pas compliqué, donc pourquoi mon image ne s'affiche pas ?

    Joomla 3.9.24
    Sur mon site www.nenex-ordinateur-libre.net : tutos sur des logiciels et services libres.

    Association Sorgin Informatique Libre ( www.sorgin-informatique-libre.org). Education populaire au numérique libre et au libre en général.

  • #2
    Bonsoir,

    rawvalue te renvoie l'url de l'image sans la balise img. Utilises value pour avoir un contenu prêt à l'emploi
    UP, le plugin universel à découvrir sur https//up.lomart.fr
    bgMax
    , AdminOrder, MetaData, Zoom, ArtPlug, Custom, Memo, Filter, ... sur http://lomart.fr/extensions

    Commentaire


    • #3
      Même avec value rien ne s'affiche. J'ai regardé avec l'inspecteur et ma div est vide. J'ai ajouté un second code pour un champ perso qui ne contient que du texte. Mais c'est pareil.

      Le warning dit qu'il y aurait un problème à la ligne 2 du code qui permet activer l'accès direct par nom aux champs personnalisés d'une substitution (le premier code dans mon tout premier message). Dans le tuto il est écrit qu'il faut le mettre "...au début de votre fichier. " Donc je pense l'avoir bien placer. Il n'y a pas 50 débuts de fichier.
      Sur mon site www.nenex-ordinateur-libre.net : tutos sur des logiciels et services libres.

      Association Sorgin Informatique Libre ( www.sorgin-informatique-libre.org). Education populaire au numérique libre et au libre en général.

      Commentaire


      • #4
        salut, si tu fait un var_dump($item->jcfields), est ce que tu as un élément correspondant au champ devant être affiché ?
        quel est letype de champ utilisé et sa configuration?
        quels sont exactement les messages dont tu parles?
        Dernière édition par lefabdu51 à 11/02/2021, 08h41

        Commentaire


        • #5

          Avec le dump il y a bien les deux éléments qui devraient s'afficher. J'ai mis en pièce jointe les résultats du var dump.

          Le message d'erreur est :

          Warning: Invalid argument supplied for foreach() in C:\wamp64\www\MUTXUKONDOA\templates\protostar-perso\html\com_tags\tag\default_items.php on line 2
          Fichiers joints
          Sur mon site www.nenex-ordinateur-libre.net : tutos sur des logiciels et services libres.

          Association Sorgin Informatique Libre ( www.sorgin-informatique-libre.org). Education populaire au numérique libre et au libre en général.

          Commentaire

          Annonce

          Réduire
          Aucune annonce pour le moment.

          Partenaire de l'association

          Réduire

          Hébergeur Web PlanetHoster
          Travaille ...
          X