我刚刚测试了密码保护帖子的功能,当我提交密码时,它会将我发送到404页面。我确认输入的密码是正确的。URL栏显示:www.mydomain.com/wp-pass.php
但显示404页。无论密码是正确的还是错误的,它都应该显示一些关于密码错误的消息,或者显示受保护的帖子。不仅仅是404页。
这可能是什么原因造成的?提前感谢您的建议。
我刚刚测试了密码保护帖子的功能,当我提交密码时,它会将我发送到404页面。我确认输入的密码是正确的。URL栏显示:www.mydomain.com/wp-pass.php
但显示404页。无论密码是正确的还是错误的,它都应该显示一些关于密码错误的消息,或者显示受保护的帖子。不仅仅是404页。
这可能是什么原因造成的?提前感谢您的建议。
好吧,我自己想出来的!我使用add\\u filter自定义密码表单,以便添加css类。add\\u filter中的所有内容都很旧或完全错误。我在教程中找到了它,但这对我来说是一个教训。永远不要相信在网上找到的代码,除非它来自抄本或绝对的专家。
编辑:刚刚在Codex中找到了相同的代码*facepalm。上面写着“这不再有效”,但为什么它还在抄本中?对于任何有此问题的人:如果您使用了此处的代码:Using Password Protection: Password Form Text 新版本的Wordpress会出现问题。
袋熊的正确答案为-3时的mfw
很抱歉没有发表评论,但我这里还没有任何回购协议,我真的只是想知道wordpress上发生了什么。stackexchange。com公司
袋熊到底应该给这增加什么?我们有一个WP安装,其中包含一些来自codex的旧代码(同时codex应该对当前WP版本进行更正)。wordpress。com在我们的主题中functions.php
文件自定义密码表单,例如:
<?php
function my_password_form() {
global $post;
$label = \'pwbox-\'.( empty( $post->ID ) ? rand() : $post->ID );
$o = \'<form action="\' . esc_url( site_url( \'wp-pass.php\', \'login_post\' ) ) . \'" method="post">
\' . __( "To view this protected post, enter the password below:" ) . \'
<label for="\' . $label . \'">\' . __( "Password:" ) . \' </label><input name="post_password" id="\' . $label . \'" type="password" size="20" maxlength="20" /><input type="submit" name="Submit" value="\' . esc_attr__( "Submit" ) . \'" />
</form>
\';
return $o;
}
add_filter( \'the_password_form\', \'my_password_form\' );
?>
在一些更新中,WP更改了表单,但当我们在functions.php
我们现在得到OP在所讨论的更新之后描述的错误。现在我们改变了wp-pass.php
到/wp-login.php?action=postpass
正如袋熊所说(如当前法典页面所示):<?php
function my_password_form() {
global $post;
$label = \'pwbox-\'.( empty( $post->ID ) ? rand() : $post->ID );
$o = \'<form action="\' . esc_url( site_url( \'wp-login.php?action=postpass\', \'login_post\' ) ) . \'" method="post">
\' . __( "To view this protected post, enter the password below:" ) . \'
<label for="\' . $label . \'">\' . __( "Password:" ) . \' </label><input name="post_password" id="\' . $label . \'" type="password" size="20" maxlength="20" /><input type="submit" name="Submit" value="\' . esc_attr__( "Submit" ) . \'" />
</form>
\';
return $o;
}
add_filter( \'the_password_form\', \'my_password_form\' );
?>
问题已解决。(对于任何已经实现了导致此问题的自定义过滤器的人来说,Wombat提供的信息应该没有问题……那么,你们为什么要降低他的评分呢??)更改wp pass的实例。php到/wp登录。php?操作=后通过
我们有一个Wordpress网站,lifering.org, 在戈达迪主持。我们最近升级了虚拟服务器的Linux操作系统,这涉及到从备份重建站点。现在,我们的单篇帖子显示了两个评论回复表单。我相信我们之前每个帖子只有一个评论回复表。我不知道这是怎么发生的-我自己做了备份-或者如何修复它。