WooCommerce自定义产品状态不可见/正在运行

时间:2018-11-26 19:16:24

标签: php jquery wordpress woocommerce

因为我需要创建自定义产品状态,所以我已经在Google上搜索了“ WooCommerce创建自定义产品状态”,但未找到任何结果。所以我记得WooCommerce中的产品就像WordPress中的帖子一样,因此我搜索了“在WordPress中创建自定义帖子状态”并找到了一个教程。

我已经按照那里的描述进行了操作,结果就出来了


我首先在主题function.php中注册了自定义帖子状态:

file

在此之后,我完成了本教程的第二部分,以使状态进入下拉列表:

register_post_status( 'custom-hide-product', array(
    'label'                     => _x( 'Produkt versteckt', 'post' ),
    'public'                    => false,
    'exclude_from_search'       => true,
    'show_in_admin_all_list'    => true,
    'show_in_admin_status_list' => true,
    'label_count'               => _n_noop( 'Produkt versteckt <span class="count">(%s)</span>', 'Produkt versteckt <span class="count">(%s)</span>' ),
) );

产品中的下拉列表:

enter image description here

但是,当我检查产品状态下拉列表时,我的自定义帖子状态不可见/设置或其他。你看到问题了吗?我不能。

1 个答案:

答案 0 :(得分:1)

我已经检查了您的代码,有一个小错误。您的代码的最后部分有一个错误。替换为:

add_action( 'admin_footer', 'display_hide_status_option' );
function display_hide_status_option() {
    global $post;
    $complete = '';
    $label    = '';
    if ( $post->post_type === 'product' ) {
        if ( $post->post_status === 'custom-hide-product' ) {
            $selected = 'selected';
        }
        echo '<script>
                jQuery(document).ready(function($){
                    $("select#post_status").append("<option value=\"custom-hide-product\" ' . $complete . '>Produkt versteckt</option>");
                    $(".misc-pub-section label").append("' . $label . '");
                });
              </script>
        ';
    }
}

我已将if语句中的post替换为product。测试了作品。玩得开心!