WooCommerce产品变体中的自定义字段

时间:2016-01-19 13:08:27

标签: wordpress woocommerce custom-fields

问题更新,因为人们看来误解了它:

使用WordPress的WooCommerce插件,我想在附加信息标签中显示产品变体名称,方法与显示重量和尺寸的方式相同。

例如,我有一个产品有两种尺寸,2升和10升,因此它是一个可变产品,有两种产品变化 2升'和#10; 10升'如果我选中产品页面上显示的框,则大小会显示在附加信息标签中,如下所示:'尺寸:2升,10升'。 我希望它的工作方式与重量和尺寸相同,所以当产品变化时,2升'如果选择此选项,则“附加信息”选项卡将显示“尺寸:2升”,并且当产品变化“10升”时,将显示“<”如果选中,“附加信息”选项卡将显示“大小:10升'。

可以这样做吗?

2 个答案:

答案 0 :(得分:1)

以下是为产品变体添加所有类型的自定义输入字段的完整代码:

property "sonar.sources", "src/main/java,src/main/res"

要在前端获取这些值,我们只需要使用流行的get_post_meta()函数。

此处的参考文章:

http://www.remicorson.com/woocommerce-custom-fields-for-variations/

答案 1 :(得分:0)

这是第一次尝试。属性表中没有太多内容,但是当更改属性下拉列表时,它会在附加信息选项卡中找到该属性(默认WooCommerce中列出的属性)并更改文本以匹配下拉列表中的标签。当客户切换回空的“选择”选项时会出现问题,因此您需要将其展开以某种方式解释该问题。

jQuery( document ).ready(function($) {

    $( ".variations_form" ).on( 'change', '.variations select', function() {
        id = $(this).attr('id');
        attribute = toTitleCase( $(this).attr('id').replace("pa_", "") );
        selected = $(this).find('option:selected').text();
        $('#tab-additional_information').find('.shop_attributes th:contains('+attribute+')').next('td').text(selected);
    });

    function toTitleCase(str){
        return str.replace(/\w\S*/g, function(txt){return txt.charAt(0).toUpperCase() + txt.substr(1).toLowerCase();});
    }
});

将上述内容保存为主题文件夹中的somescript.js。然后将以下内容添加到functions.php以正确排队脚本。

/**
 * Proper way to enqueue scripts and styles
 */
function theme_name_scripts() {
    wp_enqueue_script( 'script-name', get_template_directory_uri() . '/somescript.js', array('jquery'), '1.0.0', true );
}

add_action( 'wp_enqueue_scripts', 'theme_name_scripts' );