NetPeak Biz Tech    


Создание простой темы для WordPress

Создание простой темы для WordPress

< >

Публикуем перевод статьи Nick La — это пособие по работе с темами WordPress. Пост был опубликован в 2011 году, но принципы и подходы, описанные в материале, до сих пор актуальны. Если у вас будут замечания и комментарии, пишите их под постом: дополним, расширим статью. Далее материал будет идти от первого лица.

Эта статья поведает вам о том, как создать самую простую тему для WordPress. Хотя Codex и предоставляет обширную документацию по этому вопросу, но мне она кажется несколько сложной для новичка. Поэтому в данном «туториале» я расскажу принципы работы тем для WordPress и покажу как адаптировать под них сырой HTML-шаблон. При этом от вас не требуется знание PHP, но хорошо если вы владеете Photoshop и CSS для создания дизайна.

1. Frontend блога

До того как мы начнём, давайте взглянем на стандартную тему WordPress и разберёмся из чего она состоит. Отметим элементы: шапка, заголовок поста, форма поиска, навигация, подвал.

Стандартный Frontpage (index.php)

Стандартный Single (single.php)

Истории бизнеса и полезные фишки

2. Photoshop-макеты

Основываясь на внешнем виде стандартной темы, разработайте Photoshop-макеты для вашего блога. Для примера я использую GlossyBlue — одну из моих бесплатных тем.

3. HTML и CSS

Когда PSD-дизайн готов, создайте HTML+CSS шаблон каждой страницы.

Зачем сперва создавать статический HTML? Главным образом это нужно потому, что это значительно упростит процесс разработки. Обычно я создаю HTML файл для каждого шаблона, проверяю их валидность (HTML и CSS разметку) во всех браузерах. После этого остаётся лишь вырезать и вставить код WordPress. Так что можно уже не беспокоиться об ошибках в HTML или CSS.

4. Как работает тема WordPress

Если вы перейдёте к папке стандартной темы (wp-content/themes/default), то увидите много php-файлов (называемых файлами шаблонов) и один файл style.css. Для формирования страницы WordPress обычно использует несколько файлов шаблонов (index.php , header.php, sidebar.php, и footer.php).

Подробнее в Codex: «Архитектура сайта» и «Иерархия шаблонов» .

5. Дублирование файлов шаблонов

Скопируйте папку HTML из GlossyBlue в папку wp-content/themes. После этого перейдите в директорию темы default, скопируйте comments.php и searchform.php в папку glossyblue.

6. Style.css

Перейдите в папку темы default, откройте файл style.css. Скопируйте закомментированный в начале файла текст и вставьте в style.css темы GlossyBlue. Если хотите, можете изменить название и данные об авторе.

7. Разделение файлов

Теперь нам нужно понять где разделить HTML-файлы на части: header.php, sidebar.php, и footer.php. На скриншоте ниже видно упрощённую версию моего index-файла, а также принцип его деления.

8. Header.php

Откройте index.html. Вам нужно вырезать участок от верха до места, где заканчивается , вставить его в новый php-файл и сохранить как header.php. Перейдите в папку темы default, откройте новый header.php. Скопируйте и замените теги, где этого требует php-код: title, link, таблицы стилей, h1 и div class=description.

Меню навигации (wp_list_pages) Замените тэги li в ul id=nav на ;

Ссылка: wp_list_pages

9. Sidebar.php

Вернитесь к index.html, вырежьте код с того места, где начинается form id=searchform и до закрытия тега div id=sidebar, поместите его в новый php-файл и сохраните как sidebar.php.

  • Замените form id=searchform со всем содержимым на .
  • Замените теги li категорий на
  • Замените теги li архивов на

Ссылка: wp_list_categories и wp_get_archives

10. Footer.php

Вернитесь к index.html. Извлеките оттуда код от div id=footer включительно с тегом div id=footer и до конца /html затем поместите в новый footer.php.

Недавние записи Тут я использовал query_post для отображения 5 последних записей в блоге.

«Последние комментарии» «Последние комментарии» сгенерированы плагином (включён в папку темы).

11. Index.php

Теперь в вашем index.html должен остаться только div id=content. Сохраните файл как index.php. Впишите строки: get_header, get_sidebar, и get_footer в том порядке, как они встречаются в шаблоне.

12. Разбор цикла

Цикл последовательно отображает записи блога в зависимости от ваших настроек. Скриншот ниже иллюстрирует его работу. Изначально цикл проверяет наличие записей и если таковых не находит, то выдает сообщение «Not Found».

13. Копирование цикла

Перейдите к директории темы default, откройте index.php. Скопируйте цикл из стандартного index.php в свой — между div id=content../div. После этого замените статический текст тегами шаблона WordPress: post date, title, category, comments, next и previous link.

14. Предпросмотр темы

Поздравляю! Вы создали публичную часть (основную часть шаблона). Теперь зайдите в административную панель, перейдите к закладке Design, вы должны увидеть тему GlossyBlue. Активируйте её и перейдите к публичной части, чтобы посмотреть результат в действии.

15. Single.php

Пришло время создать шаблон single.php. Если хотите, можете повторить шаги, перенося код из стандартной темы. Но мне кажется более простым использовать только что созданный index.php, сохранив его как single.php. Откройте single.php из стандартной темы и скопируйте теги шаблона в нужные места. Далее подключите comments_template. На следующем скриншоте отображены внесенные мною изменения:

16. Page.php

Теперь новый single.php сохраните с названием page.php. Уберите дату записи, форму комментариев, ссылки следующий/предыдущий. Вот, собственно, и всё — ваш шаблон page.php готов.

17. Удаление файлов HTML

Удалите все файлы HTML из папки glossyblue (они нам больше не понадобятся). Технически этого достаточно для создания базовой темы WordPress. Вы, наверное, заметили, что в стандартной теме больше PHP-файлов. Что же, на самом деле, они вам не так уж необходимы, если требуется простая тема. Например, если search.php или 404.php не будет в папке темы, WordPress автоматически использует index.php для отображения страницы. Читайте Template Hierarchy для более подробного рассмотрения.

18. Шаблон страницы WordPress

А теперь последний пример — я покажу вам как использовать Page Template для создания страницы Архива, которая будет содержать список всех записей на вашем блоге (удобно для карты сайта). Скопируйте archives.php из папки стандартной темы. Удалите ненужный код и получите что-то вроде этого:

Тут я использовал query_post (showposts=-1 означает «отобразить все записи»), чтобы перечислить все записи.

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

Дополнительная литература

Просмотрите список Плагины WordPress, возможно, они покажутся вам полезными. Для более углублённого изучения читайте WordPress Theme Hacks.



Комментарии:

Лучшие дополнения для Google Docs

Лучшие дополнения для Google Docs Оптимизация и оформление вордовских текстов, переводчик, совместное редактирование, возможность залить картинку... Эти и много других опций дают дополнения для Google Документов....

30 08 2026 13:17:47

Как рассчитать ROMI для большого интернет-магазина — импортируем себестоимость товаров в Google ***ytics

Как рассчитать ROMI для большого интернет-магазина — импортируем себестоимость товаров в Google ***ytics Хотите видеть в отчетах точный ROMI в разрезе рекламных кампаний, групп объявлений и ключевых слов? Импортируйте себестоимость товаров в Google ***ytics...

29 08 2026 3:41:23

Как создать гибкий шаблон для наглядной статистики и автоматизировать отчетность для всех участников проекта

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

28 08 2026 5:43:29

Как работать с автостратегиями Google Ads

Как работать с автостратегиями Google Ads И научиться делать свою рекламу прибыльной. Читайте про типы автостратегий и способы их оптимизации....

27 08 2026 11:17:57

Продвижение недвижимости: как снизить стоимость заявки на 46% — кейс

Продвижение недвижимости: как снизить стоимость заявки на 46% — кейс Работа с умными рекламными кампаниями с оплатой за конверсии в контекстно-медийной сети. Особенности настройки и оптимизации в кейсе продвижения недвижимости. Узнать больше!...

26 08 2026 16:42:23

Как строить диаграммы в отдельных ячейках Excel и таблицах Google

Как строить диаграммы в отдельных ячейках Excel и таблицах Google Что такое спарклайны, об организации прострaнcтва на рабочем листе и оптимизации времени на изучение данных в экселе и таблицах Google...

25 08 2026 23:15:53

3D-печать в Украине — как стать миллионером

3D принтер — заработок миллионеров будущего! Тех, кто сейчас смог купить и начал заниматься ими или использует их в бизнесе, ждет объемный успех через каких-нибудь 3-5 лет....

24 08 2026 9:28:11

Как прогнозировать трафик поисковых кампаний в Google Ads

Прогнозирование с помощью «Планировщика ключевых слов»....

23 08 2026 19:38:28

Динамический ремаркетинг в Facebook — подробный мануал по технической подготовке

Динамический ремаркетинг в Facebook — подробный мануал по технической подготовке Динамический ремаркетинг — один из самых эффективных способов продаж для любой группы товаров. В этой статье мы поделимся тонкостями технической подготовки к запуску динамического ремаркетинга в Facebook....

22 08 2026 2:43:15

Как настроить email-маркетинг с нуля до окупаемости инвестиций за один месяц. Кейс Mechta.kz

Как настроить email-маркетинг с нуля до окупаемости инвестиций за один месяц. Кейс Mechta.kz Рост дохода в шесть раз, ROMI +500% за пять месяцев....

21 08 2026 17:35:46

Как продвигать каршеринг — обзор кейсов

Как продвигать каршеринг — обзор кейсов Особенности продвижения в нише аренды автомобилей по материалам кейсов наших коллег...

20 08 2026 10:33:44

Какие инструменты использовать веб-аналитику, кроме Google ***ytics и Яндекс.Метрики

Какие инструменты использовать веб-аналитику, кроме Google ***ytics и Яндекс.Метрики Как решить все задачи и не изобретать велосипед. Мы оторвались от отчетов в Google ***ytics и Яндекс.Метрике и посмотрели в сторону менее популярных инструментов для веб-аналитики. Узнайте больше!...

19 08 2026 18:23:45

Кейс по email-маркетингу: как мы привлекали авторов в программу для блогеров от GetResponse

Кейс по email-маркетингу: как мы привлекали авторов в программу для блогеров от GetResponse Как достучаться до сердца блогера, или Автору звонят дважды...

18 08 2026 13:52:12

Не меняйте название бренда, даже если выросли из него — копирайтер и писатель Наталья Ковригина о нейминге

Не меняйте название бренда, даже если выросли из него — копирайтер и писатель Наталья Ковригина о нейминге И помните: плохих названий нет, если у вас есть большие деньги....

17 08 2026 6:15:23

Как приводить трафик на молодой сайт: результаты обсуждения темы на Quora

Как приводить трафик на молодой сайт: результаты обсуждения темы на Quora Повышение посещаемости на сайте: контент, seo, ppc и многое другое...

16 08 2026 7:24:11

Гонитесь за гарантией и прозрачностью в SEO-услугах? А их нет!

Гарантии результата в SEO: миф или реальность. Спрос рождает предложение, поэтому не удивительно, что существует большое количество SEO-студий. Сразу возникает резонный вопрос, как могут существовать те компании, которые не дают гарантии вообще?...

15 08 2026 8:21:58

SEO-анализ конкурентов: подробное руководство

SEO-анализ конкурентов: подробное руководство Как узнать особенности бизнеса в нише и что позаимствовать у конкурентов для SEO...

14 08 2026 12:41:42

Как определить главное зеркало сайта

Как определить главное зеркало сайта Определение и настройка главного зеркала сайта в поисковых системах — первое, что нужно сделать перед раскруткой сайта...

13 08 2026 13:11:20

Как объединять данные при создании отчета в Data Studio

Как объединять данные при создании отчета в Data Studio В статье коротко о способах объединения данных из разных источников для создания отчётов...

12 08 2026 12:51:15

Партнерство с Amazon — всё? Что делать после уменьшения партнерских выплат

Партнерство с Amazon — всё? Что делать после уменьшения партнерских выплат Amazon сократил комиссию для сайтов партнеров от 30% до 80% — что делать дальше? Мнение эксперта....

11 08 2026 19:22:59

Атрибуция Facebook: для чего нужна и как настроить

Атрибуция Facebook: для чего нужна и как настроить Как отслеживать конверсии при многокaнaльном взаимодействии покупателя с вашим сайтом? Читайте далее...

10 08 2026 4:10:55

Как подключить API Google Search Console к Google Таблицам

Как подключить API Google Search Console к Google Таблицам Новая инструкция, которую можно применять к любым задачам в Google Таблицах....

09 08 2026 21:22:19

Каково это — работать в Google

Каково это — работать в Google О том, как работают, празднуют, танцуют и в какой корпоративной культуре живут сотрудники корпорации Google. Этот пост развеет кое-какие мифы....

08 08 2026 19:53:55

Анализ ссылочной массы — подробное руководство

Анализ ссылочной массы — подробное руководство Как найти, нарастить и проанализировать ссылочную массу...

07 08 2026 5:16:51

Кейс Yves Rocher: как сформировать спрос на новую косметику с помощью видеорекламы

Кейс Yves Rocher: как сформировать спрос на новую косметику с помощью видеорекламы Какие форматы видеорекламы логичнее купить для создания спроса на новую продукцию? Выясняем на примере кейса бренда Yves Rocher...

06 08 2026 20:10:38

Увольнение сотрудника. Алгоритм действий от Netpeak

Сотрудник не справляется? Значит с ним пора прощаться. Эмоции в сторону, действуем по алгоритму....

04 08 2026 15:41:13

Как показать пользователю статистику Google ***ytics, не открывая доступ? Мануал

Как показать пользователю статистику Google ***ytics, не открывая доступ? Мануал Вам тоже нужно предоставлять отчеты о работе рекламной кампании, посещение сайтов? Держите три примера работы с Google ***ytics и понятных отчета по ним, которые можно продемонстрировать, не открывая доступ к аккаунту....

03 08 2026 8:49:18

«В» — значит… Кейс digital-продвижения интернет-магазина «Таврия В»

«В» — значит… Кейс digital-продвижения интернет-магазина «Таврия В» Работа велась с конца августа прошлого года до конца декабря и включила в себя анализ рынка, конкурентов, целевой аудитории, поиск инсайта, разработку стратегии, подготовку медиаплана, создание промо-сайта и само проведение рекламной кампании, в котором б...

02 08 2026 1:25:21

Интервью с Владимиром Федориным

Интервью с Владимиром Федориным Сооснователь и главред Forbes Ukraine о вовлечении читателей в смысловое поле бизнеса...

01 08 2026 13:59:42

Особенности доменов второго уровня

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

31 07 2026 16:10:33

Как работать с Google Trends — подробное руководство для новичков

Как работать с Google Trends — подробное руководство для новичков Успех рекламы во многом зависит от сезонности, популярности тематики и умения оперативно среагировать на тренд. Для этого и существует сервис Google Trends....

30 07 2026 20:43:32

Кейс Office-Expert.kz: как на треть снизить стоимость транзакций и вырастить CR на 67%

Кейс Office-Expert.kz: как на треть снизить стоимость транзакций и вырастить CR на 67% Как эффективно выйти из карантина с помощью контекстной рекламы...

29 07 2026 5:42:48

Кейс по контекстной рекламе сайта купальников и нижнего белья марки Victoria’s Secret: ROMI 255%

Кейс по контекстной рекламе сайта купальников и нижнего белья марки Victoria’s Secret: ROMI 255% Наибольшее количество онлайн транзакций было получено по брендовым запросам женского белья...

28 07 2026 10:51:31

Реклама в Google Shopping для сайта б/у техники — рост продаж на 280% за 8 месяцев

Реклама в Google Shopping для сайта б/у техники — рост продаж на 280% за 8 месяцев Как продавать новую и б/у технику, ювелирные изделия в интернете. Эксперимент показал, что в Google Shopping можно продавать не только новые товары. Узнать больше!...

27 07 2026 16:17:20

Как составить техзадание по крауд-маркетингу для сайтов услуг

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

26 07 2026 21:35:38

Как загрузить данные из API Google ***ytics в R: часть 2

Пример использования пакета google***yticsR от Марка Эдмондса...

25 07 2026 14:46:17

Цистерны и насосы — задача по теории ограничений систем Голдратта

Цистерны и насосы — задача по теории ограничений систем Голдратта Используйте методы Элияху Голдратта для оптимизации процессов в жизни и на работе...

24 07 2026 10:31:33

Инструкция по работе с ***ytics Intelligence: как найти общий язык с Google ***ytics

Инструкция по работе с ***ytics Intelligence: как найти общий язык с Google ***ytics Не можете найти нужны отчёт в Google ***ytics? Или хотите ускорить поиск нужных данных и отчётов. В помощь ⏩ Обзор к Google ***ytics Intelligence....

23 07 2026 22:21:16

Масштабный редизайн блога UniSender — рост органического трафика

Масштабный редизайн блога UniSender — рост органического трафика Как за полгода обновить корпоративный блог, зачем это может быть нужно. О том, как начинали с сегментации, внедряли SEO-рекомендации, оптимизировали ЧПУ, трaнcлитерацию, пагинацию и структуру блога вплоть до конкретной работы со статьями, рейтингами и их страницами...

22 07 2026 2:36:18

Почему SEO-аудит сайта должен делать специалист

Почему SEO-аудит сайта должен делать специалист Как не облажаться при выборе подрядчика для SEO-аудита....

21 07 2026 11:10:34

Продвижение на prom.ua — настраиваем аналитику, ремаркетинг, Google Merchant Center

Лафхаки для маркетологов и владельцев сайтов на Prom...

20 07 2026 1:50:13

Форматы рекламных объявлений в Facebook и Instagram

Форматы рекламных объявлений в Facebook и Instagram Гайд по рекламе для SMM-, PPC-специалистов, блогеров и владельцев бизнеса...

19 07 2026 0:55:25

На что обратить внимание при выборе движка для сайта

На что обратить внимание при выборе движка для сайта Готовые коробочные решения — отличная идея, которая решает много задач, а ещё это относительно недорого. Но такой вариант подойдет далеко не всем. Узнать больше!...

18 07 2026 9:41:17

13 пpaктически применимых фишек для интернет-магазинов — круглый стол 8P 2017

Как создать популярный и удобный магазин в интернете, какой должна быть его раскрутка и многое другое, прозвучавшее на круглом столе 8P 2017...

17 07 2026 21:10:38

Как настроить расширенную электронную торговлю с помощью Google Tag Manager

Как настроить расширенную электронную торговлю с помощью Google Tag Manager Как GTM помогает настроить расширенную электронную торговлю (enhanced ecommerce)....

16 07 2026 2:29:28

Какую стратегию использовать для продвижения интернет-магазина

Какую стратегию использовать для продвижения интернет-магазина Что нужно делать на старте работ с интернет-магазином и как минимизировать риски для бизнеса онлайн, используя такие инструмента как SEO, PPC и Email-маркетинг — советы от эксперта. Читать дальше!...

15 07 2026 19:32:18

Что дают Google AMP: опыт поисковика недвижимости Flatfy

Что дают Google AMP: опыт поисковика недвижимости Flatfy О том, какие результаты дает эта технология, рассказал Александр Иванов, Head of Product в ЛУН.ua в рамках прошлогодней самой летней конференции 8P. Читайте, как его комaнде удалось разогнать загрузку страниц сервиса Flatfy до 0,2 секунды...

14 07 2026 9:32:54

Кейс по таргетированной рекламе в тематике «нижнее белье» или как увеличить продажи перед праздниками: ROMI 29%

Кейс по таргетированной рекламе в тематике «нижнее белье» или как увеличить продажи перед праздниками: ROMI 29% Для продвижения интернет-магазина женского нижнего белья мы решили попробовать новый источник привлечения клиентов....

13 07 2026 3:55:53

Продвижение с PBN - кейсы и антикейсы. Без успешного успеха

Продвижение с PBN - кейсы и антикейсы. Без успешного успеха Private Blog Network для ниши безопасности, доставки цветов, товаров сантехники, туризма и выпекания. Сетки сайтов работают не всегда и это нормально. Узнать больше!...

12 07 2026 13:29:32

Еще:
понять и запомнить -1 :: понять и запомнить -2 :: понять и запомнить -3 :: понять и запомнить -4 :: понять и запомнить -5 :: понять и запомнить -6 :: понять и запомнить -7 ::