Index
Forums
Annuaire
Référencement
Télécharger
  phpBB SEO : Référencement Google, MSN, Yahoo, Annuaires, Forums  
phpBB SEO
Boards
Directory  
SEO  
Downloads
 
  Rechercher Search
    S'enregistrer
Pseudo :  Passe :  Auto  
Register  
 
   
[aide] afficher les dernier sujet du forum
Aller à la page 1, 2, 3  Suivante
 
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » TooLkit phpBB SEO  » MODS phpBB SEO
::  
Auteur Message
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 6:51 pm    Sujet du message: [aide] afficher les dernier sujet du forum

Bonjour !

dcz m'a montré ce morceau de code afin d'afficher les derniers posts d'un forum sur une page externe.

Citation:
<?php
// Last XX Active Topics outside phpBB - dcz - www.phpBB-SEO.com
// License: http://opensource.org/licenses/gpl-license.php GNU General Public License v2
//
// Basic Configuration
// How Many Topics you want to display?
$topicnumber = 30;
// Scrolling towards up or down?
$scroll = "up";
// Change this to your phpBB URL
$urlPath = "http://www.example.com/phpBB";
// Change this to your phpBB path
$phpbb_root_path = 'phpBB/';
// Exclude forums, forum id in this array will not be listed
$exclude_forum = array (
//1 => 31,
//2 => 5,
//3 => 10,
);

define('IN_PHPBB', true);

include($phpbb_root_path . 'extension.inc');
include($phpbb_root_path . 'common.'.$phpEx);

// Start session management
$userdata = session_pagestart($user_ip, PAGE_INDEX);
init_userprefs($userdata);
// End session management



// Let's do it now Wink
$sql = "SELECT t.topic_poster,t.topic_views,t.topic_replies,t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username ,f.forum_name
FROM ".TOPICS_TABLE." t, ".FORUMS_TABLE." f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
WHERE t.topic_id = p.topic_id
AND f.forum_id = t.forum_id
AND t.topic_status <> 2
AND p.post_id = t.topic_last_post_id
AND p.poster_id = u.user_id
ORDER BY p.post_id DESC LIMIT $topicnumber";
//Begin sql cache
if ( !($result = $db->sql_query($sql)) )
//if ( !($result = $db->sql_query($sql, false, 'posts_')) )
//End sql cache
{
message_die(GENERAL_ERROR, 'Could not obtain Last topics info', '', __LINE__, __FILE__, $sql);
}
$last_topic_data = array();
while( $row = $db->sql_fetchrow($result) )
{
$last_topic_data[] = $row;
}
$db->sql_freeresult($result);
unset($row);

// Handle the not topics case, if you want Smile
if ( !($total_topics = count($last_topic_data)) )
{
$message = 'Something you want to say here Wink';
message_die(GENERAL_MESSAGE, $message);
}

//
// Find which forums are visible for this user
//
$is_auth_ary = array();
$is_auth_ary = auth(AUTH_VIEW, AUTH_LIST_ALL, $userdata, $last_topic_data);

// here I keep the basic html output
// Outcome of the HTML
// Be carefull when you edit these!
echo "<marquee dir=\"rtl\" align=\"center\" id=\"recent_topics\" behavior=\"scroll\" direction=\"$scroll\" height=\"150\" width=\"100%\" scrolldelay=\"100\" scrollamount=\"2\" onMouseOver=\"stop()\" onMouseOut=\"start()\">";
echo "<div align=\"center\">";
echo "<table cellpadding='3' cellSpacing='2'";

for ($i = 0; $i < $total_topics; $i++ )
{
if ($is_auth_ary[$last_topic_data[$i]['forum_id']]['auth_view'] && !in_array($last_topic_data[$i]['forum_id'], $exclude_forum))
{
// phpBB-SEO.com SEO TOOLKIT BEGIN
$seo_forum_name = $last_topic_data[$i]['forum_name'];
$seo_topic_name = $last_topic_data[$i]['topic_title'];
// phpBB-SEO.com SEO TOOLKIT END

echo "<tr valign='top'>
<td><span class=\"nav\">".$lang['Last_Post']." :
<a href=\"".append_sid("$urlPath/viewtopic.php?t=".$last_topic_data[$i]['topic_id'])."\" class=\"nav\">" . $last_topic_data[$i]['topic_title'] ."</span></a></td>
<td><span class=\"nav\"> ".$lang['Forum']." :
<a href=\"".append_sid("$urlPath/viewforum.php?f=".$last_topic_data[$i]['forum_id'])."\" class=\"nav\">" . $last_topic_data[$i]["forum_name"] . "</a></span></td>
<td><span class=\"nav\"> ".$lang['Views']." : " . $row['topic_views'] . "</span></td>
<td><span class=\"nav\"> ".$lang['Replies']." : " . $last_topic_data[$i]['topic_replies'] . "</span></a></td>
<td><span class=\"nav\"> ".$lang['Poster']." :
<a href=\"".append_sid("$urlPath/profile.php?mode=viewprofile&u=".$last_topic_data[$i]['user_id'])."\" class=\"nav\" >" . $last_topic_data[$i]['username'] . "</a></td></tr>";

}
}
echo "</table></div></marquee>";

?>


Je voudrais la requête la plus simple possible afin de toucher le serveur le moins possible. Je voudrais afficher le titre du post, l'auteur, le nb de réponses, la date et une icone pour atteindre le dernier post du topic...et tout ceci avec une seule requête. Est-ce faisable ou juste dans mes rêves ?

Le MOD topic anywhere étant un bouffeur de ressource monstreux, je cherche le moyen de faire la même chose beaucoup plus léger.

Merci pour votre aide !
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 6:54 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Dans celui là il ne manque que le liens vers le dernier message, tu l'as testé ?

Notes qu'il inclus le partage de sessions avec phpBB, donc il faut le modifier un peut si tu dois afficher ça dans une page qui les partageraient déjà.

Et bien entendu, c'est utilisable que sur le même serveur.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 6:57 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

oui je l'ai testé Wink J'ai réussi à le faire afficher comme il faut.

Il ne manque en effet que le lien vers le dernier post, mais il y a aussi l'affichage du nom du forum dont je n'ai pas besoin. Je ne sais pas si on peut alléger le code vu que l'on en n'a pas besoin.

mici Smile
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 8:37 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Alors pour les infos du forum :

Remplacer :

Code:
$sql = "SELECT t.topic_poster,t.topic_views,t.topic_replies,t.topic_id, t.topic_title, t.topic_last_post_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username ,f.forum_name
FROM ".TOPICS_TABLE." t, ".FORUMS_TABLE." f, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
WHERE t.topic_id = p.topic_id
AND f.forum_id = t.forum_id
AND t.topic_status <> 2
AND p.post_id = t.topic_last_post_id
AND p.poster_id = u.user_id
ORDER BY p.post_id DESC LIMIT $topicnumber";


Par :
Code:
$sql = "SELECT t.topic_poster,t.topic_views,t.topic_replies,t.topic_id, t.topic_title, t.topic_last_post_id, t.forum_id, p.post_id, p.poster_id, p.post_time, u.user_id, u.username
FROM ".TOPICS_TABLE." t, " . POSTS_TABLE . " p, " . USERS_TABLE . " u
WHERE t.topic_id = p.topic_id
AND t.topic_status <> 2
AND p.post_id = t.topic_last_post_id
AND p.poster_id = u.user_id
ORDER BY p.post_id DESC LIMIT $topicnumber";


Et effacer :

Code:
<td><span class=\"nav\"> ".$lang['Forum']." :
<a href=\"".append_sid("$urlPath/viewforum.php?f=".$last_topic_data[$i]['forum_id'])."\" class=\"nav\">" . $last_topic_data[$i]["forum_name"] . "</a></span></td>


Pour le lien vers le dernier message, tu veux un lien en plus, genre avec la petite image de phpBB, ou juste l'URL du lien qui existe pour le sujet vers le dernier message ?

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 8:41 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Very Happy

Je voudrais une tite image à côté du titre du sujet qui pointe vers le dernier post de ce sujet. Exactement comme topic anywhere en fait.

Le lien du titre qui pointe vers le sujet et l'image vers le dernier post du sujet Smile

Merci beaucoup !!
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:06 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Alors :

Trouver :

Code:
$seo_topic_name = $last_topic_data[$i]['topic_title'];


Ajouter après :

Code:
$start = (ceil($last_topic_data[$i]['forum_id'] / $board_config['posts_per_page'])> 1) ? "&amp;start=" . $paginated * $pages : '';


Trouver :

Code:
<td><span class=\"nav\">".$lang['Last_Post']." :
<a href=\"".append_sid("$urlPath/viewtopic.php?t=".$last_topic_data[$i]['topic_id'])."\" class=\"nav\">" . $last_topic_data[$i]['topic_title'] ."</span></a></td>


Remplacer par :

Code:
echo "<a href=\"".append_sid("$urlPath/profile.php?mode=viewprofile&u=".$last_topic_data[$i]['user_id'])."\" class=\"lien-bleu\" >" . $last_topic_data[$i]['username'] . "</a>, ".$date_last_post." <a href=\"" . append_sid("$urlPath/viewtopic.php?p=".$last_topic_data[$i]['topic_last_post_id'] . $start) . "#" . $last_topic_data[$i]['topic_last_post_id'] . "\"><img src=\"" . $urlPath . "/" . $images['icon_latest_reply'] . "\" alt=\"". $lang['View_latest_post'] . "\" border=\"0\"></a>


J'ai pas testé, mais ce doit être ça, je te laisse peaufiner le style à ta guise Wink

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche


Dernière édition par dcz le Mer Oct 25, 2006 10:11 am; édité 1 fois
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:11 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Je teste ça et je te tiens au courant Wink

En tout cas merci beaucoup et chapô bas pour ta rapidité et ton efficacité ! Wink

Je voudrais avoir ton avis, pourquoi topic anywhere a cherché quelque chose utilisant tant de ressources alors qu'il est possible de le faire avec une unique requête ?

Là ton code ne doit rien consommer du tout j'imagine au niveau requêtes sur serveur non ?
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:13 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Et bien, c'est qu'il permet de faire un export sur toute page du oueb, pas que sur les pages qui partagent le même serveur que l'installation phpBB.

Mais c'est en même temps sont point faible, car plus on exporte de liens, plus on consomme, mais ça rend service aussi, il faut juste en connaître les limites.

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:18 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Ah bé voui j'y avais pas pensé Smile J'étais resté sur le même site lol

Je viens de tester ton code, nickel chrome Wink

Merci beaucoup !

Bonne soirée !
Revenir en haut de page
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:21 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Oups juste une chose, sais-tu où je dois aller pour enlever les "Derniers Messages", "Vus", "Réponses" et ""Poster" ?

Zut hihi j'ai pas vu qu'il manquait la date aussi :p Si ce n'est pas trop abusé Smile

Je n'ai rien vu dans la page.

Mici !
Revenir en haut de page
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 9:32 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Zut je ne peux pas effacer mes messages.

J'ai pas tout vérifié...en fait comme tu l'avais dit au début les SESSIONS bousillent mon forum mais l'affichage des 10 posts est ok sur mon index.

Tu peux me dire comment virer ce système de sessions pour l'affichage des latest news ?

Merci Wink
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mar Oct 24, 2006 10:44 pm    Sujet du message: Re: [aide] afficher les dernier sujet du forum

ahh mais tu met ça sur l'index de phpBB ?

C'est vraiment pas fait pour, il y a des mod tout fait pour ça Wink

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mer Oct 25, 2006 6:49 am    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Non non du tout dcz Smile Cette portion des 10 posts se trouve sur la page index de mon site et non du forum. Mais quand je met le morceau des sessions au niveau de ma page index, l'affichage est nickel, par contre quand je vais sur mon forum ensuite tout est cassé...

Je pense qu'il faut ne pas utiliser les sessions à ce niveau là non ? En fait c'est juste utile pour afficher les intitulés non ?

Mici Wink
Revenir en haut de page
dcz
Administrateur - Site Admin
Administrateur - Site Admin


Inscrit le: 28 Avr 2006
Messages: 13354

[aide] afficher les dernier sujet du forumPosté le: Mer Oct 25, 2006 8:32 am    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Ahh bah non, aucun liens à priori, que veux tu dire par cassé ?

Un lien ?

++

_________________
Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________

Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche
Revenir en haut de page
Visiter le site web de l'utilisateur
charabia



Inscrit le: 24 Oct 2006
Messages: 46

[aide] afficher les dernier sujet du forumPosté le: Mer Oct 25, 2006 8:40 am    Sujet du message: Re: [aide] afficher les dernier sujet du forum

Houlàlà je viens de voir que c'est parce qu'il y avait deux slashs, c'est ça qui causait le problème.

En fait à quoi sert les sessions dans mon cas ? Je peux les enlever sans pb non ?

mici !
Revenir en haut de page
Montrer les messages depuis:   
Poster un nouveau sujet   Répondre au sujet    phpBB SEO » Forum Référencement  » TooLkit phpBB SEO  » MODS phpBB SEO
Page 1 sur 3 Aller à la page 1, 2, 3  Suivante

Navigation Autres sujets de discussion

Sauter vers: