Добавить в WP функцию в дочерней теме?

У меня есть тема WordPress, в которой есть несколько функций, которые мне нужно изменить (через дочернюю тему). Я бы предпочел не полностью заменить функцию, если она будет обновлена ​​в будущем. Можно ли добавить код в функцию?

Спасибо!

0

Решение

Нет, добавить код в функцию невозможно.

Прежде всего, я рекомендую вам взглянуть на Детские темы документация .

Поведение дочерней темы во многом будет зависеть от того, где вы редактируете свои функции. Если вы используете functions.php, Wordpres заявляет, что:

В отличие от style.css, functions.php дочерней темы не переопределяет
его аналог от родителя. Вместо этого он загружается в дополнение к
функции родителя. (В частности, он загружается прямо перед
родительский файл.)

Итак, что вы можете сделать, это переопределить родительскую функцию, как указано Вот:

  1. Скопируйте (полностью) функцию, которую вы хотите переопределить из родительской темы.

  2. Вставьте его в functions.php в корне папки вашей дочерней темы. Если functions.php не существует, создайте его.

  3. Переименуйте функцию из parent_theme_function в child_theme_function.

  4. Деактивировать родительскую функцию.

  5. Активируйте дочернюю функцию.

Ваш код должен выглядеть примерно так:

// Removes thematic_blogtitle from the thematic_header phase
function remove_thematic_actions() {
remove_action('thematic_header','thematic_blogtitle',3);
}
// Call 'remove_thematic_actions' during WP initialization
add_action('init','remove_thematic_actions');

// Add our custom function to the 'thematic_header' phase
add_action('thematic_header','fancy_theme_blogtitle', 3);

В этом примере функция thematic_blogtitle удаляется из функций и заменяется на fancy_theme_blogtitle.

0

Другие решения

Других решений пока нет …