无法添加子类别Woocommerce

时间:2014-10-01 09:07:22

标签: woocommerce

当我尝试添加子类别时,它们会在页面刷新后消失。我可以向他们添加产品,但它们不会出现在前端和后端。

有什么想法吗?

我已经"已清除瞬变"和"叙述条款"在Woocommerce设置中。两者都没有运气。

1 个答案:

答案 0 :(得分:0)

您必须将此代码添加到Wordpress主题的文件functions.php中:

//Добавляем Подкатегории В Постоянные Ссылки В Woocommerce
remove_filter( 'post_type_link', 'woocommerce_product_cat_filter_post_link', 10, 2 ); // для версии woocommerce ниже 2.0 
remove_filter( 'post_type_link', 'wc_product_post_type_link', 10, 2 ); // для версии woocommerce >= 2
add_filter( 'post_type_link', 'woocommerce_subcategory_permalink', 10, 2 );
function woocommerce_subcategory_permalink( $permalink, $post ) {

    // Прекращаем работу, если запись не является товаром
    if ( $post->post_type !== 'product' )
        return $permalink;

    // Прекращаем работу, если тег перезаписи местоположения не находится в генерируемой ссылке
    if ( false === strpos( $permalink, '%product_cat%' ) )
        return $permalink;

    // Получаем пользовательскую таксономию, используемую этой записью
    $terms = get_the_terms( $post->ID, 'product_cat' );

    if ( empty( $terms ) ) {
        $permalink = str_replace( '%product_cat%', _x('product', 'slug', 'woocommerce'), $permalink );
    } else {
        $first_term = array_shift( $terms );

        // Получаем иерархическую product_category
        $parents = woo_get_term_parents( $first_term->term_id, 'product_cat' );

        $permalink = str_replace( '%product_cat%/', $parents, $permalink );
    }

    return $permalink;
}

if ( ! function_exists( 'woo_get_term_parents' ) ) {
    function woo_get_term_parents( $id, $taxonomy ) {
        $chain = '';
        $parent = &get_term( $id, $taxonomy );
        if ( is_wp_error( $parent ) )
            return $parent;

        $name = $parent->slug;

        if ( $parent->parent && ( $parent->parent != $parent->term_id )  ) {
            $chain .= woo_get_term_parents( $parent->parent, $taxonomy);
        }

        $chain .= $name."/";
        return $chain;
    } // End woo_get_term_parents()
}
相关问题