The init
hook is triggered a little earlier than the admin_init
. Between them is triggered wp_loaded
and few hooks related to updating the DB.
The init
hook fires when WP is finished loading (viewer-facing and administration side).
The admin_init
hook fires on administration side only (/wp-admin/*
), therefore is triggered also by front- and back-end ajax requests (/wp-admin/admin-ajax.php
) and POST handler (/wp-admin/admin-post.php
).