WordPress – 如何检测当前页面是否为登录页面

更新于 2022年1月14日 wordpress教程

有没有比使用全局变量$pagenow来检测当前页面(如果它是登录页面is_admin()更好的方法,比如is_admin()函数?

WordPress – 如何检测当前页面是否为登录页面

if ($pagenow != 'wp-login.php' && !is_admin())
{
    // Do something
}

有一个带有 getter get_current_screen()的全局变量$current_screen (在/wp-admin/includes/template.php声明)但它总是等于null

在#15686(检测当前页面模板标签) – WordPress Trac 它说$pagenow它通常被使用,但我认为这不是将非动态页面与文件名而不是功能(如管理页面)进行比较的好方法.

解决方案

虽然我倾向于同意其他人需要函数 is_login_page() 或类似的东西,

<?php
function is_login_page() {
    return in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php'));
}

如果您像我一样,实际上尝试取消注册/弄乱 WordPress 自动加载的 jQuery,那么正确答案是:

不要使用wp_print_styles来注册你的脚本——改用wp_enqueue_scripts

这个钩子只会在前端运行,而不是在登录页面上运行,所以不需要解决方法。

你不能解释一下你打算用它做什么吗? 所以我可以告诉你是否应该使用 wordpress hooks 进行编码。

或者您可以使用绝对uri,只需将其与 wp-login.php 匹配即可

<?php
$uri = $_SERVER['REQUEST_URI'];

echo $uri;

?>

如果您想尽可能不独立于 WP; 例如在一个插件中,使未来的更改超出范围。 你可以使用这样的东西:

function is_login_page() {
    return !strncmp($_SERVER['REQUEST_URI'], '/wp-login.php', strlen('/wp-login.php'));
}

如果有人使用插件来更改他的登录页面 URL,上述所有方法都将不起作用。 如果您的登录页面 URL 被任何安全插件(如 (Lockdown WP Amin) 或类似插件)更改,那么您可以使用此高级完整功能。 这是我现在最好的方法:

//---------------------------------------------------------------
//Check if we are inside the login page or not
//---------------------------------------------------------------
function is_inside_login_page()
{
    //true if login page URL is still normal
    if(in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php'))) return true;
    
    //true if login page URL is changed by some security plugins
    if(has_action('login_init')) return true;
    
    //Else if nothing above happens >> return false
    return false;
}

你可能还喜欢下面这些文章

禁用Wordpress的默认的一些小工具禁用Wordpress的默认的一些小工具

主题开发者有时候会自己定制小工具并且在前台显示定制的样式,如果我们不想为wordpress自带的小工具定制样式或者不想我们自定义的小工具淹没在默认的小工具当中,最好移除不需要的小工具。

Wordpress如何修改发送邮件的默认邮箱WordPress如何修改发送邮件的默认邮箱

WordPress安装完成之后默认会自动创建一个系统邮箱地址和一个发件人,邮箱地址是 WordPress@yourblogname.com,而发件人则是WordPress。
尽管我们已经在后台将系统邮箱地址设定为其它名称,我们博客的邮件接收人看到的邮箱地址仍然是WordPress@yourblogname.com,发件人名称仍然是WordPress,实在很让收件人感到迷惘,因为WordPress 这个发件人没人知道是张三还是李四,是男人还是女人。

wprec:wordpress相关文章插件,最好的相似推荐插件wprec:wordpress相关文章插件,最好的相似推荐插件

一个理想的相关文章推荐插件应该是什么样子的?
wprec就是一个能够提升用户体验,提升搜索引擎排名的相关文章推荐插件!
插件的后台在 WP工具箱-文章推荐,进入即可看到设置。

wordpress开启多站点方法wordpress开启多站点方法

本文介绍一下wordpress开启多站点以及开启多站点之后nginx的配置。
rewrite (.*) $1/index.php;
rewrite (.*) /index.php;

wordpress文章自动配图、缩略图插件:wpacwordpress文章自动配图、缩略图插件:wpac

现在写点文章不配图总觉得文章质量不太高。
于是萌生了写一款文章自动配图的插件的想法。
文章页自动加一张图比较简单,从候选集中选择一张图片拼接在正文中即可。
又比如在图片中添加文章标题,摘要或者自定义的文字。

wordpress自动关键词插件wpkws,长尾词聚合必备wordpress自动关键词插件wpkws,长尾词聚合必备

网站获取流量需要依靠长尾词,但我们不可能把所有的长尾词都堆在标题或者正文中。
现在我开发了一款能自动匹配长尾词的插件wpkws,他的功能是找到和文章相似的长尾词,自动添加为标签。

wordpress关注微信公众号查看隐藏内容插件:北冥wordpress关注微信公众号查看隐藏内容插件:北冥

北冥插件是imwpweb开发的一款关注可复制、可查看隐藏内容的插件,想要为公众号涨粉不可错过哦~

想要流量私域化,成本最低的方式就是让用户关注你的公众号,手段就是通过关注可以查看隐藏内容,复制内容。

wordpress可以做企业网站吗wordpress可以做企业网站吗

如果想制作网站,一般自己写后台程序的人极少,多数都会选择别人写好的开源CMS作为网站的后台系统,国内的免费开源CMS有很多,个人使用是完全免费的,如果做企业站,一般都是需要授权的,这就需要付很多钱才行。
Wordpress 对模版、插件的支持非常优秀,而且完全开源,其授权协议是GPL可以进行二次开发并且商业使用,用于做企业网站是再合适不过。

好看 (0) 很好看 (0) 非常好看 (0)
赞赏

微信赞赏支付宝赞赏