Темы оформления для WordPress – установка, из каких файлов (шаблонов) состоят и как работают
Сегодня хочу поговорить про темы оформления для WordPress. Зная как принципиально устроена любая тема для WordPress вам будет легче вносить в нее необходимые изменения или дополнения. В принципе, ничего сложного в устройстве темы оформления для WordPress нет, но по началу все равно может возникнуть ряд непонятностей и вопросов, поэтому я постараюсь рассказать все максимально подробно и доступно.
Установка темы оформления для WordPress
Скачать тему для WordPress можно бесплатно, например, или . После того, как вы скачали тему, ее нужно распаковать. Затем вам необходимо будет получить доступ к вашему сайту по протоколу FTP и скопировать, полученную после разархивирования, папку с темой оформления WordPress в папку:
wp-content/themes
Далее вы заходите в админку WordPress и выбираете из левого меню пункт «Дизайн». В открывшемся меню выбирете пункт «Тема».
В области «Текущая тема оформления» будет отображаться используемая в данный момент тема. Наша, вновь добавленная тема, должна появиться в области «Доступные темы оформления». Нажав на кнопку "Предпросмотр" вы сможете увидеть, как будет выглядеть данная тема применительно к содержимому вашего блога. Чтобы применить понравившуюся тему оформления, нужно щелкнуть по кнопке «Активировать» рядом с превьюшкой этой темы. В результате, миниатюра данной темы оформления переместится в область «Текущая тема оформления», а так же произойдет изменение внешнего вида блога, в соответствии с используемой темой оформления WordPress.
Вроде все просто и понятно. Но вряд ли вы найдете такую тему оформления, которая отвечала бы вашим требованиям на сто процентов. Наверняка вам захочется что-нибудь поменять, убрать или добавить. Но как это сделать? Не особо сложно, но для этого необходимо знать и понимать, как устроена тема оформления блога на WordPress, из каких файлов она состоит и за что конкретно каждый из этих файлов темы отвечает.
Как устроена тема оформления блога на WordPress
Тема оформления WordPress всегда включает в себя определенный набор файлов, которые отвечают за оформление отдельных участков любой вебстраницы вашего блога. Получается, что все страницы сайта на WordPress собираются из файлов (шаблонов) используемой вами темы оформления подобно конструктору. Некоторые из этих файлов (шаблонов), например HEADER.PHP и FOOTER.PHP, используются на всех страницах блога на WordPress, другие используются только в определенных случаях. Схематично это можно изобразить примерно так:

Шаблон HEADER.PHP отвечает за отображение шапки всех страниц блога на WordPress, т.е. верхней части вебстраниц. В нем так же формируются мета-теги, которые включаются в HTML код всех страниц блога. В HEADER.PHP формируется заголовок вебстраницы TITLE, задается кодировка русского языка, которая используется в вашем блоге, указывается путь к файлу таблицы стилей, который должен подключаться для задания оформления данной страницы и т.д. Как я уже писал в статье Оптимизируем тему оформления Wordpress для уменьшения количества запросов к базе данных при загрузке страниц блога, вы можете заменить в HEADER.PHP участки кода, с ненужными обращениями к базе данных на статичный код HTML, для того, чтобы снять лишнюю нагрузку на сервер при формировании страниц вашего блога.
Шапка, формируемая в HEADER.PHP остается неизменной для всех вебстраниц блога, но содержимое центральной части страниц блога на WordPress формируется разными шаблонами (файлами), в зависимости от того, какое именно содержимое выводится. Рассмотрим это подробнее:
- за вывод содержимого главной страницы WordPress сайта отвечает шаблон INDEX.PHP из папки с используемой темой оформления WordPress
- за вывод страниц со статьями WordPress отвечает SINGLE.PHP
- при выводе содержимого временного архива статей WordPress (по годам и месяцам), при выводе содержимого архива тегов (меток), а так же при выводе содержимого категорий статей используется обычно один и тот же шаблон ARCHIVE.PHP из папки с используемой темой оформления WordPress
- за вывод результатов поиска WordPress по блогу отвечает SEARCH.PHP
- за вывод статичных страниц WordPress вашего блога (например, «О блоге») отвечает PAGE.PHP
За формирования нижней части всех страниц WordPress (подвала или футера) отвечает шаблон FOOTER.PHP. Обычно в этом шаблоне выводится название сайта со словами, что все права защищены (я делаю эту строчку еще и ссылкой на главную страницу для улучшения внутренней оптимизации блога). Так же в этот файл можно добавить код счетчиков посещаемости, если вы их будете использовать на своем сайте.
За вывод боковой панели WordPress (сайдбара) справа или слева от центральной части страниц отвечает SIDEBAR.PHP. В каждой конкретной теме кроме SIDEBAR.PHP могут использоваться еще несколько шаблонов сайдбаров. В теме, используемой на моем блоге, сначала боковая панель формируется из кода шаблона SIDEBAR.PHP, но потом из него осуществляется обращение к SIDEBAR1.PHP и SIDEBAR2.PHP, которые формируют двухколоночное продолжение боковой панели.
Зная устройство используемой вами темы оформления, вы можете легко понять, в какой именно файл (шаблон) нужно будет внести изменения для получения желаемого эффекта. Все эти файлы, входящие в состав темы оформления WordPress, называются шаблонами. Причем возможны варианты использования разных шаблонов для отображения содержимого вебстраницы.
В какой последовательности используются файлы (шаблоны) темы оформления блога на WordPress
Проще всего рассказать о порядке использования шаблонов для отображения той или иной страницы блога на WordPress на каком-то примере. Допустим, что посетитель вашего блога открывает вебстраницу со списком статей какой-либо категории (рубрики). Какой файл шаблона из папки текущей темы оформления WordPress должен при этом запуститься? На основании того, что было написано выше, вы можете сделать вывод, что для отображения содержимого этой страницы должен использоваться ARCHIVE.PHP. При этом вы будете правы лишь отчасти. Да, действительно, этот шаблон будет использоваться для отображении этой страницы категорий, но только при выполнении ряда условий.
Давайте рассмотрим действия WordPress при переходе посетителя по ссылке, ведущей на страницу со списком статей какой -либо категории (например, WordPress — создание блогов). Сначала WordPress в папке текущей темы оформления:
wp-content/themes/название_вашей_темы
будет искать шаблон (файл), который отвечает за вывод именно этой категории. А т.к. категории (рубрики) WordPress идентифицирует по ID, то и искать в папке с темой он будет шаблон CATEGORY-n.PHP. Здесь N - номер ID данной категории (Как узнать ID рубрики или страницы в WordPress). Но такой шаблон (файл) в папке вашей темы может появится только в том случае, если вы сами специально создали для данной категории отдельный шаблон отображения.
Но если вы это не делали, то WordPress, не найдя шаблон, например, CATEGORY-12.PHP, будет искать в папке с шаблонами текущей темы оформления WordPress общий для всех категорий (вне зависимости от их ID) файл шаблона CATEGORY.PHP. Если и такого файла-шаблона найдено не будет, то WordPress уже будет искать общий шаблон для вывода всех архивов ARCHIVE.PHP. Его он скорее всего найдет в папке с вашей текущей темой оформления, но если случится страшное - даже этого шаблона в папке с темой не будет - WordPress будет вынужден использовать основной шаблон темы оформления INDEX.PHP.
Вот такая вот логика использования файлов шаблонов наблюдается в WordPress. А теперь, вооруженные приведенным выше примером, давайте рассмотрим порядок использования шаблонов для разных страниц блога на WordPress.
Порядок обращения к файлам (шаблонам) темы оформления WordPress, при загрузке различных страниц блога
Рассмотрим все возможные варианты вебстраниц, которые используются в Wordpress:
- начать, конечно же, следует с главной страницы блога на WordPress. Порядок обращения к файлам шаблонов будет следующим. WordPress сначала будет искать в папке с текущей темой оформления:
wp-content/themes/название_вашей_темы
шаблон HOME.PHP, а не найдя его обратится к фалу шаблона WordPress INDEX.PHP. Резюме:
- HOME.PHP
- INDEX.PHP
- при отображении конкретной статьи - сначала ищется шаблон SINGLE.PHP, а при его отсутствии в качестве шаблона отдельной страницы со статьей будет использоваться шаблон INDEX.PHP. Резюме:
- SINGLE.PHP
- INDEX.PHP
- для отображения статичной страницы WordPress можно будет выбрать конкретный шаблон прямо из админки WordPress. Для этого, при создании или редактировании уже существующей статичной страницы, вы должны выбрать из выпадающего списка «Шаблон страницы» нужный вам шаблон (эти файлы шаблонов вы должны будете создать заранее и добавить в папку с вашей темой оформления). Если вы не выберете из этого списка шаблон, то WordPress будет искать в папке с вашей темой оформления PAGE.PHP, а не найдя его будет использовать в качестве шаблона файл INDEX.PHP. Резюме:
- Шаблон, выбранный в админке WordPress, при создании статичной страницы
- PAGE.PHP
- INDEX.PHP
- при отображении страницы категории (рубрики) в WordPress будет вначале осуществляться поиск в папке с текущей темой оформления шаблона именно для категории с таким ID (Как узнать ID рубрики или страницы в WordPress), например, CATEGORY-11.PHP. Если такого шаблона в папке с темой оформления найдено не будет, то как я описывал чуть выше, WordPress станет искать CATEGORY.PHP. В случае его отсутствия - искать ARCHIVE.PHP, ну а если и его не будет, то для оформления страницы категорий будет использоваться файл шаблона WordPress INDEX.PHP. Резюме:
- Шаблон конкретной категории (CATEGORY-6.PHP, например)
- CATEGORY.PHP
- ARCHIVE.PHP
- INDEX.PHP
- для отображения страницы тега (метки) в WordPress может использоваться специальный файл шаблона, который будет содержать в своем названии короткую ссылку (слаг). Например, для метки со слагом joomla, файл шаблона должен будет называться TAG-JOOMLA.PHP. Если WordPress такого шаблона не найдет в папке вашей темы оформления, то он попробует найти общий для всех страниц тегов (меток) шаблон - TAG.PHP. Если и его не будет, то будет искаться ARCHIVE.PHP, а затем - INDEX.PHP. Резюме:
- Шаблон WordPress для вывода постов с определенной меткой
- TAG.PHP
- ARCHIVE.PHP
- INDEX.PHP
- когда будет запрошена страница автора статей, то вначале WordPress ищет в папке с текущей темой оформления файл шаблона AUTHOR.PHP. При неудаче -ARCHIVE.PHP, ну, а если и его не найдет, то будет использован шаблон INDEX.PHP. Резюме:
- AUTHOR.PHP
- ARCHIVE.PHP
- INDEX.PHP
- для отображения страницы временнОго архива WordPress, например, за месяц или год, WordPress сначала проверит папку с текущей темой оформления на наличие в ней DATE.PHP, а уже затем обратится к ARCHIVE.PHP или к INDEX.PHP, в случае отсутствия ARCHIVE.PHP. Резюме:
- DATE.PHP
- ARCHIVE.PHP
- INDEX.PHP
- для оформления страницы результатов поиска в WordPress будет использоваться файл шаблона SEARCH.PHP, в случае его наличия в папке с вашей темой оформления. В противном случае - INDEX.PHP. Резюме:
- SEARCH.PHP
- INDEX.PHP
- для отображения страницы ошибки 404 в WordPress (ничего не найдено) будет использоваться шаблон 404.PHP. О том как его создать вы можете почитать в этой статье - Как создать и зачем нужна страница ошибок 404 для блога на Wordpress. Если в папке с вашей темой оформления такого шаблона не будет, то будет использоваться INDEX.PHP, открывающий главную страницу вашего блога. Резюме:
- 404.PHP
- INDEX.PHP
Вы так же можете ознакомиться с другими материалами связанными с работой и настройкой блога на WordPress, а так же с материалами, посвященными плагинам для блога на WordPress.
На сегодня все. Если вы не хотите пропустить появление новых материалов на этом сайте, то можете подписаться на рассылку новостной ленты через форму, расположенную чуть ниже, или же выбрать удобный для вас способ подписки на странице Подписка. Если у вас остались нерешенные вопросы из области вебмастеринга, то вы можете поискать на них ответы, посетив страницу Вопросы и ответы.
Удачи вам! До скорых встреч на страницах блога KtoNaNovenkogo.ru
Постовой (обмен постовыми): Создание и настройка нового wordpress блога, подробная инструкция по созданию блога















Да… За 2 года работы с WordPress я уже выучил это всё наизусть… Зато как не хватало такого мануальчика тогда, когда я не знал этого всего…
Зачет! Только собрался осваивать WordPress и начал с выбора шаблона для будущего сайта. Автору спасибо
Max: всегда пожалуйста, рад что пригодилось.
Предлагаю благодарить автора частыми кликами по Яндекс.Директ
Max: +1
еще один не плохой ресурс с темамиhttp://webtheme.ru/
автору огромное спасибо!
Извиняюсь за вопрос, такой уж я чайник =) а как узнать ftp блога? хост или порт, или че там еще надо…
darinku: спросите в техподдержке вашего хостинг провайдера. А вообще, вам должны были выслать эти данные по почте при покупке хостинга, ну или еще каким-то способом сообщить.
stimer: пожалуйста, буду рад, если Вы порекомендуете мой сайт http://ktonanovenkogo.ru/ кому-то для изучения основ вебмастеринга. Сайт еще молодой и основной приток посетителей идет с поисковиков, а хотелось бы, чтобы и вирусный маркетинг работал. Спасибо.
Дмитрий огромное вам спасибо за столь доступные уроки,в основном ими руководствовалась при создание блога на Wordpress.Только прызыв о помощи однако имею. Пожалуйста подскажите как например мне прописать и в каких файлах,что бы на главной странице отображались посты,а не рубрики.А то мне для такого отображения пришлось просто страницу делать и ставить ее как главную((Но это не правильно,так как я не так давно занимаюсь подобным(созданием блога и тд)для меня очень мало понятно.Заранее спасибо, Наталья.
Natalya: посмотрите здесь Настройки чтения WordPress, по-моему там есть ответ на ваш вопрос.
Как можно поменять шрифт в шапке, там где название блога?
Андрей: если это не картинка, то попробуйте открыть ваш блог в браузере FireFox с установленным плагином FireBug. C помощью этой связки вы сможете горы свернуть (не преувеличиваю – правда). Если не знакомы с плагином FireBug, то тогда вам нужно будет ознакомится с этими материалами – Firebug — самый необходимый инструмент при работе над дизайном сайта
Статья полезная и информативная! Я хочу немного добавить.
1. Я не стал бы заливать только-что скачанный файл темы на хост
2. Установить и протестировать на локальном хосте (Денвер)
- проверить на скрытые и закодированные ссылки -убрать или закрыть
- протестировать блог локально, изучить тему досконально
- изменить дизайн, лого, фавикон и т.д
- оптимизировать css, php файлы шаблона
3. Только после этого, залить на хост