Если бы я спросить вас, что наименее используемым по умолчанию размер страницы в WordPress является, скорее всего, вы бы сказали шаблон архива.Или, что более вероятно, что вы, наверное, даже не думать о шаблоне архива на всех — вот как непопулярны это.Причина проста.Как велика, как WordPress есть стандартный способ, в котором она приближается архив далеко от удобной для пользователей .
Давайте исправим это сегодня!Давайте строить страницу архива для WordPress, что на самом деле полезно.Самое приятное то, что вы сможете использовать его с любым современным теме WordPress, установленных на вашем веб-сайте на момент .
Но первое, что мы подразумеваем под “странице архива” точно
Story Of WordPress Archives
В WordPress, вы получаете возможность работать с широким кругом различных шаблонов страниц и сооружений в стандартной конфигурации.Глядя на список каталогов темы по умолчанию на момент написания, двадцать пятнадцать, мы находим следующее:
- Ошибка 404,
- Архив страницы (наш герой сегодня),
- Страница вложения изображения,
- Первая страница (главная страница),
- Шаблон страницы по умолчанию (для страниц),
- Страница результатов поиска,
- Одно сообщение, и крепления страницы .
Несмотря на различия в целях, все эти страницы действительно похожи по структуре, и они, как правило, отличаются только в нескольких местах и несколько строк кода.В самом деле, только видимая разница между индексной страницы и страницы архивного дополнительный заголовок в верхней части, которая меняется в зависимости от конкретной страницы просматриваемого .
Идея такого архива структуры является обеспечение администратору блога с пути, чтобы продемонстрировать архив на основе различных критериев, но сделать это в упрощенном виде.В конце концов, эти различные архивные страницы находятся всего в версии титульной страницы, что содержание фильтр, опубликованной в течение определенного периода времени или по определенному автору или отдельных категорий или тегов .
Хотя это звучит как хорошая идея с точки зрения программиста, это не имеет смысла с точки зрения пользователя.Или, точнее, один слой здесь отсутствует — слой, который встанет между намерения пользователя, чтобы найти содержание и отдельные элементы в самих архиве .
Вот что я имею в виду.Прямо сейчас, только встроенные способ демонстрации архивных ссылок на веб-сайте WordPress является с виджетом.Так что, если вы хотите, чтобы посетители могли копаться в архиве в какой-либо четкой образом, вы, вероятно, придется посвятить целый вставкупросто архива (только, чтобы быть в состоянии захватить различные типы организации, например, архив дату на основе архива категории, архив тегом, автор архиве и т.д.) .
Итак, что нам действительно нужно здесь middleman страница, которая приветствует посетителя, объясняет, что они уже в архиве, а затем направляют их к точному части содержания они заинтересованы в систему или предлагает некоторые популярные содержание.
Вот почему мы собираемся создать собственную страницу архива .
Как построить собственное Архивы страницу в WordPress
Вот что мы собираемся делать в двух словах.Наша Нестандартный архив будет основываться на Нестандартный template 3 .Этот шаблон позволит нам сделать следующее:
- Включают в себя пользовательские приветственное сообщение (могут содержать текст, изображения, выбора в форме, и т.д. — стандарт WordPress вещи);
- Перечислите все сообщения 15 (настраивается);
- Показать ссылки на архив автора;
- Показать ссылки на месячном архиве;
- Добавить дополнительные области виджета (для отображения вещи, как наиболее популярный контент, категории, теги) .
Наконец, страница будет реагировать и не будет зависеть от текущей темы сайта она используется на .
Это, как говорится, мы должны начать с помощью some тему в качестве основы нашей работы здесь.Я буду использовать Zerif Lite 4 .Признаюсь, я может быть немного предвзятым здесь, потому что это один из наших тем (в ThemeIsle).Тем не менее, это был один из 10 самых популярных тем, опубликованным в прошлом году в каталоге темы WordPress “, поэтому я надеюсь, вы позволите этому один слайд .
И, эй, если вам не нравится тема, никаких обид.Вы можете использовать подход, представленный здесь с любой другой теме .
Приступая к работе с основным File
Лучшая модель, на которой строится свою страницу архив page.php
файл вашей текущей теме, на пару причин:
- Его структура уже оптимизированы для отображения пользовательского контента в основному содержимому блока .
- Это, наверное, один из самых простых шаблонов страниц в структуре вашей темы .
Таким образом, начиная с page.php
файл темы Zerif Lite, я собираюсь сделать копию и назовите его tmpl_archives.php
.
(Убедитесь, что не называть вашу страницу что-то вроде page-archives.php
. Все имена файлов, начинающиеся с page-
будут рассматриваться как новые шаблоны страниц в пределах основного файла иерархия WordPress themes 5 . Вот почему мы используем префикс tmpl_
. здесь)
Далее, все, что я собираюсь сделать, это изменить одну строку в этом файле:
<?php get_template_part( 'content', 'page' ); ?>
Мы изменим что это:
<?php get_template_part( 'content', 'tmpl_archives' ); ?>
Все это делаетзагрузит правильный файл содержимого для нашего архива странице .
Если вы хотите, вы можете удалить другие элементы, которые кажутся несущественными на свою страницу архива (такие как комментарии), но убедитесь, что оставить в каждом из элементов, входящих в состав HTML структуру.И вообще, не бойтесь экспериментировать.В конце концов, если что-то перестает работать, вы можете легко вернуть предыдущую код и отлаживать оттуда .
Кроме того, не стоит забывать и о стандартном декларации пользовательского шаблона комментарий, который необходимо разместить в самом начале нового файла (в данном случае, tmpl_archives.php
):
<?php
/* Template Name: Archive Page Custom */
?>
После этого, что мы остались с является следующая структура файлов (с некоторыми элементами удалены для удобства чтения):
<?php
/* Template Name: Archive Page Custom */
get_header(); ?>
<div class="clear"></div>
</header> <!-- / END HOME SECTION -->
<div id="content" class="site-content">
<div class="container">
<div class="content-left-wrap col-md-9">
<div id="primary" class="content-area">
<main id="main" class="site-main" role="main">
<?php while ( have_posts() ) : the_post(); // standard WordPress loop. ?>
<?php get_template_part( 'content', 'tmpl_archives' ); // loading our custom file. ?>
<?php endwhile; // end of the loop. ?>
</main><!-- #main -->
</div><!-- #primary -->
</div>
<div class="sidebar-wrap col-md-3 content-left-wrap">
<?php get_sidebar(); ?>
</div>
</div><!-- .container -->
<?php get_footer(); ?>
Далее давайте создадим другую часть головоломки — файл пользовательского контента.Мы начнем с content-page.php
файл, сделав копию и переименовать его в content-tmpl_archives.php
.
В этом файле, мы собираемся, чтобы удалить все, что не важно, сохраняя только структурные элементы, а также призывает основная функция WordPress:
<?php
/**
* The template used to display archive content
*/
?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
<header class="entry-header">
<h1 class="entry-title"><?php the_title(); ?></h1>
</header><!-- .entry-header -->
<div class="entry-content">
<?php the_content(); ?>
<!-- THIS IS WHERE THE FUN PART GOES -->
</div><!-- .entry-content -->
</article><!-- #post-## -->
Заполнитель комментарий виден в середине, где мы собираемся начать в том числе наши собственные элементы .
Добавление пользовательского Добро пожаловать Message
Этот на самом деле уже заботятся WordPress.Следующая строка делает магию:
<?php the_content(); ?>
Добавление нового виджета Areas
Давайте начнем эту часть путем создания новых областей виджетов в WordPress, используя стандартный процесс.Тем не менее, давайте делать это через дополнительный файл функций, только, чтобы держать вещи многоразовые из темы к теме .
Итак, мы начинаем с создания нового файла, archives-page-functions.php
, поместив его в главном каталоге тему, а регистрация двух новых областей виджетов в нем:
if(!function_exists('archives_page_widgets_init')) :
function archives_page_widgets_init() {
/* First archive page widget, displayed to the LEFT. */
register_sidebar(array(
'name' => __('Archives page widget LEFT', 'zerif-lite'),
'description' => __('This widget will be shown on the left side of your archive page.', 'zerif-lite'),
'id' => 'archives-left',
'before_widget' => '<div class="archives-widget-left">',
'after_widget' => '</div>',
'before_title' => '<h1 class="widget-title">',
'after_title' => '</h1>',
));
/* Second archive page widget, displayed to the RIGHT. */
register_sidebar(array(
'name' => __('Archives page widget RIGHT', 'zerif-lite'),
'description' => __('This widget will be shown on the right side of your archive page.', 'zerif-lite'),
'id' => 'archives-right',
'before_widget' => '<div class="archives-widget-right">',
'after_widget' => '</div>',
'before_title' => '<h1 class="widget-title">',
'after_title' => '</h1>',
));
}
endif;
add_action('widgets_init', 'archives_page_widgets_init');
Далее нам нужно некоторые пользовательские стили для страницы архива, так что давайте также “поставить в очередь” новый CSS файл:
if(!function_exists('archives_page_styles')) :
function archives_page_styles() {
if(is_page_template('tmpl_archives.php')) {
wp_enqueue_style('archives-page-style', get_template_directory_uri() . '/archives-page-style.css'); // standard way of adding style sheets in WP.
}
}
endif;
add_action('wp_enqueue_scripts', 'archives_page_styles');
Это условного оператора поставить в очередь.Он будет работать, только если посетитель просматривает странице архива .
Кроме того, давайте не забывать, чтобы включить эту новую archives-page-functions.php
файл, добавив следующую строку в самом конце ~ 34 текущей темы | файла:
require get_template_directory() . '/archives-page-functions.php';
Наконец, новый блок, который мы будем использовать в нашей основной c ...
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров