Я создаю дочернюю тему WordPress и вам нужно перезаписать определенные шаблоны виджета. Я пытаюсь использовать этот метод для переопределения вызова родительской темы: правильный способ переопределения функций темы .
Однако в настоящее время я получаю эту ошибку:
Неустранимая ошибка: не удается обновить hickory_homepage_load_widget () (ранее объявленный в C: \ wamp \ www \ greenpeaceNewBlog \ wp-content \ themes \ gp-blog \ inc \ widgets \ homepage_widget.php: 8) в C: \ wamp \ www \ greenpeaceNewBlog \ wp-content \ themes \ hickory \ inc \ widgets \ homepage_widget.php в строке 10
Родительская тема functions.php вызывает шаблоны следующим образом:
include("inc/widgets/homepage_widget.php");
Файл homepage_widget.php содержит следующее:
add_action( 'widgets_init', 'hickory_homepage_load_widget' ); function hickory_homepage_load_widget() { register_widget( 'hickory_homepage_widget' ); }
У меня есть дочерняя тема, дублирующая каталог виджета (stylesheet_directory / inc / widgets / ..) и дочерняя тема functions.php. В моем child functions.php я написал следующее:
// Remove the default Thematic blogtitle function function remove_hickory_widgets() { remove_action('widgets_init', 'hickory_homepage_load_widget'); } // Call 'remove_thematic_actions' (above) during WP initialization add_action('init','remove_hickory_widgets'); include("inc/widgets/homepage_widget.php");
Пожалуйста помоги 🙂
ура
Попробуй это
add_action( 'init', 'remove_hickory_widgets' ); function remove_hickory_widgets() { remove_action('widgets_init', 'hickory_homepage_load_widget' ); add_action( 'init', 'custom_widgets' ); } function custom_widgets(){ // your widget code here }