tester l'existence de media pour afficher dans blog_item.php

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

  • [Problème] tester l'existence de media pour afficher dans blog_item.php

    Salut
    Voilà (très) longtemps que je cherche à afficher le contenu multimedia dans la partie blog d'un site joomla.
    J'y étais arrivé avec extension + champs personnalisé sous joomla 3, mais j'ai quelque souci au passage à joomla 4
    Je recherche à nouveau maintenant pour joomla 4.
    Si je comprends bien (non dev'), je devrai faire un test php sur l'existence d'url mulitmedia avant ma troncature
    <?php echo JHTML::_('string.truncate', ($this->item->introtext), 200, false, false) ; ?>
    (au passage j'ai bien passé le dernier paramètre à true pour accepter l'html mais bien sûr la troncature tronque parfois la balise de fermeture html => horible page blog

    Bref, est-ce que vous pourriez m'indiquez comment détecter puis afficher s'il existe les fichiers medias suivants (youtube, pdf, image ...)
    Code HTML:
    <p><img src="images/_joom4test/girl-438133_1920,%20pixabay.com%20[femme,%20sourire,visage,couleurs].jpg" width="1272" height="1920" /></p>
    <p><iframe width="560" height="314" src="https://www.youtube.com/embed/gKzPAm65YVg" allowfullscreen="allowfullscreen"></iframe></p>
    <p><object width="466" height="349" data="images/_joom4test/journee%20du%20230321%20jlm.pdf" type="application/pdf">
    You don't have a pdf plugin, but you can <a download="" href="images/_joom4test/journee%20du%20230321%20jlm.pdf"> download the pdf file.</a></object><img src="images/_joom4test/Array" />
    bien sûr, je ne devrai prendre en compte que le 1er élément multimedia du contenu de l'article

    Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%A8mes-communautaires/tout-et-rien/2027647-connaissez-vous-des-graphistes-communicants-pour-promouvoir-joomla

  • #2
    Envoyé par herve Voir le message
    Salut
    Voilà (très) longtemps que je cherche à afficher le contenu multimedia dans la partie blog d'un site joomla.
    Je comprend pas très bien la nature du problème.
    J'ai des sites avec des médias dans les articles et des blogs qui les affichent parfaitement.
    J'arrive pas à comprendre où tu t'embarques pour quelque chose qui me semble relativement simple avec un peu de rigueur et de méthode dans l'organisation des contenus.
    Ou alors j'ai pas tout compris dans tes explications...

    Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
    Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
    Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

    Commentaire


    • #3
      je comprends pas la question non plus, pcq de toute façon si un champ est laissé vide... il ne s'affiche pas.
      Donc c'est que la question est plus complexe que ça (ou que le template ne fait pas son boulot, tester alors sur le template par défaut de Joomla), auquel cas il faut expliquer le besoin (pas partir de ce qu'on croit être la solution)
      Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

      Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

      Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

      Commentaire


      • #4
        Salut
        merci pour vos retours.
        Les images disent 1000 mots, j'espère que cela clarifiera, sinon je résume, je teste avec Helix Ultimate ET
        1) soit je limite la longueur (voir le code au dessus dans le blog_item.php ) Et je n'ai plus les médias
        Cliquez sur l'image pour l'afficher en taille normale

Nom : avec-truncature.png 
Affichages : 80 
Taille : 94,6 Ko 
ID : 2034573
        2/ soit je ne fais rien MAIS tout (vraiment) s'affiche
        Cliquez sur l'image pour l'afficher en taille normale

Nom : sans-truncature.png 
Affichages : 46 
Taille : 55,6 Ko 
ID : 2034574
        Quand vous regardez les maquettes de ceux qui vendent des templates, c'est toujours tout beau.
        Néanmoins la vrai vie, on se trouve avec de longueurs d'articles très variable avec ou sans média
        ET plus il faut que cela soit responsive dans la partie blog ET l'article
        ET pire encore si comme mon cas, on essaie de faire des sites communautaires en souhaitant faciliter le plus possible pour que des débutants publient de manière épisodique !
        Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%A8mes-communautaires/tout-et-rien/2027647-connaissez-vous-des-graphistes-communicants-pour-promouvoir-joomla

        Commentaire


        • #5
          bon, je peux pas voir gd chose sur ces miniatures, mais là c'est avec ou sans custom fields ?
          pcq si c'est avec CF
          - on peut couper le texte automatiquement après le bouton "readmore" (sans override)
          - on peut couper le texte automatiquement après x caractères (avec un override)
          - et les vidéos et autrse s'affichent de manière standard, toutes identiques
          Présentations : slides.woluweb.be | Coordonnées complètes : www.woluweb.be

          Un message d’erreur sur votre site Joomla... ayez le reflexe de consulter la base de connaissance : https://kb.joomla.fr

          Ce forum, vous l'aimez ? Il vous a sauvé la vie ? Vous y apprenez régulièrement ? Alors adhérer à l'AFUJ, l'Association Francophone des Utilisateurs de Joomla : https://www.joomla.fr/association/adherer

          Commentaire


          • #6
            Pour éviter que tout le texte s'affiche dans un blog, il faut scinder le contenu en 2 partie
            1. l'introduction
            2. le texte complet
            en utilisant un trait de séparation de type "readmore" via l'éditeur.

            A partir de là, l'affichage d'un blog de catégorie ne prendra que la partie en intro.
            Donc si tu veux que seul un média soit visible par article, tu insères ce média en intro de chaque article concerné, en veillant, évidement, que le ration largeur/hauteur soit le même pour tout (ou en gérant ça directement via la css personnalisée).

            A noter qu'avec Helix Ultimate, il y a un système de type "Blog" qui permet d'associer un média, image ou vidéo, à chaque article.
            Le framework permet également de définir le dimensionnement des images pour avoir quelques chose d'à peu près uniforme.

            Ci-dessous une capture d'un blog de catégorie avec des vidéos directement gérées via le système blog de Helix Ultimate

            Cliquez sur l'image pour l'afficher en taille normale  Nom : screencapture-blog-musique.jpg  Affichages : 0  Taille : 200,4 Ko  ID : 2034582
            Dernière édition par dolmenhir à 26/11/2021, 16h57
            Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
            Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
            Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

            Commentaire


            • #7
              Salut
              Dans cette recherche pour joomla 4
              woluweb c'est sans custom fields pour les medias
              dolmenhir j'évite la dépendance avec le template même si plusieurs proposent cela

              SI ET Seulement Si je n'ai pas de piste de dev (et je conçois que c'est peut-être impossible car j'aurai vu passer cela depuis le temps !!)
              je me rabattrai sur " ... trait de séparation de type "readmore" via l'éditeur. .."
              Assez facile pour moi (déjà fait) mais assez problématique pour des publications ponctuelles sur sites communautaires de non familiers mais bon!
              merci
              Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%A8mes-communautaires/tout-et-rien/2027647-connaissez-vous-des-graphistes-communicants-pour-promouvoir-joomla

              Commentaire


              • #8
                Tu peux aussi contrôler ça via les css
                Code:
                object[type$=".pdf"] {
                ... traitement de type display, width, height, etc...
                }
                Permet de gérer les éléments de type "object" avec un type finissant par ".pdf"

                ou
                Code:
                iframe[src*="www.youtube.com"] {
                ... traitement ...
                }
                pour gérer une iframe ayant la src avec la sous-chaine "www.youtube.com"

                Si en plus tu associes une classe de page (via le menu) à ta catégorie, tu auras un contrôle plus fin pour éviter d'appliquer tes règles à tout le site
                Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
                Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
                Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

                Commentaire


                • #9
                  Tu peux aussi utiliser une extension comme Lastestnewsenhanced

                  exemple de blog video
                  Je préfère éclairer que briller.” - “J'ai peut-être l'air froid, mais je suis pas givré.- "ça dépend ça dépasse"
                  Ne m'envoyez pas de message privé pour résoudre vos problèmes sans y avoir été invité.
                  Dolmenhir : tailleur de site web depuis 1997. Spécialiste Joomla depuis 2005. https://www.dolmenhir.fr

                  Commentaire


                  • #10
                    Bonjour
                    Bon j'ai cherché la piste avec le CSS car le plus près du core joomla.
                    Je n'y suis pas arrivé. j'allais abandonné et utiliser la solution en ajoutant l'élément "lire la suite" dans l'édition d'un article
                    Néanmoins après toutes ces réflexions et envie d'abandon, j'ai eu une idée qui pourrait être LA solution car j'ai vu le code HTML dans l'éditeur back-office
                    Code HTML:
                    <hr id="system-readmore" />
                    L'idée serait de générer automatiquement la ligne "retour à la ligne" après un champ personnalisé "accroche" (pour éviter de reporter cette tâche à un auteur novice épisodique)
                    En effet je m'aperçois que j'ai sur plusieurs sites où j'ai mis un champ texarea pour l’introduction de ~ 150 caractères (souvent obligatoires).

                    Je sais qu'il existe du css qui peut insérer du contenu après un élément mais quand je vois le code source généré :
                    Code HTML:
                    <li class="field-entry accroche introH"> <span class="field-label ">accroche: </span> <span class="field-value ">texte d'introduction de l'article avec texte long /span> </li></ul> <aside class="akenage-comments-counter--blog"> <a href="https://joom4test.88h.ovh/index.php?option=com_content&amp;view=article&amp; id=3&amp;catid=12&amp;Itemid=101#akengage-comments-section"> <data itemprop="commentCount" value="0"> Aucune opinion sur "art avec txt long". </data> </a> </aside> <div class="article-introtext"> <p><span class="field-value ">Lorem ipsum dolor sit amet, consectetur adipiscing elit. Aenean eleifend tortor eu iaculis rutrum. In ac congue quam. Nam in est a lacus mattis facilisis. In et vestibulum nisl. Cras aliquet enim lectus, quis feugiat est consequat ac. Etiam aliquam tempor convallis.</span></p> </div>

                    le code <hr id="system-readmore" /> est converti logiquement avec l'url complète

                    Je pense que la solution pourrait être en php de tester le custom field entry accroche mais après je ne sais pas si a ce stade il est possible de mettre le
                    Code HTML:
                    <hr id="system-readmore" />
                    ou si'l faut reconstruire l'url de lire la suite, ce qui s'avère beaucoup plus compliqué
                    Faciliter l'adoption du meilleur du Libre auprès du grand public https://clibre.eu/ - Connaissez-vous des communicants ... pour promouvoir joomla ? https://forum.joomla.fr/forum/th%C3%A8mes-communautaires/tout-et-rien/2027647-connaissez-vous-des-graphistes-communicants-pour-promouvoir-joomla

                    Commentaire

                    Annonce

                    Réduire
                    Aucune annonce pour le moment.

                    Partenaire de l'association

                    Réduire

                    Hébergeur Web PlanetHoster
                    Travaille ...
                    X