Membres connectés récemment
[PHPBB2]Widget Afficher les derniers message(sujets) d'un forum spécifique
4 participants
Page 1 sur 1 • Partagez
Hello les ami(e)s,
l'astuce suivante vous permettra d'avoir un ou plusieurs Widgets pour afficher les derniers messages(sujets) d'un forum spécifique à l'identique d'un widget derniers sujets (ou presque).
Pour cela , il faudra paramétrer les permissions de chaque nouveau Widget que vous désirerez mettre en place.
On va juste faire une petite modification dans le template afin de bien cibler la date:
Dans le template topics_list_box:
Affichage/Templates/Général/topics_list_box
Recherchez ceci (ligne 81 environ):
Supprimez et remplacez par:
Pensez à enregistrer puis à valider en cliquant respectivement sur Enregistrer puis
Pour la création de Widget:
https://forum.forumactif.com/t233284-installation-modification-de-widgets#2141122
Nom du widget :
Utiliser une table type : Oui
Titre du widget :" Donner un titre en relation avec le forum concerné"
Cliquez sur
Le widget est créé.
On va donner les permissions sur le visu des sujets de ce dernier.
Afin d'éviter des soucis sur le visuel des sujets, je vous recommande de décocher la case "Invités"
Éditez le widget en cliquant sur le petit engrenage:
Je vous explique le fonctionnement du contenu a insérer dans le widget:
Pour le premier il faudra insérer cette div ayant la class:
Puis dans le script il faudra renseigner la section de la liste des sujets du forum concerné :
Puis le nombre que vous désirez afficher dans le widget:
Changer le nombre 10 ici par celui que vous désirez .
En tenant compte du nombre de sujets a afficher doit être inférieur à ce qui est mentionné dans votre P.A:
Général/Messages et Emails/Configuration/Sujets
Nombre de sujets par page :
Voilà, c'est tout pour les explications.
Passons aux choses sérieuses.
Placez donc ce contenu en modifiant la section du forum concerné et le nombre de sujets à afficher.
Cliquez sur .
Un peu de style:
Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style
Déposez ceci:
Pensez à valider les modifications en cliquant sur le bouton Valider
Si vous désirez afficher d'autres widgets, il suffit de modifier la class et le script:
Exemple en ajoutant le chiffre 1:
Et voilou les ami(e)s .
l'astuce suivante vous permettra d'avoir un ou plusieurs Widgets pour afficher les derniers messages(sujets) d'un forum spécifique à l'identique d'un widget derniers sujets (ou presque).
Pour cela , il faudra paramétrer les permissions de chaque nouveau Widget que vous désirerez mettre en place.
On va juste faire une petite modification dans le template afin de bien cibler la date:
Dans le template topics_list_box:
Affichage/Templates/Général/topics_list_box
Recherchez ceci (ligne 81 environ):
- Code:
{topics_list_box.row.LAST_POST_TIME}
Supprimez et remplacez par:
- Code:
<span class="M14_date">{topics_list_box.row.LAST_POST_TIME}</span>
Pensez à enregistrer puis à valider en cliquant respectivement sur Enregistrer puis
Pour la création de Widget:
https://forum.forumactif.com/t233284-installation-modification-de-widgets#2141122
Nom du widget :
Utiliser une table type : Oui
Titre du widget :" Donner un titre en relation avec le forum concerné"
Cliquez sur
Le widget est créé.
On va donner les permissions sur le visu des sujets de ce dernier.
Afin d'éviter des soucis sur le visuel des sujets, je vous recommande de décocher la case "Invités"
Éditez le widget en cliquant sur le petit engrenage:
Je vous explique le fonctionnement du contenu a insérer dans le widget:
Pour le premier il faudra insérer cette div ayant la class:
- Code:
M14_topics
- Code:
<div class="M14_topics"></div>
Puis dans le script il faudra renseigner la section de la liste des sujets du forum concerné :
- Code:
jQuery.get('/f2-presentations'
Puis le nombre que vous désirez afficher dans le widget:
Changer le nombre 10 ici par celui que vous désirez .
- Code:
jQuery(data).find('div.topictitle:lt(10)').each(function(){
En tenant compte du nombre de sujets a afficher doit être inférieur à ce qui est mentionné dans votre P.A:
Général/Messages et Emails/Configuration/Sujets
Nombre de sujets par page :
Voilà, c'est tout pour les explications.
Passons aux choses sérieuses.
Placez donc ce contenu en modifiant la section du forum concerné et le nombre de sujets à afficher.
- Code:
<div class="M14_topics">
</div><script>
jQuery(function(){
jQuery.get('/f2-presentations' , function(data){
// CHANGER LE NOMBRE ENTRE PARENTHESES
jQuery(data).find('div.topictitle:lt(10)').each(function(){
var texte=jQuery(this).find('a.topictitle').text();
var link=jQuery(this).closest('tr').find('.row3Right a[href^="/t"]').attr('href');
var author=jQuery(this).closest('tr').find('.row3Right a[href^="/u"]').text();
var date=jQuery(this).closest('tr').find('.M14_date').text();
if(author)
{
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span> par '+author+' '+date+'</span><br />');
}
else
{
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span>par invité '+date+'</span> <br />');
}
});});});
</script>
Cliquez sur .
Un peu de style:
Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style
Déposez ceci:
- Code:
/*Les sujets dans le widget*/
div[class^="M14_topics"]
{
color:black;
font-size:10px;
}
/*Les liens*/
div[class^="M14_topics"] a.topictitle
{
font-size:10px;
width:190px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: list-item;
text-decoration:none!important;
color:orange !important;
}
/*Le pseudo et la date*/
div[class^="M14_topics"] span
{
font-style:italic;
font-size:10px;
color:black;
}
Pensez à valider les modifications en cliquant sur le bouton Valider
Si vous désirez afficher d'autres widgets, il suffit de modifier la class et le script:
Exemple en ajoutant le chiffre 1:
- Code:
<div class="M14_topics1">
</div><script>
jQuery(function(){
jQuery.get('/f2-presentations' , function(data){
// CHANGER LE NOMBRE ENTRE PARENTHESES
jQuery(data).find('div.topictitle:lt(10)').each(function(){
var texte=jQuery(this).find('a.topictitle').text();
var link=jQuery(this).closest('tr').find('.row3Right a[href^="/t"]').attr('href');
var author=jQuery(this).closest('tr').find('.row3Right a[href^="/u"]').text();
var date=jQuery(this).closest('tr').find('.M14_date').text();
if(author)
{
jQuery('.M14_topics1').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span> par '+author+' '+date+'</span><br />');
}
else
{
jQuery('.M14_topics1').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span>par invité '+date+'</span> <br />');
}
});});});
</script>
Et voilou les ami(e)s .
- InvitéInvité
Merci Phil
Superbe astuce !
J'ai pu l'adapter, pour afficher les news d'une section sur l'accueil d'un forum :)
Par contre, on pourrait corriger ça :
Modifier les balises br par br / Sinon, cela indique une erreur dans le script (sans conséquence).
Merci pour ce partage !
J'ai pu l'adapter, pour afficher les news d'une section sur l'accueil d'un forum :)
Par contre, on pourrait corriger ça :
- Code:
if(author)
{
jQuery('.M14_topics1').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span> par '+author+' '+date+'</span><br />');
}
else
{
jQuery('.M14_topics1').append('<a class="topictitle"href="'+link+'"title="'+texte+'"> » '+texte+' </a> <span>par invité '+date+'</span> <br />');
}
</script>
Modifier les balises br par br / Sinon, cela indique une erreur dans le script (sans conséquence).
Merci pour ce partage !
Sujets similaires
Créer un compte ou se connecter pour répondre
Vous devez être membre pour répondre.
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum