Если бы я спросить вас, что наименее используемым по умолчанию тип страницы в WordPress является, скорее всего, вы бы сказали шаблон архива.Или, что более вероятно, вы, вероятно, даже не думать о шаблоне архива на всех — Вот как это непопулярно.Причина проста.Как велика, как WordPress есть стандартный способ, в котором она приближается архив далеко от пользователя-дружественной .
Давайте исправим сегодня!Давайте строить страницу архива для WordPress, что на самом деле полезно.Самое приятное, что вы сможете использовать его с любой современной темы WordPress, установленных на вашем веб-сайте на момент .
Но сначала, что мы имеем в виду под “странице архива” точно
История Из WordPress Archives
В WordPress, вы получите работу с рядом различных шаблонов страниц и сооружений в стандартной конфигурации.Глядя на список каталогов тему по умолчанию на момент написания, двадцать пятнадцать, мы находим следующее:
- Ошибка 404,
- Архив страницы (наш герой сегодня),
- Страница вложения изображения,
- Индекс страницы (главная страница),
- Шаблон страницы по умолчанию (для страниц),
- Страница результатов поиска,
- Разместить один и крепления страницы .
Несмотря на различного назначения, все эти страницы действительно похожи по структуре, и они, как правило, отличаются только в нескольких местах и несколько строк кода.На самом деле, только видимая разница между индексной страницы и страницы архива дополнительный заголовок в верхней части, которая изменяется в зависимости от конкретной страницы просматриваемого .
Идея такого архива структуры, чтобы обеспечить администратору блога с пути, чтобы продемонстрировать архив на основе различных критериев, но сделать это в упрощенном виде.В конце концов, эти различные архивные страницы всего версии страницы индекса, что содержание фильтр, опубликованной в течение определенного периода времени или определенного автора или с определенными категориями или тегами .
Хотя это звучит как хорошая идея с точки зрения программиста, это не имеет смысла с точки зрения пользователя.Или, точнее, один слой отсутствует здесь — слой, который встанет между намерения пользователя, чтобы найти содержание и отдельные элементы в сами архиве .
Вот что я имею в виду.Прямо сейчас, только встроенный способ, чтобы продемонстрировать архивные ссылки на веб-сайте WordPress является с виджетом.Так что, если вы хотите, чтобы посетители могли копаться в архиве в любом ясный путь, вы бывероятно, придется посвятить всю боковую панель просто архива (только, чтобы быть в состоянии захватить различные типы организации, такие как архиве даты, на основе архива категории, архив тегом, автор архиве и так далее) .
Итак, что нам действительно нужно здесь middleman, страница, приветствует посетителя, объясняет, что они уже в архиве, а затем указывает их в точном части содержания они заинтересованы или предполагает некоторую популярный контент.
Вот почему мы собираемся создать пользовательскую страницу архива .
Как построить собственное Архивы страницу в WordPress
Вот что мы собираемся делать в двух словах.Наша специальная страница Архив будет основываться на специальная страница template __12 | | 3__11 .Этот шаблон позволит нам сделать следующее:
- Включить пользовательский приветственное сообщение (может содержать текст, изображения, выбора в форме, и т.д. — стандарт WordPress вещи);
- Перечислите все сообщения 15 (настраивается);
- Показать ссылки на архив автора;
- Показать ссылки на месячном архиве;
- Добавить дополнительные области виджета (для отображения вещи, как наиболее популярный контент, категории, теги) .
Наконец, страница будет реагировать и не будет зависеть от текущей темы сайта она используется на .
Это, как говорится, мы должны начать с помощью | some__33 тему в качестве основы нашей работы здесь.Я буду использовать Zerif Lite __36 | | 4__11 .Признаюсь, я, может быть немного смещена здесь, потому что это один из наших тем (в ThemeIsle).Тем не менее, это был один из 10 самых популярных тем, опубликованным в прошлом году в каталоге темы WordPress “, поэтому я надеюсь, вы позволите этому один слайд .
И, эй, если вам не нравится тема, ни обид.Вы можете использовать подход, представленный здесь, с любой другой теме .
Начало работы с основными File
Лучшая модель, на которой строится свою страницу архива page.php
файл вашей текущей теме, на пару причин:
- Его структура уже оптимизированы для отображения пользовательского контента в основному содержимому блока .
- Это, наверное, один из самых простых шаблонов страниц в структуре вашей темы .
Таким образом, начиная с page.php
файл темы Zerif Lite, я собираюсь сделать копию и назовите его tmpl_archives.php
.
(Убедитесь, что не называть вашу страницу что-то вроде page-archives.php
. Все имена файлов, начиная с page-
будут рассматриваться как новые шаблоны страниц в пределах основного файла иерархия WordPress themes __58 | | 5__11 . Вот почему мы используем префикс 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';
Наконец, новый блок, который мы будем использовать в нашей основной content-tmpl_archives.php
файла достаточно прост.Про …
Если вы хотите прочитать полностью статью, посетите сайт наших спонсоров