O que faz com que um transito altere o status para “Não expira”?

Eu notei que alguns transientes no meu site de vez em quando passam de ter uma data de validade para “Não expira”. Eu notei isso acontecendo com alguns plugins (por exemplo, Gravity Forms), mas também acontecendo com os transientes que criei. Alguma ideia?

UPDATE: Não tenho certeza de como o Gravity Forms define e recupera seus transientes, mas eu apenas estava usando os exemplos do códice

//Set transient name based on post tags being used $transient = 'rest-posts-' . md5(serialize($tags)); if (false === ($data = get_transient($transient))) { //Run query here and then set transient set_transient($transient, $data,24 * HOUR_IN_SECONDS); } 

Isso funciona … o que significa que, se não tiver transito válido, ele criará um. No entanto, de vez em quando eu vejo que os dados não estão atualizando, e então eu verifico todos os meus transientes e percebi que algum status alterado para “Não expira”. Nenhum transiente novo é criado uma vez que os atuais estão configurados para “Não expira”. Estou usando um plugin transiente para gerenciar todos os transientes. Então, uma vez que eu exclui os transientes com o status “Não expira”, os novos são criados exatamente.

Solutions Collecting From Web of "O que faz com que um transito altere o status para “Não expira”?"

Os transientes não expiram se o tempo de expiração não for fornecido. Observe que você pode inadvertidamente causar isso se você fornecer um valor zero para o tempo.

Você deve estar ciente de que isso ainda não garante que o transiente permanecerá vivo. Isso não deve ser invocado.

Como um detalhe de implementação principal, ele eliminará todos os transientes de database em atualizações de versão de database. Isso foi implementado enquanto voltou para abordar os problemas com possibilidade de database ficar entupido com enormes quantidades de transientes antigos.