View Single Post
  #1  
Old 08-23-2012, 02:42 PM
Eosian Eosian is offline
 
Join Date: Feb 2009
Posts: 41
Благодарил(а): 0 раз(а)
Поблагодарили: 0 раз(а) в 0 сообщениях
Default

No, sorting of threads is handled by whatever defaults are set on a per forum basis, or by whatever sort options are passed in the event the user uses the forum sorting tool bar.

If you add a field named stickysortorder to the threads table, default it 0 (or 99, depending on your native sort direction) and add a plugin to the forumdisplay_query hook to set the following variables;

$sqlsortfield
$sqlsortorder
$sqlsortfield2

Into approximately;

$sqlsortfield2 = $sqlsortfield;
$sqlsortfield = " stickysortorder ";

You could jury rig it and manually set the stickysortorder on your threads to what you want. The biggest flaw in this, aside from the potential for something else to already be using both sort variables, is that unless you change forumdisplay.php physically both sort fields use the same sortorder. Your default value needs to be higher/lower than your intended "used" sort order and correspond directly to your default sort direction, so it takes some tweaking.

There isn't any hook between forumdisplay_query and the actual processing of it's array that you can use to rearrange the sort order, which is determined by that query, is hard coded to do stickies first, then whatever the sort order requested was.

Alternative Sorting is not something vBulletin is very flexible on, most of the things you'd like to sort are hardcoded and offer no hooks to override.
Reply With Quote
 
X vBulletin 3.8.12 by vBS Debug Information
  • Page Generation 0.01039 seconds
  • Memory Usage 1,761KB
  • 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)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_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_display_complete
  • post_thanks_function_can_thank_this_post_start
  • showpost_complete