2017-01-30 13 views
0

Я пытаюсь заменить имя крючка, чтобы моя пачка была удалена из одного места и добавлена ​​в другое место на странице. Я использую дочернюю тему, и я хотел бы выполнить это в функции functions.php моей дочерней темы. Случается, что функция удаляется из одного места и добавляется в новое место, но она срабатывает дважды, поэтому у меня есть две панировочные сундуки друг на друга.Измените ссылку на Wordpress в Functions.php

Родительская функция тема выглядит следующим образом:

/*-----------------------------------------------------------------------------------*/ 
 
/* Breadcrumb display */ 
 
/*-----------------------------------------------------------------------------------*/ 
 

 
add_action('woo_main_before','woo_display_breadcrumbs',10); 
 
if (!function_exists('woo_display_breadcrumbs')) { 
 
\t function woo_display_breadcrumbs() { 
 
\t \t global $woo_options; 
 
\t \t if (isset($woo_options['woo_breadcrumbs_show']) && $woo_options['woo_breadcrumbs_show'] == 'true' && ! (is_home())) { 
 
\t \t echo '<section id="breadcrumbs">'; 
 
\t \t \t woo_breadcrumbs(); 
 
\t \t echo '</section><!--/#breadcrumbs -->'; 
 
\t \t } 
 
\t } // End woo_display_breadcrumbs() 
 
} // End IF Statement

И это то, что у меня в файле functions.php ребенка темы.

add_action('woo_main_before', 'remove_woo_display_breadcrumbs', 0); 
 

 
function remove_woo_display_breadcrumbs() { 
 

 
    remove_action('woo_main_before','woo_display_breadcrumbs',10); 
 
\t 
 
} 
 

 

 
add_action('woo_content_before','woo_display_breadcrumbs',10);

Кстати, это тема Mystile Ву Темы. Я действительно новичок в Hooks, поэтому, если у вас есть ответ, короткое объяснение, почему было бы очень полезно.

ответ

0

ОК, так что первое, чтобы решить эту проблему вам нужно сделать следующее:

remove_action('woo_main_before', 'woo_display_breadcrumbs', 10); // Removes from the original location 
add_action('woo_content_before', 'woo_display_breadcrumbs', 10); // Adds to the new location 

«10» является приоритетом, что функция работает для конкретного действия. Подумайте об этом, как слот.

Таким образом слот 0 является полностью независимым от слота 10.

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

Надеюсь, это поможет.