在wordpress中进行后期分页是从php动态工作的

时间:2017-04-16 18:47:40

标签: php wordpress

我创建了一个小插件,可根据某些要求添加<!--nextpage-->短代码。

例如,我的插件将检查用户代理是否是机器人,如果是,则不会添加<!--nextpage-->,如果不是,则会添加它。

到目前为止,我创建了一个检查用户代理的功能:

function test(){
  if($_SERVER['HTTP_USER_AGENT'] == ' Bot i want '){
    // here we dnt show <!--nextpage-->      
  } else {
      do_shortcode('<!--nextpage-->');      
  }
}
add_shortcode('myshortcode','test');

因此,当我在帖子编辑器中添加短代码时,它工作正常,但唯一的问题是它没有添加<!--nextpage-->,它没有被执行,如果我尝试其他短代码[tweetme]或其他注册的短代码,他们的工作正常。

1 个答案:

答案 0 :(得分:0)

要打印到您的html页面,您不应该打电话

 do_shortcode('<!--nextpage-->');

上述行无效,因为在Wordpress中不是有效的短代码格式,因此do_shortcode无法解析它。

wordpress中的有效短代码需要用[]括号括起来。

要实现您要执行的操作(在检测到网络爬虫时打印出来),您只需将测试功能更改为:

function test(){
  if($_SERVER['HTTP_USER_AGENT'] == ' Bot i want '){
    // here we dnt show <!--nextpage-->      
  } else {
     echo '<!--nextpage-->';      
  }
}

另外,您可以在此处查看do_shortcode函数文档:https://developer.wordpress.org/reference/functions/do_shortcode/