Здравствуйте, уважаемые посетители моего скромного блога для начинающих вебразработчиков и web мастеров ZametkiNaPolyah.ru. Продолжаю рубрику Темы и шаблоны для сайтов и ее раздел шаблоны для WordPress. Предлагаю в этом посте поговорить о структуре WordPress шаблона. Здесь вы не найдете подробной инструкции о создание WordPress шаблона, такая инструкция будет складываться пост за постом, статья за статьей, так как уместить такой мануал в одну статью да так, чтобы это было понятно и доступно каждому, практически невозможно. Если у вас есть какие-то пожелания просьбы и предложения по данной теме, то отписывайтесь в комментариях и задавайте вопросы.
О чем же мы будем говорить в этой статье? Говорить мы будем о файлах WordPress шаблона и их назначение. Сразу скажу, что структура WordPress шаблона очень проста и логична, как, собственно, и сама CMS WordPress. Я не раз повторял в прошлой статье (Что нужно знать, чтобы создать шаблон WordPress), что для создания собственной WordPress темы достаточно немного здравого смысла, трудолюбия и времени, с технологиями, используемыми для создания сайтов, можно знакомиться и разбираться попутно.
Основные файлы WordPress шаблона и их назначение
Далее я перечислю все основные файлы WordPress шаблона и их назначение, их всего одиннадцать:
- style.css – таблица стилей WordPress шаблона, отвечает за оформление и активацию и дополнительную информацию о шаблоне WordPress;
- index.php – отвечает за вывод главной страницы WordPress, обратите внимание: главная страница может быть, как динамичной так и статичной, это нужно учитывать при верстке шаблона;
- single.php – страница публикаций WordPress, собственно, вы сейчас видите эту страницу на моем блоге;
- archive.php – данная страница отвечает за отображение категорий и архивов WordPress;
- searchform.php – в этом файле должна находиться код формы поиска по сайту;
- search.php – этот файл WordPress шаблона отвечает за отображение результатов поиска на сайте WordPress;
- 404.php – страница ошибки 404, такая ошибка появится, если посетитель введет неверный URL;
- comments.php – шаблон для отображения комментариев на страницах WordPress;
- footer.php – отвечает за отображение подвала сайта;
- header.php – этот файл WordPress шаблона отвечает за вывод шапки сайта;
- sidebar.php – данный файл выводит боковые колонки, в которых отображается меню и другая вспомогательная информация;
- page.php – файл, который отображает структуру WordPress страницы.
Стоит добавить: хоть эти файлы и называются обязательными, на самом деле они необязательны, например, в структуре шаблона WordPress на моем блоге нет файлов search.php и searchform.php, вместо этого я использую пользовательский поиск Google. Как вы поняли, файлы, образующие структуру WordPress шаблона, можно подключать друг к другу и комбинировать. О способах подключения файлов WordPress мы поговорим чуть позже в другой статье.
Давайте сперва разберемся, какие файлы следует подключать, а какие являются структурообразующими. Структуру WordPress шаблона образуют шесть файлов: index.php, single.php, page.php, archive.php и 404.php. Все остальные файлы подключаются к ним. Кстати, о подключении файлов WordPress шаблона: в php есть функции include и require, для подключения основных файлов шаблона WordPress их использовать не стоит, так как есть специальные функции. Подключаемыми файлами являются все остальные.
Как подключать файлы WordPress шаблона. Создание структуры WordPress темы.
Для начала я предлагаю вам оценить взглядом мой блог, здесь можно выделить три области: шапка сайта, подвал сайта и контент сайта. Соответственно, за вывод содержимого WordPress шаблона отвечают те пять файлов, которые я перечислил выше. К ним стоит цеплять все остальное. Например: мы подключаем к файлу index.php файлы footer.php, header.php и sidebar.php, после чего увидим примерно то, как показано на рисунке:
Структура WordPress шаблона
Точно таким же образом можно подключать указанные файлы к файлам single.php, page.php, archive.php, 404.php, search.php. Если файлы не подключить, то созданный WordPress шаблон будет работать, но отображаться неподключенный блок не будет. Куда же подключать оставшиеся файлы? Тут все просто, исходить нужно из здравого смысла. Логично предположить, что файл header.php должен быть подключен к каждому из файлов с содержимым WordPress сайта, поэтому таблицу стилей CSS следует подключать к файлу header.php, внутри тэга head, тогда оформление сайта будет единым. Файлы serchform.php можно подключить к любому из файлов, но логичнее всего его подключать к файлам sidebar.php или header.php, таким образом, поиск по сайту будет отображаться на каждой странице блога WordPress.
Таким образом, у нас остался не подключенным файл comments.php, его можно подключить абсолютно к любому файлу шаблона WordPress, но, обычно, в блогах этот файл подключают только к файлу single.php, чтобы комментировать можно было только основные записи блога. Итак, я думаю, что у вас уже сложилось полное впечатление о структуре шаблона WordPress и вы готовы начать создавать свою собственную WordPress тему. Но это об этом, конечно, в других постах. Далее нам нужно разобраться с файлами, которые не являются основными для структуры шаблона WordPress, но об этом в другой статье.
Спасибо за статью, все очень доходчиво описали, после прочтения начал осмысливать структуру WordPress темы, правильно подметили, что все очень просто и логично! И вот еще вопрос, вы уже завершили свои видео-уроки о создании HTML шаблона? И вроде обещали рассказать о том, как делать шаблоны для одной из CMS, не определились для какой CMS будете создавать шаблон, я в опросе вашей страницы в ВК голосовал за Joomla, но и о создании шаблонов WordPress будет интересно посмотреть!
Доброго времени суток, Никита!
Да, видео о создании HTML шаблона я завершил, осталось их чуть-чуть подредактировать, написать к ним краткое введение и они будут на YouTube. С CMS для которой буду записывать видео не определился, для этого и запустил опрос в группе, мне, в принципе, без разницы для какой из трех представленных в опросе CMS создавать шаблон, каждая система интересна по-своему, если бы посетители активнее голосовали, то, наверное, уже бы решил как развивать эту тему.
Ты забыл упомянуть, что если в WordPress шаблоне нет файлов single, page и archive, то по-умолчанию для отображения содержимого сайта буде использоваться index.php. Для совсем простеньких тем такое решение очень даже идеально.
Я еще слышал, что у шаблонов WordPress есть подтемы, то есть шаблон WordPress делается на основе базовой темы, знаешь как это делается? Очень бы хотелось на основе своей темы создавать шаблоны, они все равно друг от друга сильно не отличаются.
Den4ik, да, у шаблонов WordPress есть подтемы, как и у шаблонов Drupal, напишу про создание подтем WordPress и их структуру я в любом случае, если хочешь видео о создании WordPress шаблонов, то голосуй в опросе ВК, там разберешься, ссылка на группу, в которой опрос сверху.
С назначением файлов WordPress шаблона я разобрался, принцип включения файлов в шаблон я понял, а чем наполнять эти файлы и какие куски кода вставляются, чтобы файлы образовали единый шаблон?
Макей, я обязательно напишу несколько статей, которые сложатся в целый мануал по созданию WordPress шаблона. Все статьи будут короткими, максимально информативными и понятными. На все нужно время, в других статьях будем дальше разбираться со структурой WordPress шаблона и структурировать знания и информацию.
Привет, Кирилл! Продолжение по созданию WordPress шаблона скоро будет? Смотрел твои видео по созданию HTML шаблонов, очень понравилось, хочется продолжение.
Вовка, текстовая версия по созданию WordPress шаблона точно будет, как скоро — не знаю, пишу о чем хочется рассказать в данный момент, конечно, стараюсь это как-то систематизировать. Насчет видео по созданию тем WordPress я точно тебе не скажу, будет время и желание — запишу.
Очень все доходчиво объяснили, даже я понял. Не подскажите, какие файлы еще входят в структуру WordPress шаблона, мне видется, что это далеко не все, потому что сайты на WordPress бывают очень навороченными
Про файлы WordPress и структуру шаблона будет дополнительная публикация, можете почитать Кодекс WordPress, там все описано подробно и структурированно, жаль только, большая часть информации на английском языке.
Кто-нибудь подскажите мне как сделать вывод html в php коде wordpress
— не помогает или помогает, но нужный html файл вордпресс не видит...