【问题标题】:Determine the current page in PHP within a wordpress plug-in在 wordpress 插件中确定 PHP 中的当前页面
【发布时间】: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


【解决方案1】:

尝试使用这个,它应该检索页面 id:$id = get_option('page_for_posts');

如果这不起作用 -> https://wordpress.stackexchange.com/

【讨论】:

    猜你喜欢
    • 2014-04-16
    • 1970-01-01
    • 2012-07-22
    • 2012-12-14
    • 1970-01-01
    • 2018-11-08
    • 2013-12-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多