Derniers sujets affichés sur la page d'accueil

3 participants

Voir le sujet précédent Voir le sujet suivant Aller en bas

Résolu Derniers sujets affichés sur la page d'accueil

Message par IzumiRK Dim 4 Juin 2023 - 23:39

Détails techniques


Version du forum : phpBB3
Poste occupé : Fondateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Moi uniquement
Lien du forum : https://behind-the-sin.forumactif.com/

Description du problème

Bonjour !

Je sais que la question a déjà été posée (plein de fois) mais tous les messages que j'ai réussis à trouver à ce sujet datent de quasiment 10 ans donc je suppose que c'est pour ça que ça ne fonctionne pas.

En fait j'ai une case "derniers sujets" sur ma page d'accueil où je voulais afficher le contenu du widget "Sujets récents" et je n'arrive pas à trouver la méthode pour. Je sais que ça implique du javascript mais le seul code que je sais utiliser c'est pour afficher les derniers sujets d'un sous-forum précis, du coup ce n'est pas vraiment ce dont j'ai besoin =/

Est-ce que quelqu'un saurait comment l'intégrer dans la case ? Elle a un id #recent_topics, si ça aide, et la zone du css qui la concerne, c'est ça (elle se trouve dans la div .PAright) :

Code:
.PAright {
  width:260px;
  text-align:center;  padding:5px;
  display:inline-block;
}

.PAright {right:5px;float:right;}

.PAright div {
  border:2px solid var(--ava);
  padding:5px;margin:auto;
  min-height:200px;
  color:var(--ava);
  text-align:left;
  font-size:12px;
}

Petite question subsidiaire mais est-ce que c'est possible d'exclure certains sous-forums du widget ? Par exemple le sous-forum où j'affiche les news, ce genre de chose. Bon c'est un peu secondaire, si c'est pas possible je changerai le nom de la zone x)

Merci d'avance ♥
IzumiRK

IzumiRK
****

Messages : 208
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Toryudo Lun 5 Juin 2023 - 13:13

Bonjour !

Alors, la seule manip que j'arrive à imaginer pour récupérer les derniers sujets, c'est effectivement de récupérer le contenu du widget "Sujets récents". Pour ça, il faut qu'il soit affiché quelque part (portail, ou sur le forum), ce qui va permettre de récupérer son contenu et de l'afficher ailleurs grâce à un code JavaScript. Il n'est pas possible de récupérer les sujets récents autrement.

Il n'est pas possible d'exclure certains sous-forums du widget... par contre, il est possible de mettre en place une petite astuce. Comme l'explique Oka.mi dans ce sujet https://forum.forumactif.com/t407210-retirer-les-news-du-widget-derniers-sujets-sujets-recents , si par exemple, vous commencez tous les noms de sujets du forum des news par "NEW" et que vous utilisez le script fourni, alors vous pouvez masquer les sujets qui contiennent "NEW" dans leur nom. Ça peut être pratique pour vous je pense !

Dites-moi si l'un ou l'autre vous convient, je ferai un code en fonction de ce que vous choisirez !
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1564
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Chacha Sam 10 Juin 2023 - 9:14

Derniers sujets affichés sur la page d'accueil UmaslZ4Bonjour,

Attention, cela fait 6 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 70035
Inscrit(e) le : 21/08/2010

https://forum.forumactif.com/
Chacha a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par IzumiRK Sam 10 Juin 2023 - 18:48

Bonjour, désolée j'ai eu une semaine ultra chargée x_x

Oui c'était l'idée que j'avais de récupérer les widgets. Est-ce que c'est possible d'ajouter des textes à exclure des sujets récents ? Par exemple "Màj", "News", "Event", etc ?
Je me pose la question parce que c'est comme ça que sont séparés certains sujets, mais est-ce que ça serait possible sinon de faire en sorte que seuls les sujets avec une icône de message en particulier soit affichés dans le widget ? Vu que tout ce qui serait affiché dedans aurait la même ? Sinon exclure certains contenus de titre ça conviendrait très bien, c'est juste que je viens de me faire la réflexion ^^
IzumiRK

IzumiRK
****

Messages : 208
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Toryudo Sam 10 Juin 2023 - 22:30

Bonjour !

Exclure plusieurs mots, oui, c'est possible. Si je reprends le script de Oka.mi, ce serait quelque chose dans ce style :
Code:
    $(function () {
      $('#comments_scroll_div .mod-recent-row').each(function () {
          $(this).find($('.mod-recent-title[title*="Màj"], .mod-recent-title[title*="News"], .mod-recent-title[title*="Event"]')).parent().remove();
      });
    });

Pour les icônes de messages, par contre, j'ai un doute, je ne suis pas sûr qu'ils s'affichent dans le widget... Vous pourriez essayer de vérifier si vous en voyez ? Pour l'instant, je ne vois pas le widget sur votre forum, donc je ne suis pas sûr de la réponse.
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1564
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par IzumiRK Sam 10 Juin 2023 - 22:41

J'ai l'impression que ça n'affiche pas l'icône de message, non =/ Dommage, ça aurait rendu ça plus simple. Il y a un image dans le code mais c'est une "empty.gif" donc je sais pas trop à quoi c'est supposé correspondre dans les images du forum. Visiblement pas l'icône en tout cas.

Mais déjà pouvoir récupérer les derniers messages postés tout en excluant les news ça serait amplement suffisant, s'il y a d'autres sujets en dehors de ça qui se mêlent au menu déroulant c'est pas trop grave.

J'ai ajouté un portail pour avoir de quoi récupérer le widget. Il n'est pas affiché dans la barre des liens mais il est accessible via le lien direct /portal, si besoin ^^
IzumiRK

IzumiRK
****

Messages : 208
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Toryudo Dim 11 Juin 2023 - 16:40

Le lien serait https://behind-the-sin.forumactif.com/portal ?
Ça n'a pas l'air de fonctionner (en tout cas, pas en tant qu'invité de mon côté), c'est ce forum ou sur un autre ?
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1564
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par IzumiRK Dim 11 Juin 2023 - 19:17

C'est bizarre, je l'ai activé pourtant 🤔 Même quand j'essaye de l'ouvrir de mon côté en cliquant directement sur le lien de navigation ça revient systématiquement à l'index.

Par là, ça a l'air de marcher : https://behind-the-sin.forumactif.com/portal?pid=1
IzumiRK

IzumiRK
****

Messages : 208
Inscrit(e) le : 25/02/2015

http://indare.forumactif.com/
IzumiRK a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Toryudo Dim 11 Juin 2023 - 21:00

Très bien, ça a l'air de fonctionner, effectivement !
Alors, on commence par ajouter les derniers sujets dans le cadre prévu pour. Pour cela, vous allez modifier le div PAright que vous avez dans votre message d'accueil, et vous avez deux possibilités :

Premier choix : récupérer le contenu, sans le défilement
Code:
<div class="PAright">
    <img src="https://i.imgur.com/XgBYcg9.png" />
    <div id="recent_topics"></div>
    <script>
      $("#recent_topics").load("https://behind-the-sin.forumactif.com/portal?pid=1 #comments_scroll_div .marquee",function(){
        $("#recent_topics").find($('a[title*="Màj"],a[title*="News"],a[title*="Event"]')).parent().remove();
      });
    </script>
</div>

Deuxième choix : récupérer à la fois le contenu et le défilement
Code:
<div class="PAright">
    <img src="https://i.imgur.com/XgBYcg9.png" />
    <div id="recent_topics"></div>
    <script src="https://illiweb.com/rs3/76/frm/jquery/marquee/jquery.marquee.min.js" type="text/javascript"></script>
    <script>
      $("#recent_topics").load("https://behind-the-sin.forumactif.com/portal?pid=1 #comments_scroll_div .marquee",function(){
        $("#recent_topics").find($('a[title*="Màj"],a[title*="News"],a[title*="Event"]')).parent().remove();
        $(".marquee").marquee();
      });
    </script>
</div>

Comme vous êtes sur phpbb3, j'ai été obligé d'adapter le script de Oka.mi pour supprimer les sujets qui contiennent Màj, News, Event, et ça vous oblige également à modifier le Template mod_recent_topics. Je pense que vous n'y avez jamais touché, donc vous pouvez remplacer son contenu par ceci :
Code:
<div class="module">
   <div class="inner"><span class="corners-top"><span></span></span>

      <div class="h3">
         {L_RECENT_TOPICS}
      </div>

<!-- BEGIN scrolling_row -->
    {MARQUEE_JS_SRC}
    <div id="comments_scroll_div">
        <div class="marquee" data-direction='{SCROLL_WAY}' data-duration='{SCROLL_DELAY}' data-pauseOnHover="true" style="overflow:hidden;height:{SCROLL_HEIGHT}px;">
            <!-- BEGIN recent_topic_row -->
            <p>
            &raquo;&nbsp;<a href="{scrolling_row.recent_topic_row.U_TITLE}" title="{scrolling_row.recent_topic_row.L_TITLE}" >{scrolling_row.recent_topic_row.L_TOPIC_TITLE}</a><br />
            <img src="{ICON_TIME}" alt="" loading="lazy" />{scrolling_row.recent_topic_row.S_POSTTIME} {BY}&nbsp;

            <!-- BEGIN switch_poster -->
            <a href="{scrolling_row.recent_topic_row.switch_poster.U_POSTER}" >{scrolling_row.recent_topic_row.switch_poster.S_POSTER}</a><br /><br />
            <!-- END switch_poster -->

            <!-- BEGIN switch_poster_guest -->
            {scrolling_row.recent_topic_row.switch_poster_guest.S_POSTER}<br /><br />
            <!-- END switch_poster_guest -->
            <!-- END recent_topic_row -->
            </p>
        </div>
    </div>
    <script>
        $(".marquee").marquee();
    </script>
<!-- END scrolling_row -->

<!-- BEGIN classical_row -->
   <!-- BEGIN recent_topic_row -->
      &raquo; <a href="{classical_row.recent_topic_row.U_TITLE}" >{classical_row.recent_topic_row.L_TITLE}</a><br />{BY}&nbsp;

      <!-- BEGIN switch_poster -->
      <a href="{classical_row.recent_topic_row.switch_poster.U_POSTER}" >{classical_row.recent_topic_row.switch_poster.S_POSTER}</a>
      <!-- END switch_poster -->

      <!-- BEGIN switch_poster_guest -->
      {classical_row.recent_topic_row.switch_poster_guest.S_POSTER}
      <!-- END switch_poster_guest -->

      {ON} {classical_row.recent_topic_row.S_POSTTIME}<br /><br />

      <!--
      <a href="{classical_row.recent_topic_row.U_POSTER}">{classical_row.recent_topic_row.S_POSTER}</a> {ON} {classical_row.recent_topic_row.S_POSTTIME}<br /><br />
      -->
   <!-- END recent_topic_row -->
<!-- END classical_row -->

   <span class="corners-bottom"><span></span></span></div>
</div>

Normalement ça fonctionne, les sujets arrivent bien dans le cadre, même si c'est un peu moche pour le moment.
Je vous propose de changer au moins une chose dans votre CSS, de remplacer ceci :
Code:
.PAleft div, .PAright div {
  border: 2px solid var(--ava);
  padding: 5px;
  margin: auto;
  min-height: 200px;
  color: var(--ava);
  text-align: left;
  font-size: 12px;
}
Par ceci :
Code:
.PAleft div, .PAright #recent_topics {
  border: 2px solid var(--ava);
  padding: 5px;
  margin: auto;
  min-height: 200px;
  color: var(--ava);
  text-align: left;
  font-size: 12px;
}

Il vous reste encore des adaptations à faire pour le visuel, mais en tout cas, le contenu est là si tout va bien !
Toryudo

Toryudo
Aidactif
Aidactif

Masculin
Messages : 1564
Inscrit(e) le : 31/03/2020

https://deus-academia.forumactif.com/
Toryudo a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Chacha Sam 17 Juin 2023 - 9:09

Derniers sujets affichés sur la page d'accueil UmaslZ4Bonjour,

Attention, cela fait 6 jours que nous n'avons pas de nouvelles concernant votre demande, si vous ne voulez pas voir votre sujet déplacé à la corbeille, merci de poster dans les 24h qui suivent ce message.

Si votre sujet est résolu, merci d'éditer votre premier message et de cocher l'icône « résolu »
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 70035
Inscrit(e) le : 21/08/2010

https://forum.forumactif.com/
Chacha a été remercié(e) par l'auteur de ce sujet.

Résolu Re: Derniers sujets affichés sur la page d'accueil

Message par Chacha Dim 18 Juin 2023 - 9:27

Derniers sujets affichés sur la page d'accueil 8djze9qBonjour,

Nous n'avons plus de nouvelle de l'auteur de ce sujet depuis plus de 7 jours. Nous considérons donc ce problème comme résolu ou abandonné. La prochaine fois, merci de nous tenir au courant de l'évolution de votre problème, ou pensez à faire un UP régulièrement !

Ce sujet est archivé afin de ne pas perdre les réponses apportées.
Chacha

Chacha
Modéractif
Modéractif

Masculin
Messages : 70035
Inscrit(e) le : 21/08/2010

https://forum.forumactif.com/
Chacha a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum