View Single Post
  #1  
Old 12-29-2012, 04:54 AM
fungku's Avatar
fungku fungku is offline
 
Join Date: Jan 2011
Posts: 26
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Here is some code for adding recent threads on website front page

THIS widget thread by cory_booth helped get me started, but isn't what I needed, so this is a heavily modified version.

Here is the php for displaying recent threads on your front page (or any page), not as VB CMS.

PHP Code:
$mysqli = new mysqli(VB_HOSTVB_USERVB_PASSWORDVB_NAME);

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

$query "  
    SELECT thread.threadid, thread.title, thread.dateline, thread.lastpost, thread.lastposter, thread.lastposterid, thread.visible, thread.open, thread.postusername, thread.postuserid, thread.replycount, thread.views, forum.forumid, forum.title as forumtitle
    FROM thread AS thread
    LEFT JOIN forum AS forum ON ( forum.forumid = thread.forumid )
    WHERE NOT ISNULL(threadid) AND forum.forumid NOT IN (3,10,11,12,13,14,15,16,19) AND visible = '1' AND open!='10'
    ORDER BY lastpost DESC
    LIMIT 0, 10
"
;

if (
$result $mysqli->query($query)) {

    while (
$row $result->fetch_object())
    {
        
$row->lastpostdate date('M jS'$row->lastpost);
        
$row->lastposttime date('g:i a'$row->lastpost);

        echo 
<<<END
<div class="recent-thread">
  <p class="thread-title">
    <a href="forum/showthread.php?t=
{$row->threadid}&goto=newpost">{$row->title}</a>
  </p>
  <p class="thread-details">
    Last Post By: <a href="forum/member.php?u=
{$row->lastposterid}">{$row->lastposter}</a>
  </p>
  <p class="thread-details">
    Forum: <a href="forum/forumdisplay.php?f=
{$row->forumid}">{$row->forumtitle}</a> | Replies: {$row->replycount}
  </p>
  <p class="thread-details">
    Posted: 
{$row->lastpostdate} at: {$row->lastposttime}
  </p>
</div>
END;

    }
    
    
// free result set
    
$result->close();
}

// close connection
$mysqli->close(); 
:up:

The line with:
WHERE NOT ISNULL(threadid) AND forum.forumid NOT IN (3,10,11,12,13,14,15,16,19) AND visible = '1' AND open!='10'
Is where you would put the forumids of the forums you want to exclude from showing up.

Hope this is useful for somebody.

Since I found the original thread useful and this is a modified version of that, I thought I'd share as well.

add your own CSS, and edit the HTML, to syle it however you want.

Cheers,

--------------- Added [DATE]1356761517[/DATE] at [TIME]1356761517[/TIME] ---------------

I tried to edit the above php code block to stop the word-wrap making it messy to read, but I've given up.

You can figure it all out easy enough it is short and sweet.

If this has helped you at all, if you have any questions, or if you see ways to improve it, please let me know.
Reply With Quote
Благодарность от:
bing11
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01666 seconds
  • Memory Usage 1,798KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD_SHOWPOST
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)bbcode_php
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)option
  • (1)post_thanks_box
  • (1)post_thanks_box_bit
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)spacer_close
  • (1)spacer_open 

Phrase Groups Available:
  • global
  • postbit
  • reputationlevel
  • showthread
Included Files:
  • ./showpost.php
  • ./global.php
  • ./includes/init.php
  • ./includes/class_core.php
  • ./includes/config.php
  • ./includes/functions.php
  • ./includes/class_hook.php
  • ./includes/modsystem_functions.php
  • ./includes/functions_bigthree.php
  • ./includes/class_postbit.php
  • ./includes/class_bbcode.php
  • ./includes/functions_reputation.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_postinfo_query
  • fetch_postinfo
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showpost_start
  • bbcode_fetch_tags
  • bbcode_create
  • postbit_factory
  • showpost_post
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • fetch_musername
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • post_thanks_function_fetch_thanks_bit_start
  • post_thanks_function_show_thanks_date_start
  • post_thanks_function_show_thanks_date_end
  • post_thanks_function_fetch_thanks_bit_end
  • post_thanks_function_fetch_post_thanks_template_start
  • post_thanks_function_fetch_post_thanks_template_end
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete