Программно залогиниваем пользователя в WordPress
При разработке сайта на платформе WordPress может оказаться очень полезным знать, как прораммно залогинить пользователя. Вот функция для этого.
Как обычно, необходимо добавить код в файл functions.php вашей темы или в плагин для сайта WordPress:
function auto_login( $user ) { $username = $user; if ( !is_user_logged_in() ) { $user = get_userdatabylogin( $username ); $user_id = $user->ID; wp_set_current_user( $user_id, $user_login ); wp_set_auth_cookie( $user_id ); do_action( 'wp_login', $user_login ); } }
Затем, для «захода» пользователя делаем следующее:
auto_login( 'admin' )
Автоматические обновления в WordPress 3.7
В WordPress 3.7 появилась новая и интересная функция, которая позволяет вашему блогу автоматически обновляться при появлении новой версии. Это действительно удобная фича, однако, если по какой-либо причине вам это не нужно, вот быстрый «рецепт» для ее отключения.
Для отключения автоматических обновлений необходимо открыть файл wp-config.php, который располагается в корневой директории вашего сайта, и вставить туда следующую строку:
define( 'AUTOMATIC_UPDATER_DISABLED', true );
После сохранения файла автоматические обновления будут отключены и вам снова придется обновляться вручную.
Включаем автоматические обновления для основных релизов в WordPress 3.7
Если вам понравилась идея авто-обновления, то вы можете включить его для только обновления основных релизов WordPress (например с 3.7 на 3.8 и т.д.)
Для этого добавляем одну строку в файл wp-config.php, который располагается в корневой директории вашего сайта:
define( 'WP_AUTO_UPDATE_CORE', true );
Есть одна небольшая проблема в этом коде. Он также включает обновления разработчиков (альфа- и бета-версии, RC), а также так называемые обновления «ночных сборок» (Nightly Builds). Для отключения всех этих ночных сборок , альф и бет просто добавляем код в файл functions.php вашей темы или в плагин для сайта WordPress:
add_filter( 'allow_dev_auto_core_updates', '__return_false' );
Небольшой список фильтров для организации новой функции обновления:
// обновление темы add_filter( 'auto_update_theme', '__return_true' ); // обновление плагинов add_filter( 'auto_update_plugin', '__return_true' ); // обновление файлов перевода add_filter( 'auto_update_translation', '__return_true' ); // Отправляем письмо об авто-обновлении add_filter( 'auto_core_update_send_email', '__return_true' ); // обновление ядра add_filter( 'auto_update_core', '__return_false' ); // Nightly Build add_filter( 'allow_dev_auto_core_updates', '__return_true' ); // версии внутри ветки add_filter( 'allow_minor_auto_core_updates', '__return_true' ); // версии между ветками add_filter( 'allow_major_auto_core_updates', '__return_true' );
Как это работает?
Оставим включенным только обновления плагинов и тем, и отключим обновления ядра и локализации, и отключим уведомления на почту:
add_filter( 'auto_update_theme', '__return_true' ); add_filter( 'auto_update_plugin', '__return_true' ); // отключаем авто-обнолвение add_filter( 'auto_update_translation', '__return_false' ); add_filter( 'auto_core_update_send_email', '__return_false' ); add_filter( 'auto_update_core', '__return_false' );