The plugin exposes hooks for extending its behaviour. These are stable and documented in the source.
Access control
| Hook |
Type |
Purpose |
ppsas_visitor_is_exempt |
filter |
Return true to grant access for the whole request. |
ppsas_password_record_is_active |
filter |
Add conditions that take a password out of play. |
ppsas_rest_allowed_routes |
filter |
Route prefixes that stay public while protected. |
ppsas_trust_proxy |
filter |
Return true to honour X-Forwarded-For behind a trusted proxy. |
ppsas_protectable_post_types |
filter |
Post types that get the editor protection box. |
Captcha
| Hook |
Type |
Purpose |
ppsas_captcha_providers |
filter |
Add providers to the settings screen. |
ppsas_captcha_response_field |
filter |
The POST field carrying the response. |
ppsas_verify_captcha |
filter |
Verify a response for your provider. |
ppsas_render_captcha |
action |
Render your widget in the form. |
ppsas_enqueue_captcha_scripts |
action |
Enqueue your provider’s script. |
Admin UI
| Hook |
Type |
Purpose |
ppsas_admin_panels |
filter |
Register extra panel slugs. |
ppsas_admin_sidebar_items |
action |
Add sidebar navigation entries. |
ppsas_admin_panels_render |
action |
Render extra panels. |
ppsas_settings_panel_fields |
action |
Add fields to the settings form. |
ppsas_save_settings |
action |
Save your fields. Nonce already verified. |
Logging and reporting
| Hook |
Type |
Purpose |
ppsas_should_log_access |
filter |
Return false to skip logging an attempt. |
ppsas_access_log_row |
filter |
Modify the row before it is written. |
ppsas_access_logged |
action |
React to a logged attempt. |
ppsas_log_retention_days |
filter |
Change the 90-day retention window. |
ppsas_activity_report_message |
filter |
Rewrite the report email body. |
ppsas_send_empty_report |
filter |
Return true to email even with no activity. |
ppsas_visitor_locked_out |
action |
React to a lockout. |
Database
| Hook |
Type |
Purpose |
ppsas_create_tables |
action |
Create your own tables on activation and upgrade. |
ppsas_table_names |
filter |
Register tables with the self-healing check. |
| Hook |
Type |
Purpose |
ppsas_login_head |
action |
Output into the password screen <head>. |
ppsas_isolated_form_assets |
filter |
Allow asset handles in isolated mode. |
ppsas_enqueue_scripts |
action |
Enqueue assets for the form. |
Database tables
| Table |
Contents |
{prefix}_ppsas_passwords |
Password records: scope, hash, label, status, schedule, role bypass, order. |
{prefix}_ppsas_access_log |
Access attempts: event type, scope, user, IP, browser, timestamp. |