gpt4 book ai didi

php - 如果项目数大于 4,Wordpress 将显示短代码

转载 作者:行者123 更新时间:2023-12-02 20:12:44 25 4
gpt4 key购买 nike

我正在使用一个插件(由其他人开发),该插件输出短代码[wof_wheel id="1111"]。我在页面上使用这个短代码。

我尝试将条件逻辑应用于短代码,以便仅在购物车中的商品数量大于 4 时才显示/运行短代码。

我知道如何使用 WC()->cart->get_cart_contents_count() 获取并检查购物车商品计数,但不确定是否可以实现短代码显示/运行逻辑。

function do_shortcode() {     

$items_count = WC()->cart->get_cart_contents_count();

if ($items_count > 4) {
DISPLAY/RUN SHORTCODE
} else if ($items_count < 4)
{
DO NOT DISPLAY/RUN SHORTCODE
}
}

这种类型的条件逻辑可以通过短代码实现吗?

最佳答案

@LoicTheAztec 是一个很好的解决方案,但如果您想要另一种解决方案,您可以使用以下解决方案:

WordPress 具有内置功能,允许您删除短代码的默认回调函数并将其替换为您的自定义函数。

在本例中,我们将检查购物车内容计数是否超过 4,然后删除默认回调并将其替换为我们的回调。

例如,我会考虑您拥有的页面 ID 是 49,当使用此代码来匹配包含短代码的页面时,您应该更改该 ID。

//Our Check 
function checkShortCode()
{
$page = get_post(49);
if (WC()->cart) {
$items_count = WC()->cart->get_cart_contents_count();


if ($items_count == 4) {
//Remove the Default Hook function for this shortcode
remove_shortcode('wof_wheel');
//Add custom callback for that short to display whatever message you want
add_shortcode('wof_wheel', 'myCustomCallBack');
}
}
}
add_action('wp_loaded', 'checkShortCode');

现在我们需要添加自定义回调来显示您想要的任何消息:

function myCustomCallBack()
{
echo 'my shortcode is running';
}

上面的代码已经过测试并且100%工作

关于php - 如果项目数大于 4,Wordpress 将显示短代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53207194/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com