Horje

From Codex Action Reference :

init Runs after WordPress has finished loading but before any headers are sent. Useful for intercepting $_GET or $_POST triggers.

wp_head Runs when the template calls the wp_head function. This hook is generally placed near the top of a page template between and . This hook doest take any parameters.

Basically wp_head runs when page is already being loaded, while init runs before that.

Also don forget that init fires on admin pages as well and anything front-end related must be excluded from there with !is_admin() check.


More Solution
Reffered: https://wordpress.org/