cpuguru
  • 0
Новичок

Создать страницу «Все сообщения» или «Архивы» с помощью WordPress 3.0?

  • 0

Я хотел бы создать страницу «Все сообщения» в блоге Ocean Bytes, содержащую неупорядоченный список всех заголовков сообщений на сегодняшний день, где каждый заголовок имеет гиперссылку на свое сообщение в блоге.

Кажется, есть несколько плагинов, которые делают что-то подобное, но большинство из них еще не перечисляют WordPress 3.0+ как поддерживаемый, или они хотят подмножить сообщения в блоге по году, а затем по месяцу, что нежелательно.

Любые предложения для «лучшего способа»?

Спасибо.

Share
  1. Создайте новый файл шаблона и сделайте это как цикл:

    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() получения дополнительной информации о том, как изменить запрос.

    • 0
    • Спасибо за ссылки, которые привели меня к решению, которое я получил ниже. Я бы проголосовал за этот ответ, но, видимо, у меня еще недостаточно SE mojo;?)

      • 0
    • Примечание. Хотя описанное выше работало с предыдущим сайтом WP 3.0, размещенным на собственном хостинге, у меня нет доступа к созданию шаблонов страниц на сайте WP 4.x, размещенном на внешнем хостинге, из-за ограничений хостинга. Таким образом, полученная страница, указанная выше, не запускает указанный выше PHP-код.

      • 0
  2. «Лучшим способом» будет использование пользовательского шаблона страницы. Точно так же, как index.php циклически перебирает все сообщения, вы можете запустить собственный запрос, чтобы перебрать все и вывести в браузер только нужную информацию (заголовок, URL).

    Вот несколько хороших руководств по созданию пользовательского шаблона страницы:

    • 0
  3. В итоге я создал шаблон страницы под названием «allposts-page.php» в папке Twenty-Ten Themes, содержащий следующий код:

    <?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 с заголовком «Все сообщения» и выбрал шаблон «Все сообщения» из раскрывающегося списка. В тело ничего вводить не нужно.

    Полученную страницу можно найти через:

    http://www.oceanbytes.org/all-posts/

    По умолчанию для «wp_get_archives» установлено значение «ежемесячно», но я выбрал «postbypost», так как хотел просто перечислить все сообщения, как в длинном списке. Дополнительные параметры можно найти на сайте WordPress через Function Reference/wp get archives.

    • 0

Оставить ответ

You must login to add an answer.