You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过the_content钩子在指定段落前添加WordPress短代码

调整短代码位置到指定段落之前的解决方案

当然可以调整!你当前的代码是把短代码追加到第4段(也就是$parags[3],因为数组从0开始计数)的内容后面,要把它放到这段之前,只需要修改赋值的顺序就行。

修改后的代码

add_filter('the_content', 'ak_the_content_filter', 10, 1);
function ak_the_content_filter($content) {
    $parags = explode('</p>', $content);
    
    // 先判断目标段落存在,避免数组索引不存在的报错
    if (isset($parags[3])) {
        // 把短代码放到$parags[3]内容的前面
        $parags[3] = do_shortcode('[SHORTCODE HERE]') . $parags[3];
    }
    
    $content_new = '';
    foreach ($parags as $parag) {
        $content_new .= $parag;
    }
    return $content_new;
}

关键说明

  • 原来的代码用$parags[3] .= do_shortcode(...),是将短代码追加到目标段落的末尾;修改后的$parags[3] = do_shortcode(...) . $parags[3],则是把短代码前置到目标段落的内容之前。
  • 新增了isset($parags[3])的判断,防止文章段落不足4段时出现数组索引未定义的错误,让代码更健壮。

内容的提问来源于stack exchange,提问作者Elichy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 17:07:44