Wordpress身份验证在Wordpress之外

15 浏览
0 Comments

Wordpress身份验证在Wordpress之外

首先,我的PHP技能几乎为零,以前我有一个朋友帮我做这种事情,而我更专注于CSS和HTML以及网站内容的制作,但是自从他消失后,我不得不负责自己的这个基于WordPress的网站。他制作了一个很棒的应用程序来下载文件,虽然不是一个WP插件,但功能正常,我想做的只是将这个工具变成一个“只有在主网站登录后才能使用”的工具。当点击手动生成的链接时,它会在一个新页面中加载,类似于:\n

\n“myweb[dot]com/folder1/Down.php?id=…”\n

\n我找到了这个名为“Down.php”的文件,大概是这样的:\n




.
.
.

\n但我不知道如何添加WordPress用户认证,我找到了一段可能适用的代码……也许,但我不知道如何使用它。如果您知道如何做到这一点,或者知道其他方法,我会非常感谢您能帮助我。\n


\n我已经找到了一种在网页上限制链接可见性的方法(使用WP插件),但我还发现通过猜测直接链接很容易绕过它。请帮助我解决这个问题。

0
0 Comments

问题出现的原因:用户想要在WordPress之外进行身份验证,以便在用户未登录时发送403(禁止)响应。

解决方法:在代码中添加以下内容,并将其放置在<?php标签下方的顶部。如果用户未登录,则该代码会发送403(禁止)响应。

<?php
$path = $_SERVER['DOCUMENT_ROOT'];
require_once $path . '/wp-load.php';
if ( ! is_user_logged_in() ) {
    header("HTTP/1.1 403 Forbidden" );
    die();
}
.
.
.
?>
<!DOCTYPE html>
<html lang="es-ES">
.
.
.
</html>

如果WordPress不在public_html中,可能会失败(没有测试),可能需要在wp-load.php之前添加目录名称。但是,如果我理解你的问题,这不应该是问题。

用户表示该方法已经完美解决了问题。用户表示如果需要,可以通过电子邮件发送“Down.php”文件和主机服务器上的文件树。用户非常感谢帮助。

用户补充了一点,网站不在public_html目录中,而是在public_html/subdomain/子目录中。但是用户在学习了“Document_Root”后发现这不是问题。

0