Я использую тему Unite с Woocommerce и вам нужно заменить функцию wc_get_product_cat_class. После того, как всю ночь, пытаясь понять это, я обнаружил, что следующий хранятся в /wp-content/plugins/woocommerce/includes/wc-template-functions.phpЗаменить функцию Wordpress (WooCommerce)
// Display the classes for the product cat div.
function wc_product_cat_class($class = '', $category = null){
// Separates classes with a single space, collates classes for post DIV
echo 'class="' . esc_attr(join(' ', wc_get_product_cat_class($class, $category))) . '"';
}
// Get the classes for the product cat div.
function wc_get_product_cat_class($class = '', $category = null){
global $woocommerce_loop;
$classes = is_array($class) ? $class : array_map('trim', explode(' ', $class));
$classes[] = 'product';
if (0 === ($woocommerce_loop['loop'] - 1) % $woocommerce_loop['columns'] || 1 === $woocommerce_loop['columns']) {
$classes[] = 'first';
}
if (0 === $woocommerce_loop['loop'] % $woocommerce_loop['columns']) {
$classes[] = 'last';
}
$classes = apply_filters('product_cat_class', $classes, $class, $category);
return array_unique(array_filter($classes));
}
Я уже создал функцию .php в моей дочерней теме. Как удалить и заменить функцию wc_get_product_cat_class?
Как я понимаю, файл functions.php в дочерней теме загружается первым, но в случае отсутствия строки if (!) В wc-template-functions.php, я не могу просто добавить и изменить выше к моему собственному файлу функций.
Зачем вам нужно его заменять, если вы можете фильтровать 'product_cat_class'? И какие изменения нужно сделать? – helgatheviking
Мне нужно заменить и добавить к сгенерированным классам. – Stuart
Можете ли вы перефразировать свой вопрос, чтобы объяснить, какие классы вам нужно изменить? Это * точно * точка фильтра, поэтому замена функции кажется излишней. – helgatheviking