Intereting Posts
Получить данные формы ввода, размещенные пользователями Тема одной страницы, использующая страницы для содержимого Как вставлять видео .mp4 в сообщение WordPress? Как добавить пользовательскую функцию в pluggable.php Перечислите только детей первого уровня с конкретным сроком таксономии Миниатюры изображений недоступны после миграции, но все еще доступны через прямой URL-адрес. Как скрыть / перенаправить страницу автора Что может привести к сбою функций автоматической установки в WordPress (v3.0.3)? WordPress продолжает запрашивать информацию о подключении в локальном хосте Список категорий и автоматические классы jQuery Слайд-шоу слайдов с портфолио, ведя себя странно, когда в jQuery Ui Tabs Как отображать файлы .ico в медиатеке Отображение первой дочерней страницы родительской страницы Можно ли использовать несколько пробелов в заголовке? Импортировать носители с надписью и заголовками?

Создайте собственный URL-адрес для архива блога

Я играю с тестовым сайтом, и я создал статическую страницу в качестве домашней страницы.

Теперь я хочу сделать пункт меню Blog – с url example.com/blog/ – где я расскажу о последних статьях. Я создал собственный шаблон страницы и изменил WP_Query так, чтобы он запрашивал список из 10 последних сообщений. Затем я создал страницу и установил ссылку permelink на example.com/blog/ .

Для постоянных /blog/%postname%/ я использую настраиваемую структуру /blog/%postname%/ так что мои сообщения в блоге похожи на example.com/blog/post-name .

Проблема: я также хочу, чтобы страница ежемесячного архива и страница списка категорий также использовали эту настраиваемую страницу, которую я сделал, вместо соответствующих файлов шаблонов.

Или другое решение, о котором я думал, – это заставить обычную страницу архива работать без использования настраиваемой страницы, указывающей на example.com/blog .

Я немного смущен тем, как реализовать решение.

Solutions Collecting From Web of "Создайте собственный URL-адрес для архива блога"

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

Чтобы архив в месяц / категория использовал другой файл шаблона, чем стандартный, вы можете использовать фильтр template_include и функции is_category () и is_date () :

 add_filter( 'template_include', 'inlcude_archive_page_template' ); function inlcude_archive_page_template( $template ) { if ( is_category() || is_date() ) { $new_template = locate_template( array( 'the-archive-page-template.php' ) ); if ( '' != $new_template ) { return $new_template ; } } return $template; } 

Из того, что я понимаю, у вас есть две страницы. Одна страница для домашней страницы, которая находится на панели управления в разделе «Настройки / Чтение», которую вы задали как «Главная страница». И вы также установили страницу «Сообщения» в качестве страницы, созданной под названием «Блог».

И так прямо сейчас, архив сообщений, URL читает «ваш сайт / блог», правильно? Если вы не хотите, чтобы это был «блог», вы можете просто переименовать свою страницу «Блог» как что-то еще и убедиться, что slug – это то, что вы хотите? Поэтому, если вы переименовали эту страницу как «Новости» и под заголовком этой страницы, пока вы ее редактируете, есть опция «Изменить» рядом с постоянной ссылкой, вы можете убедиться, что теперь это новости вместо блога, а затем url должен читать «ваш сайт / новости».