Existe algum perigo na exclusão de todos os transientes?

8

Eu tenho um site grande para um cliente, e como é uma instalação wordpress realmente personalizada com muitas extensões de funcionalidade, não posso usar os plugins de cache.

Para melhorar o desempenho, construí muito do site usando transientes (por exemplo, a navegação, o google maps com todos os marcadores, etc.) e deixo a dinâmica do conteúdo dinâmico.

O problema aqui é se eu mudar alguma coisa, eu tenho que excluir manualmente o transiente específico para ver o resultado atual. O site mostra menus e googlemaps diferentes quando inseridos a partir de um canal diferente. Por isso, tenho dez transientes para cada área.

Você criaria uma função onde eu excluiria todos de uma vez (com uma listagem dos nomes do transiente), ou não há problema em excluir todos os transientes no site?

Não é realmente tão urgente, mas para desenvolvimento futuro eu gostaria de saber se você teve algum problema com coisas assim, e como você gerencia todos os seus transientes.

Felicidades, fischi

    
por fischi 21.11.2012 / 17:45

3 respostas

5

Para desenvolvimento, aconselho sempre trabalhar com WP_DEBUG definido como true e fazer o seguinte:

$key = 'transient_key';
if( !WP_DEBUG && ( false !== ($transient = get_transient($key)) ){

   /* Generate transient manually */
   $expiration = 24*60*60;//How long to keep for
   set_transient($key,$transient, $expiration);
}

Em geral - deve ser bom excluir transientes, pois eles nunca devem ser considerados no banco de dados.

    
por Stephen Harris 21.11.2012 / 17:52
1

Você deve estar enganchando as várias ações que são executadas quando as coisas são atualizadas para limpar e atualizar os transientes. Por exemplo, quando o menu de navegação é atualizado, a ação wp_update_nav_menu é acionada, conecte uma função a ela para atualizar o transiente do menu de navegação.

    
por Milo 21.11.2012 / 17:53
1

Não seria melhor fazer seu desenvolvimento em um ambiente de desenvolvimento para que a necessidade de ver suas alterações à medida que são feitas não afeta o site público?

Usando essa abordagem, você pode implantar / promover a produção e liberar os transientes em um tempo de tráfego baixo, com impacto mínimo no desempenho do site e na experiência do usuário.

    
por Steve 21.11.2012 / 18:02