小编Nab*_*fri的帖子

修改WooCommerce Is_Purchasable

我正在努力实现我自己的预订系统,我is_preorder为每个产品设置了一个自定义字段.

我试图修改WooCommerce的Is_Purchasable选项,这样,如果产品具有预订状态已经超过预订截止日期,则无法购买.我尝试了很多方法,但似乎没有任何效果.

这是我做过的事(粗略的想法)

add_filter('woocommerce_is_purchasable', 'preorder_is_purchasable');

function preorder_is_purchasable() {

    // this is a field added using 'Advance Custom Fields' plugin 
    $is_preorder = get_field('is_preorder'); 

    if($is_preorder && "not yet passed deadline")
        return true;
    else
        return false;
}
Run Code Online (Sandbox Code Playgroud)

我不只是想禁用add_to_cart按钮,我也想禁用该功能(如果用户试图通过硬编码在url中添加产品,则应该提示错误).
我该怎么做呢?

================================================== =========================

这是我的最终代码:

add_filter('woocommerce_is_purchasable', 'preorder_is_purchasable', 10, 2);

function preorder_is_purchasable( $is_purchasable, $object ) {

// this is a field added using 'Advance Custom Fields' plugin 
$is_preorder = get_field('is_preorder', $object->id); 

// if product is Pre-Order
if($is_preorder)
{
    $today …
Run Code Online (Sandbox Code Playgroud)

php wordpress woocommerce

4
推荐指数
2
解决办法
7567
查看次数

标签 统计

php ×1

woocommerce ×1

wordpress ×1