WooCommerce

Nextend Social Login 404 错误

更改了WordPress的后台登录地址会导致Nextend Social Login插件的社交登录按钮出现404错误。因为它默认的登录地址是wp-login.php,很多网站出于安全原因会隐藏后台地址。幸好Nextend插件提供了解决方法——备用登陆地址。

默认的社交登录地址是下面这样:

https://yoursite.com/wp-login.php?loginSocial=facebook

当你安装WPS Hide Login之类的插件隐藏后台地址时,上面这个地址就无效了,会被定向到404页面。

如何使用备用登录地址

方法是打开Nextend插件的Global Settings,找到Page for register flowOAuth redirect uri proxy page这两项,被选中页面的URL就会成为替代地址。

替代登录地址

之后插件会出现提示,提醒你去facebook、谷歌等账户里更新redirect uri。通常这样配置一下就可以用了,但也有例外。

比如,主题自己写代码定制social按钮,而没有用nextend插件的shortcode,碰巧定制代码不支持备选login地址,那就尴尬了。获取login地址时,不要直接使用wp_login_url(),而要使用NextendSocialLogin::getLoginUrl()

Flatsome主题里就出现了这个问题,如果你打开flatsome/woocommerce/my-account/header.php,会发现它就是用不兼容备选地址的方式获取了button链接。

$facebook_url = add_query_arg( array( 'loginSocial' => 'facebook' ), wp_login_url() );

解决方法参考这篇文章即可。

3条评论

评论已关闭。