Intereting Posts
Какой инструмент доступен в API WordPress для отладки плагина? Могу ли я использовать загрузчик файлов wp для своего собственного плагина? Установите минимальное количество символов в поиске Загрузите iframe при входе пользователя .htaccess – перенаправление дублированного сообщения заканчивается на '-number /' на тот же URL-адрес без номера -number / Wooslider custom css Улучшите производительность WordPress на большом количестве сообщений Как создать логин только для подписчиков Перенос локальной установки на сервер – настройки, не работающие на сервере? Я не могу настроить пользовательские виджеты после перемещения веб-сайта WordPress Вызов функции через ajax – не может понять это? Изменить ссылки на edit.php WordPress популярные сообщения по недельному коду Замените Gravatar URL-адресом img для аватаров Пользовательский тип сообщения, отсортированный по заголовку

Решение, касающееся функций темы для детей / родителей

На этой неделе я пытался немного настроить существующую тему для клиента. Чтобы предотвратить перезапись темы, я создал дочернюю тему. Это позволило мне cusomize большинство файлов, которые обрабатывали шаблоны. Функция, которая загружала дополнительные таблицы стилей и библиотеки js, была подключаемой и могла быть перезаписана.

Самая большая проблема, с которой я столкнулся, заключалась в том, чтобы перезаписать некоторые основные функции темы. Они не были подключаемыми (не использовали оператор if (! Function_exsisits ()) и не использовали крючок или фильтр. Вызов одной и той же основной функции из дочерней темы functions.php или пользовательского плагина вызвал фатальную ошибку (функция не может быть переоформлена).

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

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