在管理面板中向woocommerce quickedit添加自定义复选框

最高

我试图在woocommerce的产品编辑站点中创建一个复选框,从而允许我启用/禁用仅在特定产品上显示的自定义徽章横幅。我可以在正常的编辑页面中使用它,但也想在产品quickedit面板中显示该复选框。

我在产品编辑页面中看到了它的代码,如下所示。这非常简单,因为它开箱即用。

/* 1. Add new checkbox to product edit page (General tab) */
add_action('woocommerce_product_options_general_product_data', 'bbloomer_add_badge_checkbox_to_products');
function bbloomer_add_badge_checkbox_to_products() {
    woocommerce_wp_checkbox(array(
        'id' => 'custom_badge',
        'class' => '',
        'label' => 'Echt SPECHTWERK'
            )
    );
}
/* 2. Save checkbox via custom field */
add_action('save_post', 'bbloomer_save_badge_checkbox_to_post_meta');
function bbloomer_save_badge_checkbox_to_post_meta($product_id) {
    if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
        return;
    if (isset($_POST['custom_badge'])) {
        update_post_meta($product_id, 'custom_badge', $_POST['custom_badge']);
    } else
        delete_post_meta($product_id, 'custom_badge');
}
// 3. Display badge @ single product page if checkbox checked
add_action('woocommerce_single_product_summary', 'bbloomer_display_badge_if_checkbox', 6);
function bbloomer_display_badge_if_checkbox() {
    global $product;
    if (get_post_meta($product->get_id(), 'custom_badge', true)) {
        ?> <div class="echt-spechtwerk-badge">
                    <img class="advantages-symbols" src="<?php echo get_bloginfo('wpurl') . '/wp-content/uploads/echt-SPECHTWERK-V6.svg' ?>">                    
                </div>
                <?php
    }
}



伊兹梅霍坎

添加以下代码,以进行产品批量编辑和带有自定义字段的快速编辑-

function add_custom_field_in_bulk_edit_quick_edit(){
    echo '<div class="inline-edit-group">';
    woocommerce_wp_checkbox( array(
        'id' => 'custom_badge',
        'class' => '',
        'label' => 'Echt SPECHTWERK'
    ) );
    echo '</div>';
}
add_action( 'woocommerce_product_quick_edit_end', 'add_custom_field_in_bulk_edit_quick_edit', 99 );
add_action( 'woocommerce_product_bulk_edit_end', 'add_custom_field_in_bulk_edit_quick_edit', 99 );

function save_custom_field_in_bulk_edit_quick_edit( $post_id, $post ){
    // If this is an autosave, our form has not been submitted, so we don't want to do anything.
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
        return $post_id;
    }
    if ( 'product' !== $post->post_type ) return $post_id;

    if (isset($_REQUEST['custom_badge'])) {
        update_post_meta( $post_id, 'custom_badge', $_REQUEST['custom_badge'] );
    } else {
        delete_post_meta( $post_id, 'custom_badge' );
    }

}
add_action( 'woocommerce_product_bulk_and_quick_edit', 'save_custom_field_in_bulk_edit_quick_edit', 99, 2 );

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

向WooCommerce产品变体选项中添加自定义复选框

自定义复选框,在WooCommerce购物车页面中添加费用

复选框字段,用于在WooCommerce中添加/删除自定义费用

Woocommerce 优惠券添加自定义复选框

如何在反应物料表的列中添加自定义复选框?

如何在infusionsoft中添加自定义复选框?

如何在自定义复选框中添加不确定状态?

使用自定义复选框从数组中添加和删除对象的最佳方法

Woocommerce中管理员编辑产品的复选框自定义字段

自定义复选框显示或隐藏Woocommerce结帐中的自定义通知

如何在CSS的自定义复选框中更改复选框的颜色?

网格中的CSS自定义复选框-无法删除原始复选框

在 React 中制作自定义复选框

WordPress中的高级自定义字段复选框

Swift 3中的自定义复选框

如何删除自定义复选框中的勾号?

通过WooCommerce产品设置中的自定义复选框将类添加到WooCommerce页面

通过WooCommerce产品设置中的自定义复选框禁用添加到购物车按钮

在WooCommerce结帐中添加一个自定义复选框,该值以管理员编辑顺序显示

根据自定义“ woocommerce_variation_option”将复选框添加到WooCommerce结帐页面

添加复选框并将操作删除到自定义Django管理员change_list

根据自定义管理复选框的条件更改商店档案上的“添加到购物车”按钮

购物车页面Woocommerce中的自定义“条款和条件”接受复选框

更改Woocommerce购物车项目价格的产品自定义复选框选项

无法保存WooCommerce结帐的自定义复选框值

Woocommerce变量订阅自定义字段复选框设置为默认未选中

在 Woocommerce 的前端显示自定义单选和复选框产品设置数据

基于Woocommerce产品变体库存数据的自定义显示复选框

如何从WooCommerce结帐保存自定义复选框字段状态?