首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >修改WooCommerce缺货消息

修改WooCommerce缺货消息
EN

Stack Overflow用户
提问于 2017-02-20 21:33:30
回答 2查看 12.8K关注 0票数 4

所以开始吧..。我有一个wordpress网站,并使用woocommerce等。我想改变产品页面上的积压信息类似于“请允许2-4周交付此项目”,这是我有问题。

我也希望相同或类似的消息显示在购物车页面,在那里的缺货消息通常显示在项目名称下。

或者,但不是我的偏好,只是从购物车页面完全隐藏欠订单消息,但仍然在产品页面上。

我是通过插件输入php代码,而不是使用子主题或其他东西。我通常管理得还可以,但在这一点上完全被难住了。我昨天花了几个小时在这上面,设法让我的网站崩溃了!lol…

我认为这会给我的网站一个更专业的外观。

下面是我网站上积压的产品的链接,这样你就可以确切地看到我正在寻找的东西。

https://ascentsofscotland.co.uk/product/cormag-celtic-bangle/

任何帮助都非常感谢,因为我开始对一些理论上应该很简单的事情感到沮丧……(我认为这实际上应该是woocommerce中一个可定制的部分!)

提前感谢在座的各位天才!

Stu

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-02-21 00:50:09

我认为你需要过滤woocommerce_get_availability_text。将其添加到主题的functions.php或特定于站点的“代码片段”插件中。

代码语言:javascript
运行
复制
function so_42345940_backorder_message( $text, $product ){
    if ( $product->managing_stock() && $product->is_on_backorder( 1 ) ) {
        $text = __( 'Please allow 2 – 4 weeks for delivery of this item', 'your-textdomain' );
    }
    return $text;
}
add_filter( 'woocommerce_get_availability_text', 'so_42345940_backorder_message', 10, 2 );
票数 15
EN

Stack Overflow用户

发布于 2017-08-11 15:30:15

这是一个在产品页面和购物车中都有效的一体化工具(我使用免费的“代码片段”插件来处理这个问题,而不是摆弄functions.php文件):

代码语言:javascript
运行
复制
function alt_message() {
  return "This item may take 3-4 weeks to deliver";
}

function backorder_text($availability) {
$altmessage = alt_message();
foreach($availability as $i) {
$availability = str_replace('Available on backorder', $altmessage, $availability);
}
return $availability;
} 
add_filter('woocommerce_get_availability', 'backorder_text');


function woocommerce_custom_cart_item_name( $_product_title, $cart_item, $cart_item_key ) {
$altmessage = alt_message();
  if ( $cart_item['data']->backorders_require_notification() && $cart_item['data']->is_on_backorder( $cart_item['quantity'] ) ) {
$_product_title .=  __( ' - '. $altmessage, 'woocommerce' ) ;
}
return $_product_title;
}
add_filter( 'woocommerce_cart_item_name', 'woocommerce_custom_cart_item_name', 10, 3);

另外,在子主题的style.css文件中添加以下CSS代码

代码语言:javascript
运行
复制
.backorder_notification{
display: none;
}
.backorder_notification.custom{
display: block;
}

PS:如果你不添加CSS代码,那么它将无法工作。

致谢:http://www.northmore.net/change-backorder-text-woocommerce/

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42345940

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档