Как вывести список записей рубрики в выпадающем меню?
Если вы хотите вывести на странице рубрики список всех записей этой рубрики в выпадающем меню, то вы должны использовать примерно такой код, вставленный в нужный файл шаблона (category.php или archive.php) вашей темы:
<?php $category = get_the_category(); $catID = $category[0]->term_id; $args = array( 'numberposts' => -1, 'category' => $catID ); $catPosts = get_posts($args); echo '<form method="POST">'; echo '<select name="goToPost" onchange="document.location=this.value">'; echo '<option value="">'.'Все записи в рубрике: '.get_cat_name($catID).'</option>'; foreach ($catPosts as $singlePost) { echo '<option value="'.get_bloginfo('url').'/index.php?p='. $singlePost->ID.'">'.$singlePost->post_title.'</option>'; }; echo '</select>'; echo '</form>'; ?> |
Этот код выведет в выпадающем меню список всех записей текущей рубрики. Если вы хотите ограничиться конкретным числом записей, то исправьте значение параметра 'numberposts' в коде (-1 выводит все записи). При желании в этом списке можно вывести все записи сайта, для этого надо использовать такой код:
<?php $args = array( 'numberposts' => -1 ); $catPosts = get_posts($args); echo '<form method="POST">'; echo '<select name="goToPost" onchange="document.location=this.value">'; echo '<option value="">'.'Все записи сайта.</option>'; foreach ($catPosts as $singlePost) { echo '<option value="'.get_bloginfo('url').'/index.php?p='. $singlePost->ID.'">'.$singlePost->post_title.'</option>'; }; echo '</select>'; echo '</form>'; ?> |
При выборе какой-либо записи в списке эта запись будет немедленно открыта.
Спасибо за идею, вот если бы еще можно было внешний вид отформатировать этого списка было бы вообще супер
Все это прекрасно. Но пустой совет, если не написано, куда вставлять? С кодами шутки плохи, может и сайт накрыться. Нашла я только archive.php. Там свой код есть. А этот куда вставлять: вместо него, в какое-то определенное место? У Вас единственная статья, которая дала надежду на решение вопроса - уже какой раз берусь за решение, время теряю и ни у кого нет статьи на эту тему! Но опять нет конца. Буду признательна, если напишите, куда вставить код в "нужный файл шаблона"
Все подробно описано, спасибо автору. По поводу кода, в ответ на ваш комментарий, куда вставлять, желательно иметь опыт по php. В противном случае да, может и сайт лечь, от незнания.
Если у Вас есть sitebar, скачайте плагин Code Widget, переместите этот виджет в сайтбар и в него вставьте этот код, выбрав из списка php code. сохранить и готово.
Если не поможет, тогда обратитесь к профессианалам, на wp-kama
или напишите мне archilym@gmail.com