Script pour faire un index d'un forum
2 participants
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1 • Partagez
Script pour faire un index d'un forum
Détails techniques
Version du forum : phpBB3Poste occupé : Administrateur
Navigateur(s) concerné(s) : Google Chrome
Personnes concernées par le problème : Tous les utilisateurs
Lien du forum : (lien masqué, vous devez poster pour le voir)
Description du problème
Bonjour,mon idée complète serait d'afficher une colonne des sujets affichant les sujets d'une forum spécifique plutôt que tout les sujets intégralement,
donc je cherche un script capable de faire une telle chose,
j'avais déjà testé ce script : https://forum.forumactif.com/t300301-indexation-d-une-section mais non seulement cela génère une page qui sert à générer l'index et non pas l'index directement,
mais en plus l'affichage ne me convient pas,
et le script utilisant du code que je ne connais pas je ne sais pas comment le modifier,
mais en lui même il est la preuve que cela peut se faire, il faudrait jusque que j'arrive à avoir l'équivalent mais qui génère directement l'index et sur lequel je puisse travailler la mise en forme pour pouvoir le mettre dans un widget qui servira de colonne à afficher les sujets
Dernière édition par Hakaan le Dim 24 Fév 2019 - 10:50, édité 1 fois
Re: Script pour faire un index d'un forum
Hello Hakaan,
tu peux créer un Widget:
https://forum.forumactif.com/t233284-installation-modification-de-widgets#2141122
Ensuite trouver le lien du forum concerné:
Puis dans le module "Source du widget" déposes ceci:
Remplaces:
par le forum désiré.
Puis le nombre du sujets a afficher ici:
Puis un peu de style:
Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style
Ajoutes ceci:
Penses à cliquer sur le bouton
Selon la largeur de tes widgets, il faudra peut être diminuer ou augmenter le width:200px .
Et voilou .
a++
tu peux créer un Widget:
https://forum.forumactif.com/t233284-installation-modification-de-widgets#2141122
Ensuite trouver le lien du forum concerné:
Puis dans le module "Source du widget" déposes ceci:
- Code:
<div class="M14_topics">
</div>
<script>
jQuery(function(){
jQuery('.M14_topics').load('/f10-blabla a.topictitle:lt(10)');
});
</script>
Remplaces:
- Code:
/f10-blabla
par le forum désiré.
Puis le nombre du sujets a afficher ici:
- Code:
:lt(10)
Puis un peu de style:
Dans la feuille de style:
Affichage/Images et Couleurs/Couleurs/Feuille de style
Ajoutes ceci:
- Code:
/*Les sujets dans le widget*/
.M14_topics a.topictitle
{
width:200px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
display: list-item;
text-decoration:none!important;
color:orange !important;
}
Penses à cliquer sur le bouton
Selon la largeur de tes widgets, il faudra peut être diminuer ou augmenter le width:200px .
Et voilou .
a++
Invité- Invité
Re: Script pour faire un index d'un forum
Salut, merci pour ta réponse très claire et détaillée, c'est déjà rare qu'on en ait une ici
Effectivement ça fonctionne, y'a un petit problème de retour à la ligne qui ne se fait pas donc les lignes se barrent au dela du cadre mais je devrais pouvoir corriger ça dans le CSS
Il n'y a pas le nom du posteur ni la date comme dans la vraie colonne du forum mais c'est deja pas mal
Effectivement ça fonctionne, y'a un petit problème de retour à la ligne qui ne se fait pas donc les lignes se barrent au dela du cadre mais je devrais pouvoir corriger ça dans le CSS
Il n'y a pas le nom du posteur ni la date comme dans la vraie colonne du forum mais c'est deja pas mal
Re: Script pour faire un index d'un forum
Re,
Il faut diminuer la valeur 200px à 180px
Il n'y a pas le nom du posteur ni la date comme dans la vraie colonne du forum mais c'est déjà pas mal
Le script va juste rechercher le titre et le lien du forum concerné.
En se basant sur la liste des sujets du forum concerné.
On peut sinon pour afficher l'auteur mais pas la date ( ce sera au survol du titre du sujet)
Car on ne pourra pas afficher la totalité , vu que les widgets ne dépassent guère 200px de large et qu'il faut prendre en compte des titres de sujets très longs,donc il vaut mieux afficher l'essentiel et au survol , tu auras le titre complet ainsi que l'auteur du topic.
Pour cela on va changer le script par celui-ci:
en tenant compte de ton widget figurant en bas de page à droite sur ton fofo.
Le forum étant celui-ci:
Que tu retrouves au début du script:
a++
comme mentionné sur mon message précédent soit:Hakaan a écrit:Effectivement ça fonctionne, y'a un petit problème de retour à la ligne qui ne se fait pas donc les lignes se barrent au dela du cadre mais je devrais pouvoir corriger ça dans le CSS
Il faut diminuer la valeur 200px à 180px
Il n'y a pas le nom du posteur ni la date comme dans la vraie colonne du forum mais c'est déjà pas mal
Le script va juste rechercher le titre et le lien du forum concerné.
En se basant sur la liste des sujets du forum concerné.
On peut sinon pour afficher l'auteur mais pas la date ( ce sera au survol du titre du sujet)
Car on ne pourra pas afficher la totalité , vu que les widgets ne dépassent guère 200px de large et qu'il faut prendre en compte des titres de sujets très longs,donc il vaut mieux afficher l'essentiel et au survol , tu auras le titre complet ainsi que l'auteur du topic.
Pour cela on va changer le script par celui-ci:
en tenant compte de ton widget figurant en bas de page à droite sur ton fofo.
Le forum étant celui-ci:
- Code:
/f18-theologie-philosophie
Que tu retrouves au début du script:
- Code:
jQuery.get('/f18-theologie-philosophie'
- Code:
<div class="M14_topics">
</div>
<script>
jQuery(function(){
jQuery.get('/f18-theologie-philosophie' , function(data){
jQuery(data).find('dd.dterm').each(function(){
var texte=jQuery(this).find('.topic-title-container a.topictitle').text();
var link=jQuery(this).find('.topic-title-container a.topictitle').attr('href');
var author=jQuery(this).find('.span-tab a[href^="/u"]').text();
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' posté par '+author+'">'+texte+'</a>')
});
}); });
</script>
a++
Invité- Invité
Re: Script pour faire un index d'un forum
En fait j'ai testé ton 2ème code mais ca me fait strictement la même chose que le 1er,
le problème c'est que les titres au lieu de partir en retour à la ligne sortent du cadre, et je n'arrive pas à modifier ça
le problème c'est que les titres au lieu de partir en retour à la ligne sortent du cadre, et je n'arrive pas à modifier ça
Re: Script pour faire un index d'un forum
J'ai trouvé comment avoir un retour à la ligne, il suffit de virer la ligne "white-space: nowrap;" du CSS
faudrait juste que j'arrive à faire fonctionner ton code pour avoir le nom de l'auteur et ce serait parfait
faudrait juste que j'arrive à faire fonctionner ton code pour avoir le nom de l'auteur et ce serait parfait
Re: Script pour faire un index d'un forum
Re,
non le script est totalement différent que le premier mon ami.
Tu dois avoir une infobulle au survol des titres du widget et ce n'est pas le cas actuellement!!
Il faut supprimer ceci dans ton widget:
a++
non le script est totalement différent que le premier mon ami.
Tu dois avoir une infobulle au survol des titres du widget et ce n'est pas le cas actuellement!!
Il faut supprimer ceci dans ton widget:
- Code:
<script>
jQuery(function(){
jQuery('.M14_topics').load('/f10-blabla a.topictitle:lt(10)');
});
</script>
a++
Invité- Invité
Re: Script pour faire un index d'un forum
Chez moi l'infobulle fonctionne mais seulement à partir de la 11ème sur les 2 versions du code c'est bizarre
Par contre le widget ne respect pas le nombre de sujets que je lui demande là il m'en affiche plein, et parfois quand je recharge la page il indique juste les 10 comme demandé..
Par contre le widget ne respect pas le nombre de sujets que je lui demande là il m'en affiche plein, et parfois quand je recharge la page il indique juste les 10 comme demandé..
Re: Script pour faire un index d'un forum
Re,
comme mentionné sur mon précédent message(édité).
Tu veux en avoir que 10?
Il faut remplacer le contenu du widget par celui-ci:
a++
comme mentionné sur mon précédent message(édité).
Tu veux en avoir que 10?
Il faut remplacer le contenu du widget par celui-ci:
- Code:
<div class="M14_topics">
</div>
<script>
jQuery(function(){
jQuery.get('/f18-theologie-philosophie' , function(data){
jQuery(data).find('dd.dterm').each(function(){
var texte=jQuery(this).find('.topic-title-container a.topictitle').text();
var link=jQuery(this).find('.topic-title-container a.topictitle').attr('href');
var author=jQuery(this).find('.span-tab a[href^="/u"]').text();
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' posté par '+author+'">'+texte+'</a>')
});
}); });
</script>
a++
Invité- Invité
Re: Script pour faire un index d'un forum
Oui c'est bien ce que j'ai fait, j'ai remplacé intégralement le contenu du widget par le code donné au dessus
(si tu en vois 2 c'est parce que je testais les 2 versions du code dans 2 widgets différents en même temps)
Par contre j'ai re-copier/coller ton code et j'en ai toujours beaucoup plus que 10, d'ailleurs je vois pas ou est le paramètre "10" dans le code
(si tu en vois 2 c'est parce que je testais les 2 versions du code dans 2 widgets différents en même temps)
Par contre j'ai re-copier/coller ton code et j'en ai toujours beaucoup plus que 10, d'ailleurs je vois pas ou est le paramètre "10" dans le code
Re: Script pour faire un index d'un forum
Re,
Oui il reprend tous les sujets présents dans la liste des sujets du fofo concerné.
remplaces le contenu du widget par celui-ci:
Je regarde pour la date
a++
Par contre le 2ème code ne permet pas de sélectionner le nombre de ligne voulue du coup ca fait un sacré pâté
Oui il reprend tous les sujets présents dans la liste des sujets du fofo concerné.
remplaces le contenu du widget par celui-ci:
- Code:
<div class="M14_topics">
</div>
<script>
jQuery(function(){
jQuery.get('/f18-theologie-philosophie' , function(data){
jQuery(data).find('dd.dterm:lt(10)').each(function(){
var texte=jQuery(this).find('.topic-title-container a.topictitle').text();
var link=jQuery(this).find('.topic-title-container a.topictitle').attr('href');
var author=jQuery(this).find('.span-tab a[href^="/u"]').text();
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' posté par '+author+'">'+texte+'</a>')
});
}); });
</script>
Je regarde pour la date
a++
Invité- Invité
Re: Script pour faire un index d'un forum
un grand merci ça marche,
oui s'il était possible d'ajouter l'auteur et la date ce serait encore mieux,
c'est un code maison ou tu l'as trouvé quelque part ? (je connais pas bien jquery)
oui s'il était possible d'ajouter l'auteur et la date ce serait encore mieux,
c'est un code maison ou tu l'as trouvé quelque part ? (je connais pas bien jquery)
Re: Script pour faire un index d'un forum
Re,
l'auteur est affiché au survol.
Pour la date:
Dans le template topics_list_box:
Affichage/Templates/Général/topics_list_box
Recherches ceci (ligne 121 environ):
supprimes et remplaces par:
Penses à enregistrer puis à valider en cliquant respectivement sur puis
Ensuite remplaces le contenu de ton widget par celui-ci:
J'ai quelque peu modifié le script car je donnais l'auteur du sujet alors que l'on cherche l'auteur du dernier message.
Non,c'est bien moi, si tu as le temps, tu peux venir faire un tour sur mon fofo .
a++
l'auteur est affiché au survol.
Pour la date:
Dans le template topics_list_box:
Affichage/Templates/Général/topics_list_box
Recherches ceci (ligne 121 environ):
- Code:
{topics_list_box.row.LAST_POST_TIME}
supprimes et remplaces par:
- Code:
<span class="M14_date">{topics_list_box.row.LAST_POST_TIME}</span>
Penses à enregistrer puis à valider en cliquant respectivement sur puis
Ensuite remplaces le contenu de ton widget par celui-ci:
- Code:
<div class="M14_topics">
</div>
<script>
jQuery(function(){
jQuery.get('/f18-theologie-philosophie' , function(data){
jQuery(data).find('dd.dterm:lt(10)').each(function(){
var texte=jQuery(this).find('.topic-title-container a.topictitle').text();
var link=jQuery(this).find('.topic-title-container a.topictitle').attr('href');
var author=jQuery(this).closest('dl').find('.lastpost a[href^="/u"]').text();
var date=jQuery(this).closest('dl').find('.M14_date').text();
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' par '+author+' '+date+'">'+texte+'</a>');
});});});
</script>
J'ai quelque peu modifié le script car je donnais l'auteur du sujet alors que l'on cherche l'auteur du dernier message.
je connais pas bien jquery, c'est un code maison ou tu l'as trouvé quelque part ?
Non,c'est bien moi, si tu as le temps, tu peux venir faire un tour sur mon fofo .
a++
Invité- Invité
Re: Script pour faire un index d'un forum
C'est bon ça fonctionne merci
Oui ça j'ai bien compris mais n'y a t'il pas moyen de le mettre à la suite du titre du topic comme sur la vraie colonne des derniers sujets ?l'auteur est affiché au survol.
Re: Script pour faire un index d'un forum
Re,
tu peux remplacer le contenu du widget par celui-ci:
Je dois filer.
A ce soir .
a++
tu peux remplacer le contenu du widget par celui-ci:
- Code:
<div class="M14_topics">
</div>
<script>jQuery(function(){
jQuery.get('/f2-essais2' , function(data){
jQuery(data).find('dd.dterm:lt(10)').each(function(){
var texte=jQuery(this).find('.topic-title-container a.topictitle').text();
var link=jQuery(this).closest('dl').find('.lastpost a[href^="/t"]').attr('href');
var author=jQuery(this).closest('dl').find('.lastpost a[href^="/u"]').text();
var date=jQuery(this).closest('dl').find('.M14_date').text();
if(author)
{
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' '+date+'">'+texte+' par '+author+'</a>');
}
else
{
jQuery('.M14_topics').append('<a class="topictitle"href="'+link+'"title="'+texte+' par Invité '+date+'">'+texte+' par invité</a>');
}
});});});</script>
Je dois filer.
A ce soir .
a++
Invité- Invité
Re: Script pour faire un index d'un forum
Ouaaahh génial merci c'est exactement ce que je voulais
j'ai ajouté '+date+' pour avoir aussi la date après l'auteur maintenant c'est exactement comme la colonne des sujets
j'ai ajouté '+date+' pour avoir aussi la date après l'auteur maintenant c'est exactement comme la colonne des sujets
Re: Script pour faire un index d'un forum
Re,
effectivement c'est son portrait craché .
Bonne fin de journée.
a++
effectivement c'est son portrait craché .
Bonne fin de journée.
a++
Invité- Invité
Re: Script pour faire un index d'un forum
Hakaan a écrit:Ouaaahh génial merci c'est exactement ce que je voulais
j'ai ajouté '+date+' pour avoir aussi la date après l'auteur maintenant c'est exactement comme la colonne des sujets
Bonjour, Afin de faciliter la gestion des problèmes, si le vôtre est résolu, pensez à :
|
Forum gratuit : Le forum des forums actifs :: Entraide & Support... :: Problème avec un script, un code :: Archives des problèmes avec un code
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum