根据 WooCommerce 中的属性值显示不同的文本

我有一个全局产品属性“警告”。它有两个值。现在我需要根据产品是否具有属性值 1 或值 2 显示不同的文本(如果它根本没有该属性,则不应显示任何内容。我可以用此显示文本


add_action( 'woocommerce_single_product_summary', 'product_warning', 35 );

function product_warning(){

    global $product;

    $taxonomy = 'pa_warning';

    $value = $product->get_attribute( $taxonomy );

    if ( $value ) {

        $label = get_taxonomy( $taxonomy )->labels->singular_name;

        echo '<p>My Text</p>';

    }

}

但是如果属性值 1 为真,如何显示文本 1,如果属性值 2 为真,如何显示文本 2?


噜噜哒
浏览 33回答 2
2回答

叮当猫咪

相反,您将使用 2 个术语(值)来表示pa_warning和1,2为每个相关产品设置正确的术语值。那么你的代码将是:add_action( 'woocommerce_single_product_summary', 'product_warning', 35 );function product_warning(){&nbsp; &nbsp; global $product;&nbsp; &nbsp; $taxonomy = 'pa_warning';&nbsp; &nbsp; $label_name = wc_attribute_label( $taxonomy );&nbsp; &nbsp; $term_value = $product->get_attribute( $taxonomy );&nbsp; &nbsp; if ( $term_value == 1 ) {&nbsp; &nbsp; &nbsp; &nbsp; echo '<p>' ; __("My text message 1", "woocommerce") . '</p>';&nbsp; &nbsp; } elseif ( $term_value == 2 ) {&nbsp; &nbsp; &nbsp; &nbsp; echo '<p>' ; __("My text message 2", "woocommerce") . '</p>';&nbsp; &nbsp; }}代码位于活动子主题(或活动主题)的 function.php 文件中。它应该有效。

HUH函数

数组或类似的东西似乎是最简单(也可能是最快)的方法。我相信 PHP 仍然会将数组中的 null 键值转换为空字符串,因此不需要声明这一点。$warning = array(&nbsp;1 => "Warning number 1",&nbsp;2 => "Warning number 2",);echo $warning($term_value);
打开App,查看更多内容
随时随地看视频慕课网APP