Я ответил на аналогичный вопрос здесь , но я суммирую то, что я думаю, поможет вам.Он будет включать пользовательские запросы, которые вы узнаете больше о здесь .
. Вы можете использовать отдельные элементы 'div' для сортировки каждого из постов различными методами.Затем вы можете использовать jQuery, чтобы скрыть их все (кроме, скажем, «самой последней» панели).Затем вы можете использовать ссылки для отображения соответствующего элемента div, когда пользователь щелкает по нему (скрывая все остальные), используя обработчик событий jQuerys .click ().
Чтобы заполнить каждый элемент 'div' сообщениями, отсортированными различным способом, вы должны использовать пользовательский запрос.Например, чтобы отсортировать по количеству комментариев, определите эту функцию в файле 'functions.php'.
function get_most_commented($limit=10) {
global $wpdb;
$most_commented = $wpdb->get_results("SELECT comment_count, ID, post_title FROM $wpdb->posts WHERE post_type='post' AND post_status = 'publish' ORDER BY comment_count DESC LIMIT 0 , $limit");
foreach ($most_commented as $post) {
setup_postdata($post);
$id = $post->ID;
$post_title = $post->post_title;
$count = $post->comment_count;
$output .= '<li><h1><a href="'. get_permalink($id).'">'.$post_title.' - '.$count.' comments</a></h1> post_excerpt;</li>';
}
return $output;
}
, затем вы внутри соответствующего элемента 'div' сверху вызываете функцию:
<?php echo get_most_commented(15) ?>
внутри упорядоченного / неупорядоченного списка (для отображения 15 наиболее комментируемых сообщений).В этом примере выводятся только заголовок и выдержка, но вы можете изменить HTML и использовать некоторые стили CSS, чтобы получить то, что вы хотите.
Надеюсь, это поможет!Вы вдохновили меня написать учебник по этому вопросу сейчас!
Редактировать: Я только что посмотрел на приведенный вами пример Nettuts - они «сортируют» посты, используяphp метод "GET".При нажатии на ссылку вы отправляетесь на ту же страницу, но с разными переменными get (например: недавний = истинный, прокомментированный = истинный)Страница содержит ряд операторов php if, определяющих порядок сортировки сообщений в зависимости от того, для какой переменной GET установлено значение 'true'.
Это имеет преимущество перед не требующим jQuery (или действительно включенным javascript)- и он не загружает все три метода сортировки одновременно - только тот, который ему нужен.