Дочерние темы WordPress. Работа с дочерней темой wordpress
Дочерние темы WordPress | Блог Записки WEB специалиста
👁432 просм.
Часто, когда мы уже более и менее ориентируемся в работе с WordPress, возникает необходимость что то исправить или добавить в теме, которая используется для нашего сайта. И тут мы сталкиваемся с тем, что после очередного обновления используемой темы все наши изменения потеряны. Чтоб таких проблем не возникало существует понятие «Дочерние темы».
Дочерняя тема WordPress — это тема, которая расширяет функционал другой темы, называемой родительской темой, и позволяет вам изменять или дополнять функционал родительской темы.
Из WordPress Codex
Преимущества и отличия дочерних тем
- Дочерняя тема не может существовать без родительской. Она работает только при установленной родительской теме и активируется после ее установки.
- Одна дочерняя тема может быть связана только с одной родительской темой. Для переноса дочерней темы на другую родительскую, нужно проводить изменение настроек в коде дочерней темы.
- Изменения в родительской теме не влияют на дочернюю.
- Дочерняя тема сохраняет все внесенные в нее изменения. Сделав свои настройки можно не бояться, что вы их потеряете после очередного обновления родительской темы.
- Дочерняя тем может оптимизировать рабочий процесс в целом. Используя одну родительскую тему, вы можете стилизовать и настраивать ее под запросы клиентов при помощи создания дочерних тем.
Основные компоненты дочерней темы
Дочерняя тема наследует все функции родительской темы и находится в своей отдельной папке на одном уровне в каталоге с родительской темой. Как правило все темы WordPress находятся в каталоге по пути wp-content/themes.
Дочерняя тема состоит из:
- Директория (обязательно), — это корень папки, в которой находятся файлы дочерней темы.
- Файл style.css (обязательно), — в нем содержатся все свойства стилей дочерней темы и проводится настройка подключения к родительской теме.
- Файл functions.php (опционально), — содержит определения функций, вызываемых в дочерней теме.
- Прочие файлы (опционально), — это могут быть файлы шаблона, используемые для дочерней темы, а так же другие файлы, которые необходимы для добавления новых функций, отличных от функций родительской темы, прочее.
Создание дочерней темы
Разберем создание дочерней темы на примере родительской темы Vantage.
После установки родительской темы переходим к файловой структуре нашего сайта на хостинге в папку с установленными темами по пути wp-content/themes. Находим папку с установленной темой vantage и рядом с ней создаем новую папку для нашей дочерней темы. Я назвал ее «winehome».
Далее переходим в созданный каталог для дочерней темы и создаем в ней файлы functions.php, style.css и screenshot.jpg (это файл размером 1200 х 900 px., который придаст визуальное отличие нашей дочерней теме, при ее выборе в настройках панели управления нашим сайтом.
Чтоб упростить создание новых файлов, я сохранил их заготовки в архив, который вы можете скачать с этого блога.
Теперь открываем файл style.css и подключаем нашу дочернюю тему к родительской. Для этого указываем:
- Имя, которое хотим присвоить дочерней теме.
- Описание, к какой родительской теме она принадлежит.
- Название каталога, в котором находится родительская тема.
- Версия нашей дочерней темы, может быть любое целое число.
- Путь к файлу style.css родительской темы, чтоб дочерняя подхватила все его настройки.
Краткое пояснение каждой строки:
- Theme Name. (обязательно) Название дочерней темы.
- Theme URI. (опционально) Адрес сайта дочерней темы.
- Description. (опционально) Описание дочерней темы. Например: Моя дочерняя тема.
- Author URI. (опционально) Адрес сайта автора дочерней темы.
- Author. (опционально) Имя автора дочерней темы.
- Template. (обязательно) Название папки родительской темы, регистрозависимое.
- Version. (опционально) Версия дочерней темы. Например: 0.1, 1.0.
После выполнения всех условий сохраняем файл и переходим в панели управления сайтом по пути «Внешний вид» → «Темы». Здесь среди установленных ране тем появилась и наша дочерняя тема.
Активируем ее привычным образом, наведя курсор мышки и нажав «Активировать». Далее можно настраивать и работать с ней из панели управления сайтом как и с любой другой темой. И в тоже время вносить свои изменения и дополнения в файлы темы (свои стили и функции), не переживая, что они в дальнейшем пропадут.
Благодарю вас за внимание!Если эта статья была полезна, делитесь ей в социальных сетях, оставляйте комментарии, задавайте вопросы 🙂
web-specialist.info
Как создать дочернюю тему WordPress — Правильный способ
Как исправить JavaScript error "ВКонтакте"? Что делать при ошибках JavaScript в "ВКонтакте"? "ВКонтакте" - это на сегодняшний день самый удобный русскоязычный ресурс, который является не только популярнейшей социальной сетью, но и сервисом для прослушивания аудиозаписей и просмотра видео. Здесь Правильное использование Tor Browserivan-pr.com
Создание дочерней темы wordpress плагин child theme configurator – WP Themes
Сделать копию темы или дочернюю тему; Child Theme Configurator — поможет сделать дочернюю тему; wpDataTables v. 6 — плагин для создания адаптивных . Все Плагины WordPress собраны в разные категории, объединенные общими функциональными свойствами и решениями общих задач.
Создали дочернюю тему и вот хотелось бы перенести параметры родительской в дочернюю – как это сделать. Пробовал плагин: Customizer Export/Import – не помогает, видимо слетают настройки виджетов (в частности слайдера). Child Theme Configurator уже пробовали.
Микроразметку вообще не делаю, так как замучился. Уже подумываю больше не обновлять тему, так как даже дочерняя темя меня не выручает. С моей темой уже так было не раз. Если собираетесь обновлять тему, то тщательно документируйте все изменения, так как при обновлении могут поменяться ключи в родительской теме и всё, — сайт опять не работает. Настройки сайта — это дело постепенное и потихоньку всё настроится. Всё доработки прописаны в функциях темы дочерней, а в родительской теме бац и поменяли чего нибудь и всё.
Предполагаю, надо где-то прописать template_include для страниц wppage. Обновила и движок, и тему — работает все, кроме плагина wppage. Но моих познаний явно не хватает. Сделала все, как написано. Теперь страницы, сделанные с его помощью отображаются как обычные страницы с сайдбаром установленной темы. Спасибо за подробную и понятную информацию по дочерним темам.
Если речь идет об измененных настройках и параметрах темы, сделанных в админке WordPress, то все эти изменения сохранятся при обновлении родительской темы. При обновлении эти файлы будут перезаписаны новыми файлами из новой версии. Все зависит от того, какие именно изменения вы вносили. Php, то все эти изменения утратятся, т. Если же вы изменяли файлы темы, дописывали свой код например в functions.
You will also want to make sure that there . It is recommended (though not required, especially if you're creating a theme for public use) that the name of your child theme directory is appended with '-child'. The first step in creating a child theme is to create the child theme directory, which will be placed in wp-content/themes.
Пробовал по отдельности, но не помогало. Не, постоянно редактировать файлы это не вариант. Пришлось полностью весь код перенести в function. Надеюсь, будет нормально и дальше. Если сайтов много, то будет трудно. Теперь при обновлении нормально работает. Правда, пришлось полностью все функции (а не одну конкретную) копировать в function. Я пока просто те функции, что были в тех файлах добавил в файл function.
Файл тут же с хостинга удалила, сайт заработал, но стили слетели(((. Там константы какие-то прописаны: «Define Directory Location Constants» Может, в них дело. Серверная ошибка возникает именно при копировании файла functions. Подключила дочернюю тему с единственным файлом css и стала через ftp копировать в папку с дочерней темой по одному файлы темы и проверять работоспособность сайта. Максим, последовала вашему совету. Php (первого, который вместе со всеми файлами, не в дополнительной папке, тот еще не проверяла).
Php, или, если вы создали в теме специальный файл для вывода товаров – single-cpasoft_goods. Php, архива категории постов archive. Напомню, что циклы wordpress используются при выводе отдельного поста single.
Сегодня все темы адаптивные и особой надобности в обновлении незначительных доработок автором, которые на работоспособность не влияют нет. В плане удобства, очень классный вариант. Но, дочернюю тему я сделал изначально и все доработки делал через неё, — это удобно и резерв (родительская тема) всегда в неизменном виде. Мало того, что я купил шаблон, так ещё и должен был платить за обновление. Проанализировав, что было сделано (обновлено) в теме за последний год, — ценного и полезного, особенно для рунета ничего. Особого смысла обновлять тему нет, тем более если её правильно выбрать. Даже если чего с дочерней темой, всегда есть запасной вариант. Я вот тоже отказался от обновлений своего шаблона, так как автор сделал их платными.
WP Add Custom CSS – плагин, который позволяет вам менять внешний вид всего сайта или только некоторых отдельных записей. Child Theme Configurator – решение, которое позволяет вам изменить разметку вашего сайта при помощи дочерней темы.
Если же вы настроили более 20, то наверняка знаете о дочерних темах. Работа с дочерней темой — это отличный способ изменить родительскую тему WordPress. Не опускайте руку, если вы настраивали более 10. За эти годы WordPress темы стали очень разнообразными, но всё равно требуют настройки. Поднимите руку те, кто настраивал более 5 WordPress сайтов.
10litrov.com
Дочерние темы в WordPress | Sooource.NET
Для CMS WordPress также, как и для Drupal можно создавать т.н. "дочерние" темы оформления. Эта особенность платформы позволяет веб-разработчикам свободно модифицировать любую готовую тему, фактически не трогая код оригинального дизайна. Таким образом можно спокойно убрать ненужный вам функционал или наоборот нарастить имеющиеся возможности родительской верстки.
Разработка дочерней темы WordPress: минимальные требования
Для того, чтобы получить простейшее дочернее ответвление достаточно лишь выполнить следующие условия:
- Создать новую папку в стандартной директории /wp-content/themes.
- Создать файл style.css.
Содержимое "style.css" должно быть, как минимум, вот таким:
/* Theme Name: My Custom Template Theme URI: http://www.sooource.net/dochernie-temy-v-wordpress Description: Живой пример к статье сайта Sooource.NET. Author: Noname Author URI: http://www.sooource.net Template: twentyeleven Version: 0.0.1 */ @import url("../twentyeleven/style.css");Все эти Theme Name, Theme URI, Description и иные должны быть понятны любому, кто хотя бы раз создавал что-то своё в плане дизайна для движка. Потому поясню лишь назначение новой приписки Template.
Template - это имя папки родительской темы. Оно чувствительно к регистру, т.е. к примеру, как "Апач" и "апач" - не равны между собой.
Из прочих особенностей отмечу, что дочерний файл стилей полностью перекрывает родительский. Потому, если вы не собираетесь (99% случаев) писать все стили с нуля, то настоятельно советую использовать директиву @import, как в отрывке выше, перед которой не должно ничего другого располагаться кроме, как закрывающеё "скобки" комментария - */.
Разработка дочерней темы WordPress: более глубокая перестройка родителя
Для того, чтобы изменить серверный функционал родительской темы, а именно PHP-файлы шаблона необходимо создать новый файл с тем же именем. Например, затронем случай, когда пользователю потребуется поправить шаблон страницы-архива. Решение: просто делаете новый archive.php. При этом он полностью заменит собой исходный archive.php.
Что касается новых шаблонов, то тут всё без типично: создаёте новые обычным способом.
Дополнительного отдельного абзаца сей статьи заслуживает functions.php. Последний в отличие от всех вышеперечисленных не заменяет исходник подчистую. Он просто загружается первее. Т.е. чтобы переопределить конкретную функцию из родителя веб-разработчику достаточно проверить, что она вызывается подобным способом с function_exists():
<?php if ( ! function_exists( 'twentyeleven_setup' ) ): function twentyeleven_setup() { /* Тело функции... */ } endif; ?>Далее нужно лишь объявить в дочернем functions новую функцию с тем же именем:
<?php function twentyeleven_setup() { /* ... */ } ?>Касаемо новых функций никаких примечаний нет. Объявляете, как ни в чем ни бывало по-обычному.
Итог статьи
В изложенном выше материале была кратко показана логика сборки дочерних тем в системе WordPress. Данный способ является оптимальным, наиболее грамотным вариантом для внесения изменений в готовую разработку сторонним программистом.
www.sooource.net