Я пытался удалить ссылку на страницу отдельного продукта плагина Woocommerce.На этом форуме многие люди задают вопросы по этому поводу и прочитали большинство из них.Но почти все эти вопросы старые.Однако, насколько я понимаю сейчас, я должен использовать functions.php и content-page.php для достижения этой цели.
Итак, прочитав всю информацию в i-net, я нашел этот код в functions.php (который находится в папке моей дочерней темы)
if ( !function_exists('add_remove_hooks')):
function add_remove_hooks() {
remove_action( 'woocommerce_before_shop_loop_item', 'woocommerce_template_loop_product_link_open', 10 );
remove_action( 'woocommerce_after_shop_loop_item', 'woocommerce_template_loop_product_link_close', 5 );
}
endif;
add_action( 'init', 'add_remove_hooks' );
Я перепробовал всеТакие варианты, как только вставка в строки remove_action, не заключенные в функцию или использование другого действия в функции add_action, но ни один из них, похоже, не работает.Синтаксис, однако, таков, как и должно быть.
(часть) content-page.php выглядит как
<li <?php post_class( $classes ); ?>>
<?php do_action( 'woocommerce_before_shop_loop_item' ); ?>
<?php
/**
* woocommerce_before_shop_loop_item_title hook
*
* @hooked woocommerce_show_product_loop_sale_flash - 10
* @hooked woocommerce_template_loop_product_thumbnail - 10
*/
do_action( 'woocommerce_before_shop_loop_item_title' ); ?>
<?php if($product_style == 'classic') {
do_action( 'woocommerce_shop_loop_item_title' );
do_action( 'woocommerce_after_shop_loop_item_title' );
} ?>
<?php do_action( 'woocommerce_after_shop_loop_item' ); ?>
</li>
Я не знаю, как отлаживать в PHP, ноЯ знаю, что файлы «используются» WP, потому что, если я что-то изменяю в одном из этих файлов, я вижу это на экране.Тем не менее, ссылки все еще на месте.Операция remove_action не работает.
Есть ли у кого-нибудь еще предложения о том, как этого добиться?Что искать?
Использовали WP 5.2 и Woocommerce 3.0
ОБНОВЛЕНИЕ:
Благодаря Альфаразу я смог решить проблему.Помещение remove_actions в functions.php дочерней темы теперь также работает.Я не осознавал, что мне также нужно было установить активную тему в WP на мою дочернюю тему.Это сделало трюк в конце.