在子主题中输入wc-template-functions.php

时间:2017-10-23 09:19:22

标签: php wordpress function filter woocommerce

我正在尝试更改wc-template-functions.php文件中的内容。我制作了一份副本并将其放入我的child-theme / woocommerce / includes文件夹中。但这似乎是错误的方式。

我尝试的第二种方法是通过functions.php文件。但这也不行。我的代码中有什么问题吗?

add_filter('woocommerce_template_loop_category_title',  'artwood_home_category_title');
function artwood_home_category_title( $category ) {
if ( ! function_exists( 'woocommerce_template_loop_category_title' ) ) {
?>
            <div class="woocommerce-loop-category-text">               
    <h2 class="woocommerce-loop-category__title">

                    <?php
            echo $category->name;

            if ( $category->count > 0 ) {
                echo apply_filters( 'woocommerce_subcategory_count_html', ' <mark class="count">(' . $category->count . ')</mark>', $category );
            }
        ?>
    </h2>
            </div>
    <?php
}
}

我只想添加课程

<div class="woocommerce-loop-category-text"> 

之前<h2 class="woocommerce-loop-category__title">

我的过滤器在某些部分是否有问题?

1 个答案:

答案 0 :(得分:1)

首先,您需要使用woocommerce_shop_loop_subcategory_title删除默认的Woo-commerce挂钩remove_action()

删除默认的Woo-Commerce挂钩后,使用woocommerce_shop_loop_subcategory_title

在您的自定义函数中添加新的操作挂钩add_action()

下面的代码转到主题的function.php文件

remove_action( 'woocommerce_shop_loop_subcategory_title', 'woocommerce_template_loop_category_title', 10 );
add_action( 'woocommerce_shop_loop_subcategory_title', 'custom_woocommerce_template_loop_category_title', 10 );
function custom_woocommerce_template_loop_category_title( $category ) {
    ?>
    <div class="woocommerce-loop-category-text">
        <h2 class="woocommerce-loop-category__title">
            <?php
                echo $category->name;

                if ( $category->count > 0 ) {
                    echo apply_filters( 'woocommerce_subcategory_count_html', ' <mark class="count">(' . $category->count . ')</mark>', $category );
                }
            ?>
        </h2>
    </div>
    <?php
}