Не срабатывает событие после регистрации пользователя
Необходимо после регистрации нового пользователя создавать папку с его ID в каталоге USERS.
Событие не срабатывает почему-то именно при регистрации пользователя. Перепробовал все возможные хуки регистрации - без результатов.
Пробовал заменить на другое событие (создание новой записи) - успешно. Каталог создавался.
Данный код лежит в начале functions.php
add_action( 'register_new_user', 'add_dirs_user' );
function add_dirs_user( $user_id ) {
$user_dir = '../uploads/users/111';
mkdir($user_dir, 0777);
}А ты как регаешь через функцию register_new_user()? Без нее не будет работать этот хук.
И путь для файла лучше абсолютный укажи.
Решил проблему. Всё оказалось банальнее: нужно было указать абсолютный путь. Относительные пути срабатывают только когда ты уже авторизован. Спасибо за помощь!
Проверил, вот так работает:
add_action( 'user_register', 'add_dirs_user' ); function add_dirs_user( $user_id ) { $upload = wp_upload_dir(); $dir_path = $upload['basedir'] . '/users/' . $user_id; wp_mkdir_p( $dir_path ); }WP в админке не использует register_new_user(). Эта функция юзается только в файле wp-login.php.
Нет, сам хук срабатывал. Не создавались именно папки. Проблему решил, всё дело в относительном пути к папке.