Похоже, вам нужно убедиться, что вы еще не вошли в систему, на узле / 1, в пользователе / регистре или другом неподходящем пути, прежде чем выполнять перенаправление, в противном случае вы просто перенаправляете вслепую, и это приводит к циклу , право? Кроме того, вам также нужно разрешить пользователям входить в систему, верно?
Таким образом, вы можете начать с того, что сначала убедитесь, что пользователь не вошел в систему, и что он еще не находится на пути пользователя для отправки анонимных пользователей на страницу 'user' (или user / register):
if(($user->uid == 0) && (arg(0) != 'user')){
drupal_goto('user');
}
Затем выполните перенаправление node/1
, используя hook_user_login()
вместо hook_init()
.
По крайней мере, это то, что имеет смысл для меня, исходя из моего понимания вашего варианта использования.
Вы также можете рассмотреть возможность использования Адресата входа в систему , который имеет стабильные версии D6 и D7.