使用直接链接将woocommerce产品状态从私有更改为发布

时间:2019-11-09 11:42:46

标签: wordpress woocommerce

我想生成一个链接,或者可能是一个带有某些arg的简单产品链接,以更改产品的状态。因此,当我将该链接提供给任何人时,他都会打开该链接,然后产品的状态将从私有更改为发布,并一直保持发布状态,直到我从管理员那边回来为止。

我尝试使用此代码。

add_action( 'woocommerce_before_single_product', 'cs_change_product_status', 10 );

function cs_change_product_status(){
        global $product;
        $status = $product->get_status();
        if($status == 'private'){
            $terms = get_the_terms ( $product->get_id(), 'product_cat' );
            $cat_id = 0;
            foreach ( $terms as $term ) {
                $cat_id = $term->id;
                break;
            }
            if($cat_id === 75){
                wp_update_post( array( 'ID' => $product->get_id(), 'post_status' => 'publish' ) );
            }
        }
    }

这不适用于私有产品。我认为当产品为私有产品并显示404错误页面时,wordpress不会加载任何woocommerce钩子。

0 个答案:

没有答案