这取决于登录脚本的位置。这是我的测试脚本(另存为ìndex.php`):
<html>
<head>
<title>Testform</title>
</head>
<body>
<?php
require_once \'../wp-load.php\';
var_dump($_COOKIE);
if ( !( current_user_can(\'level_0\') ) ){
wp_login_form();
}
else { ?>
<ul>
<li><a href="<?php echo home_url(\'/wp-admin/\'); ?>">Admin</a></li>
<li><a href="<?php echo wp_logout_url( get_permalink() ); ?>">Logout</a></li>
</ul>
<?php } ?>
</body>
我在本地服务器的子目录中安装了WordPress(
testdoma.in/wordpress
). 如果我在WordPress安装中的子目录中安装脚本(
testdoma.in/wordpress/external
), 它起作用了。如果我在根目录中安装脚本(并更改
require_once
到
wordpress/wp-load.php
), 没有办法让它工作。
如果您试图访问WordPress功能,脚本必须位于WordPress安装的子文件夹中或直接位于WordPress安装中。
UPDATE
经过一些研究,这是一个cookie问题。插件
root Cookie 将解决问题。