Intereting Posts
список авторов, не ссылающийся на правильную страницу Пользовательские метаданные не сохраняются Могу ли я заблокировать пост в позиции, поэтому он всегда появляется на главной странице? Скрытые страницы Woocommerce Получить несколько пользователей с метазначением в одном запросе и заполнить класс WP_User Имеет ли файл uninstall.php плагина доступ к объекту плагина? Используя multisite, как я могу получить два разных сайта в сети, чтобы иметь разные активные темы? Удалить ссылку на продукт Woocommerce get_adjacent_post – в том же сроке не работает Пользовательские сообщения, затрагивающие последние сообщения Как отображать фотографию автора В WordPress без какого-либо плагина? Как я могу реализовать систему уведомлений в WordPress? Скрипт пользовательской регистрации пользователя, разрешающий имена пользователей с 16 символами Такое же меню для разных таксономий для достижения различного контента Multisite и API JSON REST: как это сделать?

Как использовать Transient API в качестве файла cookie

Я хочу использовать Transient API в качестве cookie, но я хочу знать, является ли это лучшей практикой и как сделать переходный процесс уникальным или для каждого пользователя. благодаря

Solutions Collecting From Web of "Как использовать Transient API в качестве файла cookie"

Почти во всех обстоятельствах печенье было бы предпочтительнее переходного процесса. WP имеет очень плохую привычку не очищать переходные процессы должным образом, поэтому, если ваш код не очистится после себя (убивает бесполезные переходные процессы), они просто будут сидеть навсегда в вашей БД. Даже переходные процессы, срок действия которых истекает, иногда нет.

С точки зрения уникальности вы создадите переходный процесс следующим образом:

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

Возможно, вы захотите взглянуть на эту дискуссию здесь, чтобы обсудить, когда лучше всего использовать переходные процессы.