gpt4 book ai didi

php - 以编程方式提交 WordPress 表单密码

转载 作者:可可西里 更新时间:2023-11-01 00:38:18 25 4
gpt4 key购买 nike

如何让用户访问受 WordPress 保护的页面,其 URL 将在下面的表单中提交密码?

我希望能够让用户无需输入密码即可进入受密码保护的 WordPress 页面,因此当他们进入该页面时,密码是在页面加载时通过 POST URL 提交的。

这在任何方面都不是为了安全;我需要在 URL 和 PHP 中硬编码密码。这只是为了方便用户。

编辑 2010 年 4 月 19 日: 根据下面的回答,可以直接设置 cookie 以允许用户不必输入密码。最好通过检测用户代理和重定向来让搜索机器人进入,因为机器人不会处理 cookie。

这是表单(这是 WordPress 核心代码):

<form action="http://mydomain.com/wp-pass.php" method="post">

Password: <input name="post_password" type="password" size="20" />

<input type="submit" name="Submit" value="Submit" /></form>

这是 wp-pass.php(这是 WordPress 的核心代码):

<?php
require( dirname(__FILE__) . '/wp-load.php');

if ( get_magic_quotes_gpc() )
$_POST['post_password'] = stripslashes($_POST['post_password']);

setcookie('wp-postpass_' . COOKIEHASH, $_POST['post_password'], time() + 864000, COOKIEPATH);

wp_safe_redirect(wp_get_referer());
?>

最佳答案

我不会在之前的答案中继续追加,而是会尝试在这里进一步解释这个问题。

Wordpress 密码的工作方式是:

  1. 原始页面有一个表单,被发送到 wp-pass.php
  2. wp-pass.php 接受提供的密码,将其放入 cookie 中,然后将用户重定向回原始页面。
  3. 原始页面检查cookie如果密码正确,它将显示页面。

这里的问题是搜索引擎不接受 cookie。因此,您有两个选择:

  1. 将 Wordpress 用于密码内容的代码更改为也接受 $_GET 变量的代码。
  2. 使用 cURL 发送 cookie 使用 header ,有一个单独的页面搜索引擎可以使用。

如果您愿意,我很乐意扩展后一个答案,但我确实想知道;如果您打算让搜索引擎访问密码内容,那么任何人都可以访问。为什么不直接删除密码?

关于php - 以编程方式提交 WordPress 表单密码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2619010/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com