Como configurar atualizações automáticas no WordPress 3.7?

32

O WordPress 3.7 adicionou atualizações automáticas. Como isso funciona e como posso configurar esse recurso?

Chip Bennett
fonte

Respostas:

29

As atualizações automáticas são automáticas.

O comportamento padrão básico do WordPress 3.7 é a atualização automática do núcleo para versões secundárias (por exemplo, X.Y.Zpara X.Y.Z+1.)

Nenhuma opção de configuração está exposta na interface do usuário. Para alterar o comportamento, você precisará modificar seu wp-config.phparquivo ou adicionar alguns filtros:

Desativação fácil

Adicione o seguinte a wp_config.php:

define( 'AUTOMATIC_UPDATER_DISABLED', true );

Como alternativa, adicione o seguinte filtro:

add_filter( 'automatic_updater_disabled', '__return_true' );

Controle de atualização principal

Via 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 );

Via filtros:

// 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' );

Temas e plugins

Temas e plugins de atualização automática do tipo "tudo ou nada":

As atualizações de tema e plug-in estão desativadas por padrão. Para ativar via filtro:

add_filter( 'auto_update_plugin', '__return_true' );
add_filter( 'auto_update_theme', '__return_true' );

Esses filtros são passados ​​para o objeto de atualização; portanto, é possível manipular esse objeto para direcionar temas ou plug-ins específicos a serem atualizados, para colocar na lista de permissões (incluir) ou excluir atualizações automáticas.

Arquivos de tradução

As atualizações do arquivo de tradução são ativadas por padrão. Para desativar via filtro:

// Disable translation updates
add_filter( 'auto_update_translation', '__return_false' );

Atualizar emails de resultado

O atualizador envia um email de resultado sobre sucesso, falha ou erro crítico. Para desativar via filtro:

// Disable update emails
add_filter( 'auto_core_update_send_email', '__return_false' );

Esse filtro também pode ser usado para manipular emails de atualização de acordo com emails $type(êxito, falha, crítica), objeto do tipo de atualização $core_updateou $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 );

Leitura adicional

Entrada do códice aqui . Mais informações aqui .

Chip Bennett
fonte
5
Eu acho que você pode fazer isso para atualização individual de temas / plugins, de acordo com os comentários de Nacin "As opções de configuração anteriores são tudo ou nada. No entanto, você pode querer algo mais refinado. Ele auto_update_$type filter (auto_update_core, auto_update_plugin, auto_update_theme, auto_update_translation)é acionado para atualizações específicas, pois são está pronto para ser atualizado. Esse filtro recebe o objeto de atualização real que descreve o que o WordPress está prestes a atualizar. Isso significa que você pode ativar seletivamente plugins ou temas individuais para atualizar, por exemplo, ou colocar as principais atualizações futuras na lista de permissões. "
Pollyplummer 25/10/2013
1
@pollyplummer por todos os meios, adicione essa informação à resposta! Isso é bom. :)
Chip Bennett
1
@brasofilo " Na seção" Atualização fácil ", não deveria ser" Ou adicione o seguinte filtro "? " - não de acordo com o Codex. Recomenda o uso de ambos.
Chip Bennett
1
Se estou seguindo a lógica do núcleo corretamente, ela passa primeiro pelo filtro, depois pela constante. Nesse caso, devemos atualizar a entrada do Codex com "ou". Também estou vendo que DISALLOW_FILE_MODSinterrompe qualquer tipo de atualização.
Brasofilo 25/10
1
@Howdy_McGee Acabei de publicar um guia sobre como excluir determinados plugins . Além disso, a página de atualização no Wordpress informa se as atualizações automáticas estão ativadas. Se não mencionar atualizações automáticas, use este plug - in para saber por que eles estão desativados.
David
2

Você pode verificar se a configuração do site e do servidor suporta atualizações automáticas com o plug-in do Background Update Tester . De Nacin: "Este plugin verifica a compatibilidade do seu site e explica todos os problemas."

Miriam Schwab
fonte
Não atualizado desde 2015, os tempos de wordpress ~ 4.1.
kubanczyk