【发布时间】:2021-10-13 02:43:22
【问题描述】:
我第一次尝试网页设计,因为我正在为我的电话服务和标牌设计公司建立一个网站。我正在使用 wordpress 构建我的网站,我的商店是 woocommerce 商店,我正在尝试根据它们所在的类别为价格添加两个不同的后缀。一个后缀是每月,另一个是每小时。我试图在我的子主题functions.php中使用下面的代码来做到这一点,但我相信我的代码出错了。你能帮我把代码弄对吗?
add_filter( 'woocommerce_get_price_html', 'conditional_price_suffix', 20, 2 );
function conditional_price_suffix( $price, $product ) {
$product_categories = array('telephone','signage');
if( has_term( $product_categories, 'telephone', $product->get_id() ) )
$price .= ' ' . __('per month');
if( has_term( $product_categories, 'signage', $product->get_id() ) )
$price .= ' ' . __('per hour');
return $price;
}
在放弃并在这里查看之后,我也发现了这段代码,虽然它看起来应该可以工作,但不适用于我的 woocommerce。
function conditional_price_suffix( $price, $product ) {
$product_id = $product->is_type('variation') ? $product->get_parent_id()
: $product->get_id();
$product_categories = array('telephone');
$product_categories2 = array('signage');
if( has_product_categories( $product_categories, $product_id ) ) {
$price .= ' ' . __('per month');
} elseif( has_product_categories( $product_categories2, $product_id ) )
{
$price .= ' ' . __('per hour');
}
return $price;
}
【问题讨论】:
-
嗨@Dan,当你说“我相信我的代码出错了”时,它并没有让我们合作。您能否将问题定义为您对结果的期望,无论是字面意思还是概念截图,以及实际结果?
-
好吧,我的逻辑表明这段代码应该可以工作,但它不能。任何类别的 woocommerce 价格都没有添加后缀。所以我想让这段代码正常工作,这样它就为这两个类别添加了价格后缀。
标签: javascript php wordpress woocommerce