View Single Post
  #2  
Old 10-20-2017, 12:26 AM
MarkFL's Avatar
MarkFL MarkFL is offline
 
Join Date: Feb 2014
Location: St. Augustine, FL
Posts: 3,853
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

Yes, you will need to create a new "Forum Block."

Follow:

AdminCP -> Forums & Moderators -> Forum Blocks Manager

At the bottom of the form, click "Add Block".

From the drop-down menu for "Select Block Type", choose "Custom HTML/PHP" then click "Continue".

You will be presented with a form for defining your new block. Give it a title, such as "Top 5 Reputations" and a description. I recommend caching the block for at least 60 minutes, this way the database need only be queried once an hour. Set the display order so that it shows where you desire in the sidebar.

For "Content Type" select "PHP".

And for the content, add the following code:

PHP Code:
global $vbulletin$db;
$max 5;
$output '<div class="restore"><ul>';

$rep_users $vbulletin->db->query_read("
    SELECT user.*
    FROM " 
TABLE_PREFIX "user AS user
    WHERE options & 1024
    AND usergroupid != 8
    ORDER BY reputation DESC
"
);

$rcount 0;

while (
$rep_user $db->fetch_array($rep_users) AND $rcount $max)
{
    
$output .= '<li>' repuser_link($rep_user) . ': ' $rep_user['reputation'] . ' Points</li>';
    
$rcount++;
}

$output .= '</ul></div>';

return 
$output;

function 
repuser_link($user)
{
    global 
$vbulletin;
    
$link 'member.php?do=getinfo&username=' $user['username'];

    if (
$user['displaygroupid'])
    {
        
$groupid $user['displaygroupid'];
    }
    else
    {
        
$groupid $user['usergroupid'];
    }

    
$open_tag $vbulletin->usergroupcache[$groupid]['opentag'];
    
$close_tag $vbulletin->usergroupcache[$groupid]['closetag'];
    
$title 'Visit ' $user['username'] . '\'s Profile';
    return 
'<a title="' $title '" href="' $link '">' $open_tag $user['username'] . $close_tag '</a>';

Change the line:

PHP Code:
$max 5
to match the number of users you wish to display.

Note: Users who have elected to hide their reputations will not be displayed. It only makes sense to honor this setting here. Also, banned users are excluded.

If you have any changes to the way the users are displayed, please let me know. The usernames are shown with their username markup, and link to their profiles.
Attached Images
File Type: png top_reps.png (5.3 KB, 0 views)
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01122 seconds
  • Memory Usage 1,813KB
  • Queries Executed 12 (?)
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
  • (2)bbcode_php
  • (1)footer
  • (1)gobutton
  • (1)header
  • (1)headinclude
  • (6)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_attachment
  • (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
  • 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_attachment
  • postbit_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete