WordPress. Как создать шаблон страницы. Как работают шаблоны

Благодаря тщательно проработанной платформе тем и интуитивно понятному дизайну, вы можете менять оформление и содержимое сайта перетаскивая необходимые элементы с места на место, добавлять новый контент, при этом сразу видя все правки. Это не занимает много времени и действительно просто.

Теперь к каждому зарегистрированному домену доступен бесплатный WordPress хостинг, а вместе с ним простой и удобный редактор шаблонов Upfront.

Мы подготовили инструкции из 5 частей с конкретными примерами, о том, как создать WordРress сайт с помощью конструктора Upfront:

Мы возьмем тему Spirit и полностью переделаем ее области, контент, шрифты и другие элементы, превращая это:

В эту тему с собственным стилем, цветами, шрифтами, кнопками, картинками, контактными формами и другими элементами:

Давайте начнем.

Вход в WordPress панель и выбор темы

После того, как вы зашли в свой личный WordPress кабинет вам нужно выбрать тему с которой вы будете работать. По умолчанию у вас уже выбрана тема. Как мы говорили ранее, для примера, мы взяли тему Spirit. Для этого наводим на тему и жмем кнопку Активировать . Тема выбрана.

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

Удаляем, меняем размер, перемещаем элементы

Давайте начнем с удаления.

Все что вам нужно сделать это навести курсив на лишний элемент и нажать крестик в верхнем углу. Если вы сделали это случайно, что бы вернуть все назад пользуйтесь комбинацией клавиш Ctrl+Z.

Менять размер блока аналогично просто. Давайте поменяем размер этого же элемента. Наводим курсор, кликаем на угол и тянем в нужную сторону.

Примечание: Если вы пытаетесь поменять размер логотипа в теме и у вас не выходит, это из-за заданного по умолчанию размера картинки. Замените на собственный логотип или просто удалите этот.

Меняем цвет темы

Бывало такое что вы находите хорошую тему и вам все в ней нравится кроме цветового решения?

Upfront позволяет вам полностью управлять цветами темы из одной панели. Если вы передумаете, вы можете заменить цвета в любой момент. Это значит, что вы можете сменить цвет текста, рамок, фона и прочее. Шаблоны Upfront, как огромная разукрашка с широкой цветовой палитрой для вашего сайта:-)

После перехода в конструктор слева у вас будет панель настроек. Нажимаем на выпадающие меню Настройки темы/Theme Settings и выбираем пункт Цвета/Colors. Перед вами 6 цветов темы заданных по умолчанию.

Допустим у вас есть брендовые цвета и вы знаете их номера, в таком случае вам нужно только кликнуть на цвет и сменить номер, а если нет, то просто подберите в палитре те, которые вам по душе. По завершению кликаем ОК .

Добавляем текст

Тут все просто: кликаем дважды на область с текстом что бы сделать активной ее редактирование, еще двойной клик, чтобы выделить слово и трижды если нужно выделить параграф. Над текстом появится панель инструментов для работы с ним. Вот полный список опций по редактированию:

  • Тип элемента/Type Element – Включает в себя заголовки H1, H2, H3, H4, H5, H6, обычный абзац и формат кода
  • Bold – Делает шрифт жирным
  • Italics – Курсив
  • Alignment – Выравнивание текста по краям
  • Список/List – Маркированый или нумерованый список
  • Blockquote – Оформление текстового блока как цитату или обычный блок
  • Ссылка/Link – Возможность вставить в текст якорь,ссылку на конкретный URL , блок, страницу или публикацию, с открытием в этом же или в новом окне.
  • Иконки/Inline Icons – Набор иконок

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

Типографика

Размеры шрифтов, их стили и цвет редактируются в боковом меню: Настройки темы — Типографика .

Для каждого типа элемента, вы можете указать его вид шрифта, стиль, цвет, размер и высоту строки.

Вы также можете добавить пользовательские правила CSS, но мы рассмотрим это позже, как часть другого поста в этой серии.

Менеджер шрифтов/Theme Fonts Manager позволяет добавить любой шрифт Google к вашей теме. Кликни на Theme Fonts Manager и выбери из выпадающего списка подходящий шрифт, кликни на него и жми Добавить/Add, чтобы он появился в списке. Этот шрифт станет доступен тебе в выпадающем списке при редактировании текста, как на примере:

Примечание: многие Google шрифты не поддерживают кириллические символы.

Одновременное редактирование текста

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

Самый простой способ сделать это — добавить образцы текста на сайт, стилизировать в Настройках темы/Theme Settings , а затем удалить.

Вот как это сделать:

  • Скопируйте образец текста, который закачан на CodePen и убедитесь, что форматирование остается неизменным
  • Вставить текст в любой текстовый элемент Upfront
  • Перейдите к Настройкам темы/Theme Settings и выберите Типографию/Typography , если он еще не открыт
  • Для каждого типа элемента выберите вид, стиль, цвет, размер и высоту строки

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

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

В процессе представления страницы, WordPress проверяет наличие соответствующего шаблона в каталоге с активной темой. Каким образом WordPress выбирает необходимый шаблон? Это зависит от типа страницы, а также от количества доступных шаблонов для ее представления. Сначала WordPress выполняет проверку присутствия определенных шаблонов с определенными именами, и если таких не было найдено, то откатывается к файлу index.php, который является своего рода универсальным шаблоном для отображения любой страницы.

Краткая иерархия шаблонов

Главная страница

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

1. front-page.php
2. page.php или home.php (зависит от того, что вы выбрали в настройках блога)
3. index.php

В WordPress 2.x иерархия была следующей:

1. home.php
2. index.php

Отдельные записи

1. single-posttype.php, где posttype задает определенный тип записи. К примеру, если ваша запись имеет название Recipes, то шаблон получил бы название single-recipes.php.
2. single.php
3. index.php

Отдельные страницы

1. WordPress сначала ищет шаблон, определенный в настройках шаблонов страниц.
2. page-slug.php, где slug — это определяющая строка для данной страницы. К примеру, если у вас есть страница, названная About, то WordPress будет искать для нее шаблон page-about.php.
3. page-id.php, где ID — идентификатор данной страницы. Если страница About имеет ID = 2, то WordPress будет искать для нее шаблон page-2.php.
4. page.php
5. index.php

Вложения

1. MIMEtype.php, где MIMEtype определяет тип вложения - к примеру, audio.php, image.php, text.php или video.php.
2. attachment.php
3. index.php

1. category-slug.php, где slug — определяющая строка рубрики.
2. category-id.php, где id — цифровой ID рубрики.
3. category.php
4. archive.php
5. index.php

Архивы меток

1. tag-slug.php.
2. tag-id.php.
3. tag.php
4. archive.php
5. index.php

Архивы таксономий

Произвольные таксономии появились в WordPress 3.

1. taxonomy-taxonomyname-term.php, где taxonomyname является определяющей строкой для произвольной таксономии, а term является термом для данной таксономии. Если ваша таксономия была названа Cheeses и ваш терм был Brie, то WordPress при выводе пунктов для данного терма будет искать шаблон taxonomy-cheese-brie.php.
2. taxonomy-taxonomyname.php, аналогично первому пункту, только без терма.
3. taxonomy.php
4. archive.php
5. index.php

1. author-nicename.php, где nicename — это имя автора, преобразованное в нижний регистр с удаленными пробелами (вместо них ставятся тире).
2. author-id.php, где id — это идентификатор автора.
3. author.php
4. archive.php
5. index.php

Архивы по дате

1. date.php
2. archive.php
3. index.php

Страницы поиска

1. search.php
2. index.php

Страницы 404

1. 404.php
2. index.php

Иерархия шаблонов и дочерние темы

Когда вы используете дочернюю тему, иерархия шаблонов несколько усложняется. WordPress будет искать наиболее подходящий шаблон сначала в дочерней теме, а затем уже в родительской, в строгом соответствии с иерархией. То есть, к примеру, для архивов по дате, сначала WordPress будет искать шаблон date.php в дочерней теме, а затем, в случае его отсутствия, перейдет к поиску данного шаблона в родительской теме. Если же указанный шаблон не был найден, то WordPress перейдет к поиску следующего пункта в иерархии, archive.php. Поиск начнется снова от дочерней темы, и в случае отсутствия шаблона перейдет к родительской. И так далее, до файла index.php.

Шаблоны Thematic

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

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

404.php
archive.php
archives.php
attachment.php
author.php
category.php
comments.php
footer.php
functions.php
header.php
index.php
links.php
page.php
search.php
searchform.php
sidebar-index-bottom.php
sidebar-index-insert.php
sidebar-index-top.php
sidebar-page-bottom.php
sidebar-page-top.php
sidebar-single-bottom.php
sidebar-single-insert.php
sidebar-single-top.php
sidebar-subsidiary.php
sidebar.php
single.php
tag.php

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

comments-extensions.php
content-extensions.php
discussion.php
dynamic-classes.php
footer-extensions.php
header-extensions.php
helpers.php
shortcodes.php
sidebar-extensions.php
theme-options.php
widgets-extensions.php
widgets.php

Название каждого из этих файлов содержит в себе ключ к разгадке того, что они выполняют. Sidebar-extensions.php, очевидно, совершает какие-то действия с сайдбаром, widgets-extensions.php — с виджетами и т.д.

Сейчас объясню, как сделать из простого HTML-шаблона тему WordPress на примере дизайна из той статьи.

Адаптировать дизайн под WordPress может понадобиться по многим причинам, например, вы переносите на CMS свой некогда статичный сайт, или вам понравился дизайн, которого в коллекции WordPress ещё нет, или вы просто хотите разобраться, как устроены темы этой CMS изнутри.

Итак, приступим.

Распределяем код по файлам

1. Скачайте шаблон и распакуйте его в папку с темами WordPress (адрес вида адрес_блога_wordpress/wp-content/themes/ ). Если хотите, переименуйте папку с темой на свой вкус. Например, у меня шаблон располагается по адресу адрес_блога_wordpress/wp-content/themes/MyTheme/ .

2. Переименуйте файл styles.css в style.css .

3. Откройте style.css в редакторе кода (таком, как Notepad++) и в самое его начало вставьте следующие строки:

/* Theme Name: MyTheme Theme URI: http://test1.ru Author: NoName Author URI: http://test1.ru Description: Example of test Version: 1.0.0 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html */

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

4. Создайте файлы header.php , index.php , sidebar.php , footer.php и распределите по ним код из index.html .

4.1. В header.php скопируйте код по строчку , так как этот файл отвечает за верх сайта. styles.css замените в коде на style.css - новое корректное имя файла.

4.2. В index.php вставьте код основного блока (со строки по строку ).

4.3. В sidebar.php скопируйте код бокового меню по ).

4.4. В footer.php вставьте оставшиеся строки (с до конца документа index.html ).

5. Удалите index.html .

6. Перейдите в админ-панель и убедитесь, что шаблон MyTheme появился в разделе Внешний вид -> Темы . Вы даже можете попробовать его просмотреть или активировать, но ничего хорошего из этого пока не получится, ведь шаблон с WordPress мы ещё никак не интегрировали.

Адаптируем header

Теперь мы начнём из статичного шаблона делать динамическую тему, в которую будут подгружаться данные и настройки WordPress.

В шаблоне будут встречаться PHP-вставки. Начинается такой код с . Между ними расположен PHP-код, чаще всего вызывающий функции CMS

1. Откройте файл header.php и замените содержащийся в нём код до блока

на следующий:

> "> "> " type="text/css" media="screen" /> <?php bloginfo("name"); ?>

Мы сделали динамическим блок

Код вызывает функцию, возвращающую языковые атрибуты в контейнер.

">

Вместо того, чтобы прописывать кодировку константой, мы вызвали функцию, которая берёт значение из настроек CMS и автоматически подставляет его в код, то есть для смены кодировки уже не придётся править файл темы.

Важная функция, обеспечивающая работу на странице стилей, плагинов и скриптов.

2. Перейдите к редактированию файла index.php. В самом его начале пропишите

,

Строчки вызывают файлы шапки, боковой панели и низа сайта.

Теперь вы можете просмотреть или даже активировать MyTheme. В результате браузер отобразит уже знакомый шаблон со статическим меню и одной-единственной страницей. Чтобы меню стало динамическим и настраиваемым, а вместо одной страницы отображались все помещённые на сайт материалы, нужно преобразовывать шаблон дальше.

Делаем динамическим верхнее меню

Пока мы имеем полностью статическую тему оформления, в том числе и с неизменным горизонтальным верхним меню. Пока его нельзя настроить из админ-панели, и если оставить код в нынешнем виде, то для вставки/удаления/переноса пунктов придётся каждый раз редактировать файл header.php , что крайне неудобно.

Чтобы не мудрствовать лукаво и не погружаться в пучину увлекательного мира программирования, зададим динамическому меню статичное название. Вместо таблицы горизонтального меню вставьте код

так, чтобы получилось следующее: