вот код нового статуса ,но нужно в категории главная ,для всех опубликованных товаров поменять статус на одобренный ,и если в дальнейшем его публикуют менять на одобренный
function my_custom_status_creation(){
register_post_status( 'approved', array(
'label' => _x( 'Одобренный', 'post' ),
'label_count' => _n_noop( 'Одобренный <span class="count">(%s)</span>', 'Одобренный <span class="count">(%s)</span>'),
'public' => true,
'exclude_from_search' => true,
'show_in_admin_all_list' => true,
'show_in_admin_status_list' => true
));
}
add_action( 'init', 'my_custom_status_creation' );
function my_custom_status_add_in_quick_edit() {
echo "<script>
jQuery(document).ready( function() {
jQuery( 'select[name=\"_status\"]' ).append( '<option value=\"approved\">Одобренный</option>' );
});
</script>";
}
add_action('admin_footer-edit.php','my_custom_status_add_in_quick_edit');
function my_custom_status_add_in_post_page() {
echo "<script>
jQuery(document).ready( function() {
jQuery( 'select[name=\"post_status\"]' ).append( '<option value=\"approved\">Одобренный</option>' );
});
</script>";
}
add_action('admin_footer-post.php', 'my_custom_status_add_in_post_page');
add_action('admin_footer-post-new.php', 'my_custom_status_add_in_post_page');
вот так не получилось
add_action( 'woocommerce_product_object_updated_props', 'change_status_on_product_object_updated_prices', 10, 2 );
function change_status_on_product_object_updated_prices( $product, $updated_props ) {
$changed_props = $product->get_changes();
if ( $product->get_status() == 'publish' && is_product_category('glavnaja') )
{
wp_update_post( array( 'ID' => $product->get_id(), 'post_status' => 'approved' ) );
}
}