imarc / craft-password-protection
为CMS上的任何页面设置密码保护。
Requires
- craftcms/cms: ^3.0.0
Requires (Dev)
- codeception/codeception: ^3.0
- craftcms/cms: ^3.2.0
- vlucas/phpdotenv: ^3.0
This package is auto-updated.
Last update: 2024-09-09 21:10:18 UTC
README
这是一个Craft CMS插件,它可以直观且无障碍地为您的CMS中的任何页面设置密码保护。
要求
此插件需要Craft CMS 3.0.0-beta.23或更高版本。
安装
要安装此插件,请按照以下说明操作。
-
打开您的终端并转到您的Craft项目
cd /path/to/project
-
然后告诉Composer加载插件
composer require imarc/craft-password-protection
-
在控制面板中,转到设置 → 插件,然后点击“安装”按钮以安装密码保护。
配置密码保护
默认密码
当您设置默认密码时,该值将用作任何启用锁定屏幕且密码字段留空的页面的默认值。当此设置留空且未提供锁定屏幕密码时,锁定屏幕将自动禁用。
密码Cookie持续时间
此设置定义了用户会被记住多长时间。输入的值以秒为单位,例如,要获得一天,您将进行86400。默认为1天。
模板
这允许定义自定义登录页面。只需在项目中创建一个包含名为 password_protect
字段的表单的模板,然后在密码保护的设置中定义该模板的路由。对于位于 tempalates/password-protect/login.twig
的模板,输入的路径将是 password-protect/login
或 /password-protect/login
。以下是一个简单的模板示例
<form method="POST">
<h1>{{ 'Enter Password'|t }}</h1>
<div>
{{ csrfInput() }}
{% set message = craft.app.session.getFlash('protect_error') %}
{% if message|length > 0 %}
<div class="alert">
<p class="error">{{ message }}</p>
</div>
{% endif %}
<input type="password" name="protect_password">
<input type="submit" value="{{ 'Submit'|t}}">
</div>
</form>
使用密码保护
要开始在页面上使用密码保护,请登录到管理面板,然后转到条目并点击您想要保护的条目。一旦进入编辑页面,在屏幕右侧您将看到一个标有“启用密码保护”的开关。只需切换它并输入密码即可保护该页面。完成后,别忘了在右上角点击保存,然后您就可以使用了!
现在当用户访问该页面时,他们将被提示默认密码页面或自定义密码页面(如果已定义)。
注意
一旦用户正确输入密码,就会存储一个cookie,他们不需要在cookie过期前重新输入密码。此外,任何登录的用户都将自动获得访问所有受密码保护的页面的权限。允许在特定页面上提示某些用户的功能正在规划中。
密码保护路线图
要做的事情以及潜在功能的想法
- 允许自定义哪些登录用户将在特定页面上提示密码
由 Imarc 提供