2015-12-06 110 views
0

我對PHP不太好。列表分類排序方式隨機

我使用「高級類別小工具」來列出側欄上的類別。

我使用這個插件,因爲它提供了顯示圖像類別的能力。

但我需要隨機訂購類別。

我找到插件此代碼:

function advanced_categories_widget_html($args = array()) { 
    $args = wp_parse_args($args); 
    $args['walker'] = new Walker_Advance_Category_Widget; 
    $output = wp_list_categories($args); 
    if ($output) return $output; 
} 

,我發現在論壇上另一個代碼顯示正確隨機順序類別:

wp_list_categories

我怎麼能利用第二碼破解第一個代碼以隨機順序列出我的類別?

該插件的PHP文件:http://codepad.org/a3yU7Xny

回答

0

只需添加「黑客」在插件文件中的函數:

function advanced_categories_widget_html($args = array()) { 
    $args = wp_parse_args($args); 
    $args['walker'] = new Walker_Advance_Category_Widget; 
    $cats =''; 
    $categories=get_categories(); 
    $rand_keys = array_rand($categories, 5); // 5 is the number of categories you want 
    foreach ($rand_keys as $key) { 
     $cats .= $categories[$key]->term_id .','; 
    } 
    $output = wp_list_categories($args.'&include='.$cats);   
    if ($output) return $output; 
} 

或者通過更清潔的方式,加入到functions.php文件中:

function random_advanced_categories_widget_html($args = array()) { 
    $args = wp_parse_args($args); 
    $args['walker'] = new Walker_Advance_Category_Widget; 
    $cats =''; 
    $categories=get_categories(); 
    $rand_keys = array_rand($categories, 5); // 5 is the number of categories you want 
    foreach ($rand_keys as $key) { 
     $cats .= $categories[$key]->term_id .','; 
    } 
    $output = wp_list_categories($args.'&include='.$cats);   
    if ($output) return $output; 
} 
+0

我加入這個代碼,插件或function.php但我不工作, 我的網站是:http://sayarti16.markedia.info/(側邊欄上的第一小) 的是文件插件:http://codepad.org/a3yU7Xny –

0

關於Advanced Categories Widget plugin you're using的文檔手風琴 - - 您可以在插件設置中指定'orderby'。請參閱this screenshot

你應該在下拉菜單中有一個隨機或隨機選項。

無法確認它是一個付費插件。

+0

謝謝您的回答, 功能「以便通過」隨機不可見截圖:http://postimg.org/image/4fbxh3cbp/ 我不知道我如何破解代碼。 謝謝 –