我在插件创建方面有点停滞不前,因为我没有找到一种优雅地连接东西的方法。
我的问题的简化版本如下:
完全启动Wordpress(核心和插件)
检测某些URL模式,如mydomain。com/video/video\\u id
在本例中,在我的插件中调用的函数是404(video\\u id
如果为true,那么我想直接跳转到加载常用的404模板
如果为false,则我将调用模板文件template\\u目录/my\\u视频。php?v=视频\\u id(我不需要\\u循环)
我已经找到了重写挂钩,但我不知道如何让它们工作,因为我不需要实例化WP\\u查询。有什么想法吗?
最合适的回答,由SO网友:Rarst 整理而成
虽然可以摆脱WP_Query
在WP加载过程中,很难完成。:)
让我们回顾一下与重写相关的过程:
Web服务器需要相当长的时间并将其重写为WP的index.php
.WP_Query.根据查询变量和检索到的帖子的结果,设置条件条件用于确定模板模板用于显示帖子(如果有)因此,从您的描述中很难理解您需要如何将您的东西集成到这一点中。
最广泛的规模是注册您自己的查询变量、您自己的重写规则,并在WP_Query
.
但如果你实际上对查询帖子和整个shebang不感兴趣,那么最简单的方法就是让WP得出404的结论,然后再继续template_redirect
根据您自己的自定义逻辑,要么让它继续,要么取消它并执行必要的操作。