logo Oblomow.ru

Как создать свой шаблон wordpress?

Если вы создаёте сайт на WordPress, то у вас есть 2 варианта:

  • использовать готовый шаблон и кастомизировать его;
  • создать свой собственный шаблон.

Эта статья посвящена второму варианту.
Если вы уже владелец бизнеса и хотите скорее запустить проект, то вам стоит рассмотреть возможность заказа темы у профильных специалистов. Вы можете как просто обратиться в веб-студию, так и самостоятельно разбить эту задачу на несколько мелких этапов:

  • Составление ТЗ по внешнему виду и будущему функционалу сайта;
  • Поиск дизайнера и заказ макетов по составленному заранее ТЗ;
  • Поиск фрилансера или вебстудии, готовых работать по макетам;

Последний пункт, кстати, тоже можно разделить на верстку и натяжку свёрстанного на макет, но это детали.

Давайте лучше вернёмся к обсуждению создания шаблона WordPress.

Как создать WordPress шаблон с нуля?

Для этого нужно создать папку, где по очереди создавать файлы, которые будут использоваться, но я не буду говорить про шаблон из index.php и style.css.
Нам же нужна полноценная тема. Так вот полноценная тема состоит из:

  • style.css – файл стилей.
  • functions.php – файл для подключения функций.
  • index.php – файл, который иногда используется для генерации страницы.
  • header.php и footer.php – файлы, отвечающие за header и footer соответственно.
  • home.php – используйте, если хотите, чтобы главная страница отличалась от обычных.
  • page.php – файл обычной страницы.
  • single.php – файл обычной записи.
  • category.php – файл, отвечающий за категории.
  • 404.php – файл 404 ошибки.
  • Прочее: sidebar.php, archive.php, date.php, author.php, search.php, comments.php

И, если честно, этим путём я не пошёл, ибо есть альтернатива в виде генератора шаблонов.

Как сгенерировать WordPress шаблон?

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

Пустую тему с заранее созданными и без ошибок написанными файлами мне любезно предоставил сервис underscores.me.

Дальше для превращения заготовки в полноценный продукт потребуется умение верстать, знание PHP, javascript и т.д.

Как сверстать тему на WordPress?

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

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

Использовать ли фреймворки?

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

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

Функционал шаблона и Back-end разработка

Если для верстки простейшего шаблона достаточно знать html и css, то для добавления в тему любого функционала нужно уже либо уметь гуглить/покупать плагины, либо знать php и javascript, чтобы реализовывать всё самому.

За функционал темы, как правило, отвечает файл functions.php, но механика этой CMS предполагает, что весь вносимый туда функционал можно подключить отдельно с помощью плагинов.
Какой бы вариант вы не выбрали, помните, что код должен быть максимально коротким, чистым и валидным, а количество подключаемых плагинов (а вероятно и функций в файле functions.php) не очень хорошо влияет на скорость работы сайта. И если на небольших проектах это ещё может быть не очень заметно и можно использовать самописные решения, то на крупных сайтах некачественно написанные функции могут стать действительно проблемой.