Go Back   vb.org Archive > vBulletin 3 Discussion > vB3 Programming Discussions
FAQ Community Calendar Today's Posts Search

Reply
 
Thread Tools Display Modes
  #1  
Old 10-21-2005, 09:03 PM
99SIVTEC 99SIVTEC is offline
 
Join Date: Nov 2001
Posts: 281
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default Noob to modding 3.5 need help please

This should be simple for someone who knows what they are doing. Basically i'm trying to show "active topics" from several vbulletin sites on a single page. I decided to use the sites rss feeds instead of making a search query on each database (7 sites, so server load would be high). I'm using magpie and have setup a file called scractivetopics.php. It contains everything necessary to show the rss feeds on screen. It's after this step that I am having problems. I've never created a mod for vbulletin much less 3.5 so I don't know the best way to proceed. I tried creating another php file (netactive.php) with all of the necessary vbulletin files included so I could just call a template, but i'm having issues there. Let me show you some of these files so you have an idea.

netactive.php - Vbulletin file used to call the templates

PHP Code:
<?php

// ######################## SET PHP ENVIRONMENT ###########################
error_reporting(E_ALL & ~E_NOTICE);

// ##################### DEFINE IMPORTANT CONSTANTS #######################
// change the line below to the actual filename without ".php" extention.
// the reason for using actual filename without extention as a value of this constant is to ensure uniqueness of the value throughout every PHP file of any given vBulletin installation.

define('THIS_SCRIPT''netactive'); 

// #################### PRE-CACHE TEMPLATES AND DATA ######################
// get special phrase groups
$phrasegroups = array();

// get special data templates from the datastore
$specialtemplates = array();

// pre-cache templates used by all actions
$globaltemplates = array(
    
// change the lines below to the list of actual templates used in the script
    
'netactive',

);

// pre-cache templates used by specific actions
$actiontemplates = array();

// ########################## REQUIRE BACK-END ############################
require_once('./global.php');

// #################### HARD CODE JAVASCRIPT PATHS ########################
$headinclude str_replace('"clientscript''"' $vbulletin->options['bburl'] . '/clientscript'$headinclude);

// ########################################################################
// ######################### START MAIN SCRIPT ############################
// ########################################################################

$navbits = array(); 
// change the line below to contain whatever you want to show in the navbar (title of your custom page)
$navbits[$parent] = 'SCR Network Active Topics';

$navbits construct_navbits($navbits);
eval(
'$navbar = "' fetch_template('navbar') . '";');

// change the line below to contain the name of the actual main output template used in your script
eval('print_output("' fetch_template('netactive') . '");');
?>

scractivetopics.php - magpie file used to read the rss feeds - I have html in here and would rather have it in a vbulletin template, but have no idea how to go about that

PHP Code:
<?php
define
("MAGPIE_CACHE_AGE""300");
define('MAGPIE_DIR''magpierss/');
require_once(
MAGPIE_DIR.'rss_fetch.inc');

?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.net/vbulletin/external.php?type=RSS2&items=active');
    

    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>     
            <?php
    
    $rss 
fetch_rss('http://www.xxx.com/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
   
            <?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
   
   <?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>

<?php
    
    $rss 
fetch_rss('http://www.xxx.com/forums/external.php?type=RSS2&items=active');
    
    
    echo 
'<table class="tborder" cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><tr><td class="thead">' $rss->channel['title'] . '</td></tr>';



    foreach (
$rss->items as $item) {
        
$href $item['link'];
        
$title $item['title'];    
        
echo 
'<table cellpadding="$stylevar[cellpadding]" cellspacing="$stylevar[cellspacing]" border="0" width="100%" align="center"><td width="16" class="alt1"><img src="http://www.xxx.net/vbulletin/images/statusicon/thread_new.gif"></td><td width="15" class="alt2"></td><td class="alt1"><a href="'.$item['link'].'">'.$item['title'].'</a></td></table></table>';


}
?>
netactive template from vbulletin itself

PHP Code:
$stylevar[htmldoctype]
<
html dir="$stylevar[textdirection]lang="$stylevar[languagecode]">
<
head>
$headinclude
<title>$vboptions[bbtitle]</title>
</
head>
<
body>

$header
$navbar
<table class="tborder" cellpadding="$stylevar[cellpadding]cellspacing="$stylevar[cellspacing]border="0" width="100%" align="center" id="threadslist">
<
tr>
    <
td class="tcat" colspan="$threadcolspanstyle="font-weight:normal">
    
        <
span class="smallfont">Network Active Topics
        
</span>
</
td>

$scrnetactive

</tr>
</
table>

$footer
</body>
</
html

I had this setup so scractivetopics.php was a plugin and could be called in a template using $scrnetactive (an include in vbulletin). I setup a custom template called netactive and inside called $scrnetactive. This worked, but my server load went through the roof because of the way I used the plugin. I had the plugin set to "global_start" so it was being called with every page. I can't think of another way to do this.

Someone please help. I'm sure it is a simple mistake, but I can't find the answers I am looking for.
Reply With Quote
Reply


Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT. The time now is 03:08 PM.


Powered by vBulletin® Version 3.8.12 by vBS
Copyright ©2000 - 2024, vBulletin Solutions Inc.
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.03876 seconds
  • Memory Usage 2,310KB
  • Queries Executed 11 (?)
More Information
Template Usage:
  • (1)SHOWTHREAD
  • (1)ad_footer_end
  • (1)ad_footer_start
  • (1)ad_header_end
  • (1)ad_header_logo
  • (1)ad_navbar_below
  • (1)ad_showthread_beforeqr
  • (3)bbcode_php
  • (1)footer
  • (1)forumjump
  • (1)forumrules
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (1)navbar
  • (3)navbar_link
  • (120)option
  • (1)post_thanks_box
  • (1)post_thanks_button
  • (1)post_thanks_javascript
  • (1)post_thanks_navbar_search
  • (1)post_thanks_postbit_info
  • (1)postbit
  • (1)postbit_onlinestatus
  • (1)postbit_wrapper
  • (1)showthread_list
  • (1)spacer_close
  • (1)spacer_open
  • (1)tagbit_wrapper 

Phrase Groups Available:
  • global
  • inlinemod
  • postbit
  • posting
  • reputationlevel
  • showthread
Included Files:
  • ./showthread.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_threadedmode.php
  • ./includes/functions_post_thanks.php 

Hooks Called:
  • init_startup
  • init_startup_session_setup_start
  • init_startup_session_setup_complete
  • cache_permissions
  • fetch_threadinfo_query
  • fetch_threadinfo
  • fetch_foruminfo
  • style_fetch
  • cache_templates
  • global_start
  • parse_templates
  • global_setup_complete
  • showthread_start
  • showthread_getinfo
  • forumjump
  • showthread_post_start
  • showthread_query_postids_threaded
  • showthread_threaded_construct_link
  • showthread_query
  • bbcode_fetch_tags
  • bbcode_create
  • showthread_postbit_create
  • postbit_factory
  • postbit_display_start
  • post_thanks_function_post_thanks_off_start
  • post_thanks_function_post_thanks_off_end
  • post_thanks_function_fetch_thanks_start
  • post_thanks_function_fetch_thanks_end
  • post_thanks_function_thanked_already_start
  • post_thanks_function_thanked_already_end
  • fetch_musername
  • postbit_imicons
  • bbcode_parse_start
  • bbcode_parse_complete_precache
  • bbcode_parse_complete
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • tag_fetchbit_complete
  • forumrules
  • navbits
  • navbits_complete
  • showthread_complete