За допомогою файлів cookie (куки) можна просто та елегантно виконувати такі дії, як відстеження сеансів відвідувачів сайту, збереження налаштувань і збір даних для вашого сайту. У сьогоднішній статті ми розглянемо всі важливі моменти, які стосуються файлів cookie: що це таке, де вони використовуються і для чого. Ви побачите на практиці як вручну встановлювати, отримувати і видаляти файли cookie з вашого сайту на WordPress.
Хоча їх використовують практично всі сайти в мережі Інтернет, середній користувач, як правило, мало знає про те, що таке куки і як вони використовуються. Давайте пройдемося по деяким основам, щоб прояснити це.
Cookie (куки) – це невеликий файл в браузері, який використовується для зберігання інформації про взаємодію користувача з сайтом. Вони зазвичай використовуються для постійного зберігання різних типів даних сеансу (сесії).
Сеанс (сесія) схожий на цифрову ідентифікаційну мітку. Кожен раз, коли ви відвідуєте сайт, вам буде присвоєна одна сесія на час відвідування, і вона буде використовуватися для ідентифікації вас під час вашого перебування на сайті. Сесії є унікальними для користувачів.
За законодавством, сайти повинні запитувати у відвідувачів свою згоду перед встановленням певних типів файлів cookie.
Існує безліч вагомих причин для зберігання сеансів і файлів cookie, які дозволяють відслідковувати поведінку користувача і зберігати важливу інформацію. Ось кілька з цих причин:
Куки бувають двох типів:
Якщо ви хочете дізнатися, чи зберігає сайт cookie у вашому браузері, виконайте наступну просту процедуру:
WordPress не використовує сесії за замовчуванням. Він зберігає куки для аутентифікації користувача, коли він авторизується на сайті. Тут важливо відзначити, що сам двигун WordPress не зберігає сесії, але багато плагінів або тем майже напевно використовують їх.
Тепер перейдемо до питання створення, отримання та видалення файлів cookie вручну.
Для управління куками ми будемо використовувати файл функцій активної теми (functions.php
).
Крок №1. Встановлення (створення) файлу куки
Щоб встановити куки в WordPress, ви повинні передати значення, які потрібно зберегти. Наприклад, якщо ви хочете зберегти ім’я користувача відвідувача вашого сайту, ви можете використовувати цей приклад коду у файлі functions.php
активної теми:
<?php function setting_test_cookie() { setcookie( $user_name, $user_value, 30 * DAY_IN_SECONDS, COOKIEPATH, COOKIE_DOMAIN ); } add_action( 'init', 'setting_test_cookie' ); ?>
Змінна DAY_IN_SECONDS
містить постійне значення в WordPress, яке дорівнює кількості секунд у дні. Зверніть увагу, що значення часу встановлено на 30 * DAY_IN_SECONDS
, що означає, що термін дії файлу cookie закінчується через 30 днів після створення. COOKIEPATH
визначає шлях до вашого сайту, а COOKIE_DOMAIN
є доменом сайту – обидва цих параметри задаються налаштуваннями вашого сайту (тобто, останні 2 значення можна не вказувати).
Після оновлення сторінки на сайті, ви побачите, що відповідні куки були додані в браузер.
Крок №2. Отримання значення кук в WordPress
Щоб отримати cookie, які ми створили раніше, ми будемо використовувати змінну $_COOKIE
. Ця змінна є глобальним асоціативним масивом, в якому зберігаються потрібні нам дані.
Змінна $_COOKIE
містить інформацію про всі файли cookie, які додаються в браузер. Щоб отримати значення куки, потрібно вказувати ідентифікатор cookie для цієї змінної. Ідентифікатор, який ми будемо використовувати – це ім’я, яке ми дали файлу cookie на кроці №1 ($user_name
). Ось приклад коду:
<?php if(isset($_COOKIE[$user_name])) { echo "Куки для '" . $user_name . "' встановлені"; echo "Значення цієї куки наступне: " . $_COOKIE[$user_name]; } else { echo "Куки для: '" . $user_name . "' не встановлені"; } ?>
Перш ніж ми передамо ідентифікатор куки в змінну $_COOKIE
, ми повинні переконатися, що цей куки-файл існує. Перевірку ми виконуємо за допомогою функції isset()
, яка повертає TRUE
, якщо cookie був встановлений, і FALSE
в іншому випадку.
Крок №3. Видалення куки в WordPress
Якщо вам буде потрібно видалити файли cookie зі свого сайту, скористайтеся наступною заготовкою коду:
<?php unset( $_COOKIE[$user_name] ); setcookie( $user_name, '', time() - 3600 ); ?>
Щоб видалити значення, яке cookie містить в асоціативному масиві, ми використовуємо функцію unset()
. Після цього ми примусово вказуємо минулий термін дії куки-файлу, встановивши для його змінної нульове значення (''
) і передавши позначку часу, яка була в минулому (time() - 3600
). Цей код видалить ваш файл cookie.
Файли куки – це важлива частина функціонування сайтів в мережі Інтернет, і навіть якщо ви ніколи не будете їх використовувати на своєму сайті, корисно знати, як вони працюють.
У сьогоднішній статті ми ґрунтовно розглянули, що таке куки і для чого вони потрібні. Також були розглянуті практичні приклади коду для створення, отримання значення куки, а також їх видалення з сайту на WordPress. Сподіваємося, що цей урок допоможе вам при більш глибокому вивченні роботи файлів cookie та управлінні сесіями.
Навчання за кордоном вже давно асоціюється з якісною освітою, новими можливостями та безліччю перспектив. Але…
Вибір майстра для ремонту та перетяжки меблів – завдання, яке потребує вдумливого підходу. Адже від…
Вибір ідеального хостингу під свій сайт може бути досить заплутаною справою, особливо коли існує багато…
Щоб уникати помилок, потрібно набиратися досвіду; щоб набиратися досвіду, потрібно робити помилки Лоуренс Пітер
Коротке визначення Чорного SEO Чорне СЕО (або Чорна оптимізація) — це будь-яка практика, метою якої…
Отримання прав водія категорії C відкриває двері до професійної діяльності, пов'язаної з керуванням вантажними автомобілями.…