WordPress 3.7 додав автоматичні оновлення. Як це працює, і як я можу налаштувати цю функцію?
WordPress 3.7 додав автоматичні оновлення. Як це працює, і як я можу налаштувати цю функцію?
Відповіді:
Автоматичне оновлення - автоматичне.
Основна поведінка за замовчуванням у WordPress 3.7 - це автоматичне оновлення ядра для другорядних версій (тобто X.Y.Z
до X.Y.Z+1
.)
Ніякі параметри конфігурації не піддаються впливу інтерфейсу користувача. Щоб змінити поведінку, вам потрібно буде змінити wp-config.php
файл або додати кілька фільтрів:
Додайте до wp_config.php
:
define( 'AUTOMATIC_UPDATER_DISABLED', true );
Крім того, додайте наступний фільтр:
add_filter( 'automatic_updater_disabled', '__return_true' );
Через wp-config.php
:
// Update core - development, major, and minor versions
define( 'WP_AUTO_UPDATE_CORE', true );
// Update core - minor versions
define( 'WP_AUTO_UPDATE_CORE', 'minor' );
// Core update disabled
define( 'WP_AUTO_UPDATE_CORE', false );
Через фільтри:
// Enable nightlies (dev updates):
add_filter( 'allow_dev_auto_core_updates', '__return_true' );
// Enable major version updates:
add_filter( 'allow_major_auto_core_updates', '__return_true' );
// Disable minor updates
add_filter( 'allow_minor_auto_core_updates', '__return_false' );
Теми та додатки автоматичного оновлення "Все або нічого":
Оновлення теми та плагінів вимкнено за замовчуванням. Щоб увімкнути через фільтр:
add_filter( 'auto_update_plugin', '__return_true' );
add_filter( 'auto_update_theme', '__return_true' );
Ці фільтри передаються об'єкту оновлення; тому можна маніпулювати цим об’єктом для націлювання на конкретні теми чи плагіни, які потрібно оновити, або в білий список (включити), або виключити з автоматичного оновлення.
Оновлення файлів перекладу увімкнено за замовчуванням. Щоб відключити через фільтр:
// Disable translation updates
add_filter( 'auto_update_translation', '__return_false' );
Оновник надсилає електронний лист із результатами про успіх, невдачу чи критичну помилку. Щоб відключити через фільтр:
// Disable update emails
add_filter( 'auto_core_update_send_email', '__return_false' );
Цей фільтр також може використовуватися для обробки електронних листів оновлення відповідно до електронної пошти $type
(успіх, помилка, критичність), об’єкта типу оновлення $core_update
або $result
:
/* @param bool $send Whether to send the email. Default true.
* @param string $type The type of email to send.
* Can be one of 'success', 'fail', 'critical'.
* @param object $core_update The update offer that was attempted.
* @param mixed $result The result for the core update. Can be WP_Error.
*/
apply_filters( 'auto_core_update_send_email', true, $type, $core_update, $result );
Ви можете перевірити, чи підтримують конфігурацію вашого веб-сайту та сервера автоматичні оновлення за допомогою плагіна Тест фонового оновлення . Від Nacin: "Цей плагін перевіряє ваш сайт на сумісність і пояснює будь-які проблеми".
auto_update_$type filter (auto_update_core, auto_update_plugin, auto_update_theme, auto_update_translation)
Запускається для конкретних оновлень, як вони є готовий до оновлення. Цей фільтр передає фактичний об’єкт оновлення, який описує, що WordPress збирається оновити. Це означає, що ви можете вибірково дозволити оновлення окремих плагінів або тем, наприклад, або білий список майбутніх оновлень ядра. "