Создать страницу "Все сообщения" или "Архивы" с WordPress 3.0?
Я хотел бы создать страницу "Все сообщения" на Блог океанских байтов это содержит неупорядоченный список всех названий сообщений на сегодняшний день, с гиперссылкой на каждое название на его сообщение в блоге.
Похоже, что есть несколько плагинов, которые делают что-то подобное, но большинство из них еще не поддерживают Wordpress 3.0+, или они хотят разделить публикации в блоге по годам, а затем месяцам, что нежелательно.
Любые предложения по "лучшему путь"?
Спасибо.
3 answers
Создайте новый файл шаблона и сделайте это в виде цикла:
query_posts( array( 'posts_per_page' => -1, 'post_status' => 'publish' ) );
if( have_posts() ):
echo '<ul>';
while( have_posts() ):
the_post();
echo '<li><a href="';
the_permalink();
echo '">';
the_title();
echo '</a></li>';
endwhile;
echo '</ul>';
endif;
wp_reset_query();
Затем просто используйте этот шаблон для страницы, и он автоматически сгенерирует страницу. Проверьте страницу кодекса для query_posts()
для получения дополнительной информации о том, как изменить запрос.
"Лучшим способом" было бы использовать пользовательский шаблон страницы. Точно так же, как index.php
перебирает все сообщения, вы можете запустить пользовательский запрос, чтобы просмотреть все и передать в браузер только ту информацию, которую вы хотите (заголовок, URL-адрес).
Вот несколько хороших руководств по созданию пользовательского шаблона страницы:
В итоге я создал шаблон страницы под названием"allposts-page.php "в папке Двадцать десять тем, содержащей следующий код:
<?php
/**
* Template Name: All Posts
*
* A custom page template for displaying all posts.
*
* The "Template Name:" bit above allows this to be selectable
* from a dropdown menu on the edit page screen.
*
* @package WordPress
* @subpackage Twenty_Ten
* @since Twenty Ten 1.0
*/
get_header(); ?>
<div id="container">
<div id="content" role="main">
<h2>Archive of All Posts:</h2>
<ul>
<?php wp_get_archives('type=postbypost'); ?>
</ul>
</div><!-- #content -->
</div><!-- #container -->
<?php get_footer(); ?>
Затем я создал новую страницу с помощью системы администрирования Wordpress с заголовком "Все сообщения" и выбрал шаблон "Все сообщения" из раскрывающегося списка. Не нужно было ничего вводить в тело.
Полученную страницу можно найти по ссылке:
Www.oceanbytes.org/all-posts /
Значение по умолчанию для "wp_get_archives" равно "ежемесячно", но я выбрал "postbypost", так как я хотел просто перечислить все сообщения в длинном списке. Дополнительные опции можно найти на сайте Wordpress через Ссылка на функцию/wp получить архивы