自动更改多个页面的页面密码

时间:2020-02-05 作者:sc2015

这与该职位有关-Automatically change page password

这是否可以应用于多个页面而不是一个页面?

我已将slug更改为以下内容,但似乎不起作用:

$slug = array(\'page-one\',\'page-two\',\'page-three\',\'page-four\',\'page-five\'); // Edit this post slug to your needs!
谢谢

1 个回复
最合适的回答,由SO网友:Rup 整理而成

要在多篇帖子上执行此操作,您可以选择

将更新的“where”子句写为SQL“IN”,例如使用the answer here - 这将为每个帖子使用相同的新生成密码添加循环,并为每个帖子分别调用$wpdb->update-这将为每个帖子创建新密码或使用相同的密码,具体取决于编写循环的方式

$slugs = array(\'page-one\',\'page-two\',\'page-three\',\'page-four\',\'page-five\');

global $wpdb;
foreach( $slugs as $slug ) {
    // This bit as before
    $wpdb->update(
        $wpdb->posts,
        array( \'post_password\' => uniqid() ),
        array( \'post_name\'     => $slug    ),
        array( \'%s\' ),
        array( \'%s\' )
    );
}
只需直接在SQL中执行此操作即可?

UPDATE wp_posts
  SET  post_password = \'....\'
WHERE  post_name IN (\'page-one\',\'page-two\',\'page-three\',\'page-four\',\'page-five\');
我认为这是迄今为止最简单的方法,但如果您没有信心,显然可以先进行数据库备份。你必须在这里以某种方式生成自己的密码,而其他方法会自动为你生成一些随机的密码。

相关推荐

Admin username and password

我使用ceber安全插件再次保护我的网站,防止恶意攻击等。我今天检查了一下,发现有20多处上锁。我检查了ip地址,没有选区,他们来自世界各地。他们的一个共同点是他们输入的用户名,即我的一个管理员用户名。我在想a)他们是怎么得到的。。。我假设从页面更新等,他们有一些方法从检查来源发现?B) 如何防止管理员用户名被公开?还有没有办法将前端和后端分开,这样如果他们登录,就无法访问后端并进行更改?任何帮助都将是惊人的:-)