Статьи

Создайте шаблон WordPress для вашей темы

Страница архивов — отличный способ связать все ваши важные архивы, такие как ежемесячные архивы и архивы категорий на одной выделенной странице. Это отличная альтернатива простым ссылкам на ваши старые посты в боковой панели и нижнем колонтитуле. Удивительно, но многие темы не включают одну по умолчанию … так что сегодня мы покажем вам быстрый способ создания с нуля.

Тема Kubrick WordPress , которая была стандартной темой WordPress в течение 5 лет (версия 1.5 до 3.0), поставлялась с собственным шаблоном archives.php. К сожалению, последние две темы WordPress по умолчанию ( TwentyTen и TwentyEleven ) не имеют.

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


Пожалуйста, не путайте шаблон archive.php и s .php архива. Шаблон archive.php включен в большинство тем и используется для создания ежемесячных архивов, архивов категорий, страниц авторов и т. Д. (Родительский файл index.php используется, если шаблон archive.php недоступен). Например, архивы, такие как www.yoursite.com/2011/12/ и www.yoursite.com/category/main-category/.

Сегодня мы создаем шаблон .php архива. Это помогает создать выделенную страницу архива на вашем сайте, которая перечисляет все ваши ежемесячные архивы. Например, www.yoursite.com/archives/.


Лучший способ создать любой новый шаблон страницы WordPress — скопировать код из шаблона themes page.php и удалить код из основной области содержимого. Шаблон Twenty Eleven page.php выглядит следующим образом:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php<br />
/**<br />
 * The template for displaying all pages.<br />
 *<br />
 * This is the template that displays all pages by default.<br />
 * Please note that this is the WordPress construct of pages<br />
 * and that other ‘pages’ on your WordPress site will use a<br />
 * different template.<br />
 *<br />
 * @package WordPress<br />
 * @subpackage Twenty_Eleven<br />
 * @since Twenty Eleven 1.0<br />
 */<br />
<br />
get_header();
<br />
        <div id=»primary»><br />
            <div id=»content» role=»main»><br />
<br />
                <?php while ( have_posts() ) : the_post();
<br />
                    <?php get_template_part( ‘content’, ‘page’ );
<br />
                    <?php comments_template( », true );
<br />
                <?php endwhile;
<br />
            </div><!— #content —><br />
        </div><!— #primary —><br />
<br />
<?php get_footer();

Скопируйте код шаблона page.php в новый файл шаблона с именем archives.php. Теперь мы удалим код, который нам не нужен для нашего шаблона архивов.

Основная область содержимого шаблона Twenty Eleven page.php просто отображает цикл. Все, что вам нужно сделать, это удалить эти 4 строки кода. (т.е. удалите оператор while).

Кроме того, вы должны добавить следующее:

  • Имя шаблона: Шаблон архива — добавьте его в начало шаблона, чтобы его можно было выбрать в качестве шаблона страницы в редакторе страниц.
  • <? php the_title (); ?> — Это покажет заголовок страницы нашего архива.
  • <? php the_post (); содержимое(); ?> — Это гарантирует, что любой контент, добавляемый на вашу страницу архивов через область страницы WordPress, будет отображаться в верхней части страницы (вам не нужно добавлять эту строку, если вы не планируете писать введение перед архивами ).

Это дает нам следующее:

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<code>
<?php<br />
/**<br />
 * Template Name: Archives Template<br />
 * Description: A Page Template that lets us created a dedicated Archives page<br />
 *<br />
 * @package WordPress<br />
 * @subpackage Twenty_Eleven<br />
 * @since Twenty Eleven 1.0<br />
 */<br />
<br />
get_header();
<br />
        <div id=»primary»><br />
            <div id=»content» role=»main»><br />
<br />
        <h1 class=»entry-title»><?php the_title();
<?php the_post();
<br />
<!— The main functions of our Archives.php template will go below here —><br />
<br />
<br />
<!— The main functions of our Archives.php template will go above here —><br />
<br />
            </div><!— #content —><br />
        </div><!— #primary —><br />
<br />
<?php get_footer();
</code>

Теперь у вас есть пустой шаблон архивов. Пришло время наполнить его некоторым содержанием 🙂


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

  • get_search_form ();
  • wp_get_archives ();
  • wp_list_categories ();

Ваш шаблон archives.php теперь должен выглядеть примерно так:

1
<?php<br /> /**<br /> * Template Name: Archives Template<br /> * Description: A Page Template that lets us created a dedicated Archives page<br /> *<br /> * @package WordPress<br /> * @subpackage Twenty_Eleven<br /> * @since Twenty Eleven 1.0<br /> */<br /> <br /> get_header();

Ваша тема теперь имеет базовый шаблон archives.php. Следующее, что вам нужно сделать, это создать новую страницу на вашем веб-сайте (например, по адресу http://www.yoursite.com/wp-admin/post-new.php?post_type=page). Вы можете назвать страницу как угодно, например, «Архивы», «Архивы сайта», «Карта сайта» и т. Д.

Убедитесь, что вы изменили шаблон страницы с шаблона по умолчанию на вновь созданный шаблон архивов.

Если вы следовали этому руководству, используя тему Twenty Eleven, ваша страница архивов должна выглядеть примерно так:


На шаге 3 мы добавили форму поиска, ежемесячные архивы и архивы категорий на нашу страницу архивов. Используемые нами функции wp_get_archives и wp_list_categories очень универсальны и могут использоваться для отображения широкого спектра различных архивных списков.

Две другие функции, которые вы можете найти полезными — это wp_list_pages и wp_tag_cloud .

Ниже вы найдете несколько примеров параметров, которые можно передать всем этим функциям. Вы должны найти их полезными при дальнейшей настройке шаблона archives.php.

1
<?php wp_get_archives(‘type=daily&limit=30’);

Отображает последние 30 дней сообщений.

1
<?php wp_get_archives(‘type=postbypost&limit=20’);

Отображает последние 20 сообщений.

1
<?php wp_get_archives(‘type=weekly’);

Отображает еженедельные архивы.

1
<?php wp_get_archives(‘type=weekly&limit=12’);

Отображает 12 еженедельных архивов.

Обратите внимание, что это не обязательно список последних 12 недель сообщений. Если будет перечислять последние 12 недель, что были опубликованы сообщения, то есть список может вернуться на несколько лет назад, если ваш блог не был сильно обновлен.

1
<?php wp_get_archives(‘show_post_count=1’);

Отображает ежемесячные архивы с количеством сообщений.

1
<?php wp_get_archives(‘type=yearly’);

Отображает годовые архивы.

1
<?php wp_get_archives(‘type=alpha’);

Отображает все сообщения в алфавитном порядке.

1
<?php wp_get_archives(‘type=postbypost’);

Отображает все сообщения по дате. Новые сообщения перечислены первыми.

1
<?php wp_get_archives(‘show_post_count=1’);

Показывать количество сообщений по категориям.

1
<?php wp_list_categories(‘title_li=Info’);

Измените имя заголовка списка с «Категории» на «Информация».

1
<?php wp_list_categories(‘hide_empty=0’);

Показать пустые категории в списке категорий.

1
<?php wp_list_categories(‘include=1,5’);

Только список категорий 1 и 5.

1
<?php wp_list_categories(‘exclude=2’);

Не указывать категорию 2.

1
<?php wp_list_categories(‘depth=1’);

Показывать только категории верхнего уровня.

1
<?php wp_list_categories(‘depth=3’);

Показать три уровня категорий (т.е. верхняя категория, дочерняя категория и дочерняя категория ребенка).

1
<?php wp_list_categories(‘child_of=3’);

Показывать только категории детей категории 3

1
<?php wp_list_categories(‘title_li=News&include=4show_post_count=1’);

Показывать только категорию 4, показывать количество сообщений и изменять заголовок списка с «Категории» на «Новости».

1
<?php wp_list_pages();

Список всех страниц и подстраниц.

1
<?php wp_list_pages(‘title_li=’);

Показать все страницы и подстраницы, но без заголовка списка.

1
<?php wp_list_pages(‘sort_column=post_date’);

Сортировать страницы по дате их создания.

1
<?php wp_list_pages(‘sort_column=post_modified’);

Сортировка страниц по дате их последнего изменения.

1
<?php wp_list_pages(‘include=2,4,6’ );

Перечислять только те страницы, которые вы укажете.

1
<?php wp_list_pages(‘exclude=1,9’ );

Исключить определенные страницы из списка.

1
<?php wp_list_pages(‘depth=1’ );

Отображать только верхний уровень страниц.

1
<?php wp_list_pages(‘depth=2’ );

Отображение страниц и первого уровня подстраниц.

1
<?php wp_tag_cloud();

Показать ваше облако тегов в полном объеме.

1
<?php wp_tag_cloud(‘orderby=count’);

Закажите ваше облако тегов по количеству (наименьшее количество тем для большинства).

1
<?php wp_tag_cloud(‘smallest=15&largest=30’);

Установите размеры текста для наименьшего и большего значения счетчика (8 — это размер по умолчанию для наименьшего количества и 22 для наибольшего).

1
<?php $args = array(‘taxonomy’  => array(‘post_tag’,’category’), );

Показать облако тегов ваших категорий и ваших тегов.


Добавляя страницу архивов на ваш сайт, вы даете своим читателям и поисковым системам больше способов найти ваш лучший контент. Это такая простая страница для настройки, что удивительно, что больше тем не идет с включенным шаблоном архива.

Помните, что хотя мы использовали в качестве примера в этом учебном пособии Twenty Eleven по умолчанию, шаги, которые мы предприняли, могут быть применены к любой современной теме WordPress.

Удачи — Кевин