function edit_user_profile_avatar($user_id) {
if ( !current_user_can( \'edit_user\', $user_id ) )
return false;
// Обновляем аватар
if(!empty($_FILES[\'avatar\'])) {
$file = $_FILES[\'avatar\'];
$ext = substr(strrchr(basename($file[\'name\']),\'.\'), 1); // расширение файла
$filename = $user_id.\'.\'.$ext; // название файла
$wp_upload_dir = wp_upload_dir();
$url_file = $wp_upload_dir[\'baseurl\'].\'/avatars/\'.$filename;
$basedir = $wp_upload_dir[\'basedir\'].\'/avatars/\';
$upload_file = $basedir.$filename;
/* создаем папку с аватарами, если её не существует */
if (!is_dir($basedir)) {
mkdir($basedir, 0755, true);
}
/* удаляем старый аватар, если он существует */
$avatar = get_the_author_meta(\'avatar\', $user_id);
if(!empty($avatar)) {
unlink($basedir.basename($avatar));
}
/* загружаем новый аватар и обновляем информацию */
if (move_uploaded_file($file[\'tmp_name\'], $upload_file)) {
update_user_meta($user_id, \'avatar\', $url_file);
}
}
// Удаляем аватар
if(!empty($_POST[\'del_avatar\'])) {
$wp_upload_dir = wp_upload_dir();
$basedir = $wp_upload_dir[\'basedir\'].\'/avatars/\';
/* удаляем старый аватар, если он существует */
$avatar = get_the_author_meta(\'avatar\', $user_id);
if(!empty($avatar)) {
unlink($basedir.basename($avatar));
update_user_meta($user_id, \'avatar\', \'\'); // очищаем поле
}
}
}
add_action(\'personal_options_update\', \'edit_user_profile_avatar\'); // Регистрируем хук-событие сохранения
add_action(\'edit_user_profile_update\', \'edit_user_profile_avatar\'); // Регистрируем хук-событие сохранения