Я хотел бы создать ссылку или может быть простой ссылкой на продукт с некоторыми аргументами для изменения статуса продукта. Поэтому, когда я даю эту ссылку кому-либо, он открывает ссылку, а затем статус продукта меняется с частного на опубликованный и остается опубликованным все время, пока я не перехожу со стороны администратора.
Я пытался использовать этокод.
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' ) );
}
}
}
Это не работает с частными продуктами. Я думаю, что WordPress не загружает хук woocommerce, когда продукт является частным и показывает страницу с ошибкой 404.