Alors je t'ai fait un script qui marche bien, ça affiche le titre des derniers topics de ton forum phpbb3 et quand tu clics dessus, ça te redirige sur la dernière réponse
D'ailleurs je crois que je vais l'intégrer à mon site
C'est beaucoup plus pratique pour arriver directement au dernier message de la dernière page de la discussion !!
C'est le strict minimum pour que ça marche !
//Script 1
- Code: Tout sélectionner
<ul>
<?php
define('IN_SITE', true);
define('IN_PHPBB', true);
$phpbb_root_path = './forum/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
$sql = "SELECT topic_replies_real,topic_replies,topic_title,forum_id,topic_id,topic_type,topic_last_post_id
FROM phpbb3_topics
WHERE topic_approved = 1
ORDER BY topic_last_post_time DESC
LIMIT 10";
$result = $db->sql_query($sql);
while($topic_data = $db->sql_fetchrow($result))
{
$topic_title = $topic_data['topic_title'];
$topic_replies = $topic_data['topic_replies'];
$topic_replies_real = $topic_data['topic_replies_real'];
$forum_id = $topic_data['forum_id'];
$topic_id = $topic_data['topic_id'];
$topic_last_post_id = $topic_data['topic_last_post_id'];
$replies = ($auth->acl_get('m_approve', $forum_id)) ? $topic_replies_real : $topic_replies;
$start = floor(($replies) / $config['posts_per_page']) * $config['posts_per_page'];
$topic_data['topic_title'] = censor_text($topic_data['topic_title']);
if (empty($phpbb_seo->seo_opt['virtual_folder']) || !empty($phpbb_seo->seo_url['forum'][$forum_id]) || $topic_data['topic_type'] == POST_GLOBAL) {
$phpbb_seo->prepare_iurl($topic_data, 'topic', $topic_data['topic_type'] == POST_GLOBAL ? $phpbb_seo->seo_static['global_announce'] : $phpbb_seo->seo_url['forum'][$forum_id]);
}
$post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't=' . $topic_id . '&f=' . $forum_id . '&start=' . $start ) . '#p' . $topic_last_post_id;
echo '<li><a href="'.$post_url.'">'.$topic_title.'</a></li>';
}
$db->sql_freeresult($result);
?>
</ul>
Je vais essayer de le modifier pour faire ce que tu veux comme ça il y aura plusieurs versions pour ceux qui ont d'autres besoins
//Script 2
Et voila la version avancée qui ne fait pas que le titre. A mon avis elle te conviendra bien, tu as juste à adapter l'affichage dans un tableau, etc. Tu feras bien ça hein ?
- Code: Tout sélectionner
<ul>
<?php
define('IN_SITE', true);
define('IN_PHPBB', true);
$phpbb_root_path = './forum/';
$phpEx = substr(strrchr(__FILE__, '.'), 1);
include($phpbb_root_path . 'common.' . $phpEx);
$sql = "SELECT t.topic_replies_real,t.topic_replies,t.topic_title,t.forum_id,t.topic_id,t.topic_type,t.topic_last_post_id,f.forum_name,t.topic_last_poster_name
FROM " . TOPICS_TABLE . " t, " . FORUMS_TABLE . " f
WHERE t.topic_approved = 1
AND t.topic_status <> 2
AND t.forum_id = f.forum_id
ORDER BY t.topic_last_post_time DESC
LIMIT 10";
$result = $db->sql_query($sql);
while($topic_data = $db->sql_fetchrow($result))
{
$topic_title = $topic_data['topic_title'];
$topic_replies = $topic_data['topic_replies'];
$topic_replies_real = $topic_data['topic_replies_real'];
$forum_id = $topic_data['forum_id'];
$topic_id = $topic_data['topic_id'];
$forum_name = $topic_data['forum_name'];
$topic_last_post_id = $topic_data['topic_last_post_id'];
$topic_last_poster_name = $topic_data['topic_last_poster_name'];
$replies = ($auth->acl_get('m_approve', $forum_id)) ? $topic_replies_real : $topic_replies;
$start = floor(($replies) / $config['posts_per_page']) * $config['posts_per_page'];
$topic_data['topic_title'] = censor_text($topic_data['topic_title']);
if (empty($phpbb_seo->seo_opt['virtual_folder']) || !empty($phpbb_seo->seo_url['forum'][$forum_id]) || $topic_data['topic_type'] == POST_GLOBAL) {
$phpbb_seo->prepare_iurl($topic_data, 'topic', $topic_data['topic_type'] == POST_GLOBAL ? $phpbb_seo->seo_static['global_announce'] : $phpbb_seo->seo_url['forum'][$forum_id]);
}
$post_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't=' . $topic_id . '&f=' . $forum_id . '&start=' . $start ) . '#p' . $topic_last_post_id;
$topic_url = append_sid("{$phpbb_root_path}viewtopic.$phpEx", 't=' . $topic_id . '&f=' . $forum_id );
echo '<li><a href="'.$topic_url.'">'.$topic_title.'</a> - '.$forum_name.' - <a rel="nofollow" href="'.$post_url.'">Dernier message par '.$topic_last_poster_name.'</a></li>';
}
$db->sql_freeresult($result);
?>
</ul>
Et voila, plus complet celui-ci non ?
Dernière édition: Modification du système de création d'url avec la réécriture phpbb-seo.