如何将暂态API用作Cookie

时间:2014-11-19 作者:user1147145

我想使用Transient API作为cookie,但我想知道这是否是最佳实践,以及如何使Transient成为唯一的或每个用户。谢谢

1 个回复
最合适的回答,由SO网友:Hybrid Web Dev 整理而成

在几乎所有情况下,饼干都比暂时的要好。WP有一个非常坏的习惯,就是不正确地清理瞬态,所以除非您的代码在自己之后清理(杀死无用的瞬态),否则它们将永远留在您的DB中。即使设置为过期的瞬态有时也不会过期。

就唯一性而言,您将生成如下瞬态:

set_transient( $transient_name, $data_to_store, $expiration_time_in_seconds);
因此,创建特定于用户的瞬态类似于:

$transient_name = \'name_this_whatever\' . $user_id;
$expiration_time_in_seconds =  60*60*12;
set_transient( $transient_name, $data_to_store, $expiration_time_in_seconds);
然后,要检索相同的字段,只需执行以下操作:

$transient_name = \'name_this_whatever\' . $user_id;
get_transient( $transient_name );
你可能想看看这个讨论here 讨论什么时候可以最好地利用瞬态。

结束

相关推荐

Cookies in template

我需要根据cookies只显示一次页面的某些部分。主要问题是我只能在插件中设置cookie,挂起init操作。我已经读了20页的谷歌,这个网站,问了2个论坛,但我仍然有这个问题。任何帮助都将不胜感激!