Back to vBulletin 3.6 Add-ons

LBmtb's Recent Topics on Non-VB Pages
Mod Version: 1.03, by LBmtb

This modification is in the archives.
vB Version: 3.6.4 Rating: (3 votes - 5.00 average) Installs: 64
Released: 19 Dec 2006 Last Update: 28 Mar 2007 Downloads: 297
Not Supported  

RECENT TOPICS by LBmtb
Version 1.03
Last updated: March 27th, 2007

DESCRIPTION
This script will display the topics with the most recent posts on a non-vb page (any HTML page). The page it's on must have a .php extension or you should setup apache to parse the page correctly. The threads with the latest posts are on top. The output is a clean list in this format:

HTML Code:
<ul class="vb_topics">
<li><a href="http://www.yourdomain.com/forum/index.php?t=4150">This is the latest thread</a> <span class="vb_last_post">(user1 @ 12/18/06 05:58 PM)</span></li>
<li><a href="http://www.yourdomain.com/forum/index.php?t=4138">Another recent thread</a> <span class="vb_last_post">(user2 @ 12/18/06 05:58 PM)</span></li>
</ul>
Customizable options include:
  • forum ID - choose to only include or exclude certain forums
  • number of topics displayed
  • CSS class names for the topic name/url and last poster/date
  • and a few others
COPYRIGHT
There is a copyright line. I am releasing this script on the condition that you do not remove this line unless you send $5 via paypal to email. Thanks in advance for understanding.

NEED CUSTOMIZATION OR PROFESSIONAL INSTALLATION?
Email me at email, PM me on vbulletin.org, or aim me at "lbmtb" to inquire about customizing this script or installation.

REVISION HISTORY
Version 1.03: Adds small preview of first post when the user rolls over the links
Version 1.02: option to exclude certain forums
Version 1.01: option to only include certain forums
Version 1.0: Initial Release

INSTRUCTIONS:
1) Copy and paste the following code where you want the list to appear and adjust the values in the section "CUSTOMIZE THE FOLLOWING":

PHP Code:
<?php 
##########################################################################
// RECENT TOPICS by LBmtb
// Version 1.03
// email OR aim: LBmtb
//
// Do not remove copyright unless you donate $5 via paypal
// to the above email address, thanks
// CUSTOMIZED from a www.phase1media.com script found here:
// http://www.vbulletin.org/forum/showpost.php?p=589067&postcount=7
##########################################################################

## CUSTOMIZE THE FOLLOWING    ##############################################

// DATABASE & URL SETTINGS
$db_host "localhost"// Change this if your MySQL database host is different.
$db_name "db_name"// Change this to the name of your database.
$db_user "db_username"// Change this to your database username.
$db_pw "db_password"// Change this to your database password.
$db_prefix "vb_"// Change to your tables' prefix. Usually vb_
$forum_url "http://www.yourdomain.com/forum"// Change this to reflect to your forum's URL.

// APEARANCE OPTIONS
$seperator "@"// this goes between last poster and date
$limit "10"// Number of posts displayed
$post_date_format "1"// leave as 1 for "12/18/06 05:26 PM" or change to 2 for "05:26 PM"

// use one or the other, not both. if left blank the script will return threads from any forum
$fid_raw ""// ONLY include threads from these forums. seperate each ID with a comma
$fidx_raw ""// Exclude threads from these forum. seperate each ID with a comma

// CSS CLASSES    
$recent_topics "vb_topics"// you can use CSS to adjust the presentation of the list 
$recent_poster "vb_last_post";  // you can use CSS to adjust the presentation the last poster and date

## NO NEED TO TOUCH ANYTHING BELOW    #####################################
#############################################################################

if (!($recent_topics_connection mysql_connect("$db_host""$db_user""$db_pw")))
die (
"could not connect"); 
if (!(
mysql_select_db("$db_name"$recent_topics_connection)))
mysql_error(); 
echo 
"<ul class=\"$recent_topics\">\n";
$fid_array explode (','$fid_raw);
if (
$fid_raw)  {
    
$fid_final .= "AND (";
    foreach( 
$fid_array as $key => $value){
        if (
$key == 0) { $fid_final .= "t.forumid=".$value; }
        else { 
$fid_final .= " OR t.forumid=".$value; }
    }
    
$fid_final .= ")";
}
$fidx_array explode (','$fidx_raw);
if (
$fidx_raw)  {
    
$fidx_final .= "AND NOT (";
    foreach( 
$fidx_array as $key => $value){
        if (
$key == 0) { $fidx_final .= "t.forumid=".$value; }
        else { 
$fidx_final .= " OR t.forumid=".$value; }
    }
    
$fidx_final .= ")";
}
$thread_sql mysql_query("SELECT SQL_CACHE t.threadid,t.title,t.lastpost,t.lastposter,t.forumid,substring(p.pagetext,1,90) as post_text
    FROM "
.$GLOBALS['db_prefix']."thread t
    INNER JOIN "
.$GLOBALS['db_prefix']."post p
    ON t.firstpostid = p.postid
    WHERE t.visible=1 
    AND t.open=1 
$fidi_final $fidx_final 
    ORDER BY t.lastpost desc 
    LIMIT 
$limit");
while(
$thread_get=@mysql_fetch_array($thread_sql))
{
    
$lastpost $thread_get['lastpost'];
    
$poster $thread_get['lastposter'];
    
$tid $thread_get['threadid'];
$text $thread_get['post_text'];
    if (
$post_date_format == "1") { $date2 date ("m/d/y h:i A" ,$lastpost); }
    elseif (
$post_date_format == "2") { $date2 date ("h:i A" ,$lastpost); }
    else { 
$date2 date ("m/d/y h:i A" ,$lastpost); }
        echo 
"<li><a href=\"$forum_url/showthread.php?t=$tid\" title=\"".$text."\">$thread_get[title]</a> <span class=\"$recent_poster\">($poster $seperator $date2)</span></li>\n";
}
echo 
"</ul>\n<div style=\"font-size: .9em;\">recent topics by <a href=\"http://www.socaltrailriders.org/\"><acronym title=\"Southern California Trail Riders\">SocalTrailRiders.org</acronym></a></div>";
mysql_close($recent_topics_connection);
?>
2) Go back to the vbulletin.org thread where you found this and click on "Mark as Installed"
3) Enjoy!
4) https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=webmaster%40socaltrailriders%2eorg&item_name=vb%20Mod&item_number=Recent%20Topics%20Script&no_shipping=0&no_note=1&tax=0&currency_code=USD&lc=US&bn=PP%2dDonationsBF&charset=UTF%2d8


UPGRADE INSTRUCTIONS (from 1.02 to 1.03):


FIND:
Code:
$thread_sql = mysql_query("SELECT threadid,title,lastpost,lastposter FROM ".$db_prefix."thread WHERE visible=1 AND open=1 $fid_final $fidx_final ORDER BY lastpost desc LIMIT $limit");
REPLACE WITH:
Code:
$thread_sql = mysql_query("SELECT SQL_CACHE t.threadid,t.title,t.lastpost,t.lastposter,t.forumid,substring(p.pagetext,1,90) as post_text
    FROM ".$GLOBALS['db_prefix']."thread t
    INNER JOIN ".$GLOBALS['db_prefix']."post p
    ON t.firstpostid = p.postid
    WHERE t.visible=1 
    AND t.open=1 $fidi_final $fidx_final 
    ORDER BY t.lastpost desc 
    LIMIT $limit");
FIND:
Code:
    $tid = $thread_get['threadid'];
AFTER, ADD:
Code:
    $text = $thread_get['post_text'];
FIND AND REPLACE:
Code:
forumid=".$value
WITH:
Code:
t.forumid=".$value
FIND:
Code:
    echo "<li><a href=\"$forum_url/showthread.php?t=$tid\">$thread_get[title]</a> <span class=\"$recent_poster\">($poster $seperator $date2)</span></li>\n";
REPLACE WITH:
Code:
    echo "<li><a href=\"$forum_url/showthread.php?t=$tid\" title=\"".$text."\">$thread_get[title]</a> <span class=\"$recent_poster\">($poster $seperator $date2)</span></li>\n";


UPGRADE INSTRUCTIONS (from 1.01 to 1.02):

FIND:
PHP Code:
// APEARANCE OPTIONS
$seperator "@"// this goes between last poster and date
$fid_raw ""// If you want to restrict to specific forums, enter the forum id(s) here. seperate them with a comma. Otherwise, leave it blank.
$limit "10"// Number of posts displayed
$post_date_format "1"// leave as 1 for "12/18/06 05:26 PM" or change to 2 for "05:26 PM" 
REPLACE WITH:
PHP Code:
// APEARANCE OPTIONS
$seperator "@"// this goes between last poster and date
$limit "10"// Number of posts displayed
$post_date_format "1"// leave as 1 for "12/18/06 05:26 PM" or change to 2 for "05:26 PM"

// use one or the other, not both. if left blank the script will return threads from any forum
$fid_raw ""// ONLY include threads from these forums. seperate each ID with a comma
$fidx_raw ""// Exclude threads from these forum. seperate each ID with a comma 
REPLACE EVERYTHING BELOW:
PHP Code:
## NO NEED TO TOUCH ANYTHING BELOW    ######################################
########################################################################## 
With everything below that same line in 1.02

NOTES:
This is my first mod/script so be nice, please

DEMO:
http://www.socaltrailriders.org/latest_posts.php

Download

This modification is archived, downloads are still allowed.

File Type: %1$s lbtmb_recent_topics_102.txt (6.6 KB, 163 downloads)
File Type: %1$s lbmtb_recent_topics_103.txt (3.8 KB, 176 downloads)
File Type: %1$s upgrade from 102.txt (1.2 KB, 51 downloads)

Supporters / CoAuthors

  • LBmtb

Screenshots

Click image for larger version
Name:	Picture 2.png
Views:	1002
Size:	62.3 KB
ID:	57816   Click image for larger version
Name:	Picture 4.png
Views:	987
Size:	69.8 KB
ID:	57817  

Similar Mods

Integration with vBulletin Recent Topics on Non-VB Pages vBulletin 3.7 Add-ons
Integration with vBulletin LBmtb's Recent Topics on Non-VB Pages (vbSEO edition) vBulletin 3.6 Add-ons

vblts.ru supports vBulletin®, 2022-2024