【发布时间】:2012-05-16 00:39:59
【问题描述】:
这个问题一直把我逼疯了。
我一直在为使用 wordpress 的朋友开发移动网站。我正在尝试修改一个为移动用户“重新主题化”每个页面的 wordpress 插件。如果用户在博客页面上,我希望插件做它正常的事情(“重新主题”页面),否则(如果用户访问不同的页面,他将被重定向到不同的地址(移动网站的地址)。
为了做到这一点,当插件中的功能运行时,我必须能够检测我是在博客页面上,还是在不同的页面上。
我尝试了 is_home、is_page(id) 等条件,但它们都不起作用。我也尝试解析 url 并尝试以这种方式确定页面,但我不能。
我刚刚开始接触 PHP,所以我真的不确定接下来要尝试什么。
重申我的问题:如何确定我是否在 wordpress 插件功能中的某个页面上?
该插件是“Wordpress PDA & iPhoned”(http://imthi.com/wp-pda/)
以下是相关代码:
function PDAPlugin() {
if(true) {
header("Location: http://adavidcreation.com/mobile");
exit;
}
...
}
这可行,但我想将 if 语句更改为仅当它不是博客时才为真。
任何帮助将不胜感激!
【问题讨论】:
-
如果在页面的 php 文件之外调用函数,则 is_home、is_page、is_archive 等条件将不起作用,也不会解析 URL,因为它不在页面上运行。您需要将该函数放在要运行它的页面上,例如archive.php。如果你只是想要重定向功能,你可以把你粘贴在这里的那段代码放在 header.php 的顶部,你可以检查页面是否是那里的博客页面。该插件仍会为您生成移动站点,但重定向代码需要放在头文件中。
标签: php mobile wordpress parse-url