Как мне установить повара ie в Wordpress? - PullRequest
0 голосов
/ 06 марта 2020

У меня проблема с поваром ie не подает. Мы добавляем этот повар ie в качестве обходного пути, чтобы прекратить блокирование сторонних файлов cookie в браузерах Safari и Firefox.

Ниже приведен код, который я включил в функции дочерней темы Wordpress. php файл (в настоящее время находится на нашем производственном сервере.

Может кто-нибудь, пожалуйста, просмотрите и сообщите, если вы чувствуете, что какие-либо изменения необходимы. Заранее благодарим.

function set_my_cookie() {
$user_agent = $_SERVER['HTTP_USER_AGENT'];
$user_agent = strtolower($user_agent);
$user_agent = ' ' . $user_agent;
$browser    = '';

if (strpos($user_agent, 'opera') || strpos($user_agent, 'opr/')) $browser = 'Opera';
else if (strpos($user_agent, 'edge')) $browser = 'Edge';
else if (strpos($user_agent, 'chrome')) $browser = 'Chrome';
else if (strpos($user_agent, 'safari')) $browser = 'Safari';
else if (strpos($user_agent, 'firefox')) $browser = 'Firefox';
else if (strpos($user_agent, 'msie') || strpos($user_agent, 'trident/7')) $browser = 'Internet Explorer';

if ($browser == 'Safari') {
$urlparts = parse_url(home_url());
$domain   = '.' . $urlparts['host'];
$time   = strtotime("+1 year");

if (!isset($_COOKIE['kppid'])) {
$kppid = uniqid('sf', true);
$kppid = str_ireplace('.', '', $kppid);

setcookie('x', $x $time, '', $domain);
} else {
$kppid = $_COOKIE['kppid'];
setcookie('x', $x, $time, '', $domain);
}
}
}

Ответы [ 2 ]

0 голосов
/ 06 марта 2020

По умолчанию WordPress использует куки для управления сеансами вошедшего в систему пользователя и аутентификации. Он также использует куки для запоминания имени пользователя и адреса электронной почты, если они заполняют форму комментария.

Однако многие плагины WordPress на вашем сайте могут также устанавливать свои собственные куки. Например, OptinMonster позволяет вам показывать разные формы электронного письма для новых и возвращающихся посетителей, и делает это с помощью файлов cookie.

Если вы используете на своем веб-сайте сторонние службы, такие как Google Analytics или Google AdSense, то они также могут устанавливать куки на вашем сайте.

Таким образом, вы также можете добавить файлы cookie на свой собственный сайт WordPress.

вам нужно будет добавить код к функциям вашей темы. php файл или плагин, специфичный для сайта c. Если вы еще этого не делали, посмотрите, пожалуйста, , как копировать и вставлять фрагменты кода в WordPress .

Сначала мы будем использовать функцию setcookie() в PHP. Эта функция принимает следующие параметры:

  • Готовить ie Имя
  • Готовить ie Значение
  • Срок действия (Необязательно: устанавливает период времени, после которого готовка ie expires)
  • Path (необязательно, по умолчанию будет использоваться root)
  • домен (необязательно, по умолчанию используется домен вашего сайта)
  • Secure ( Необязательно, если true, тогда только данные повара ie передаются по HTTPS)
  • httponly (Необязательно, если установлено значение true, повар ie доступен только через HTTP и не может использоваться скриптами)

Теперь давайте добавим фрагмент кода на ваш сайт WordPress. Этот код хранит точную метку времени, когда пользователь посетил ваш сайт в поваре ie.

function wpb_cookies_tutorial1() { 
$visit_time = date('F j, Y  g:i a');
if(!isset($_COOKIE[$wpb_visit_time])) {
// set a cookie for 1 year
setcookie('wpb_visit_time', $current_time, time()+31556926);
}
} 

Теперь вы можете посетить свой веб-сайт и проверить файлы cookie браузера. Вы найдете повара ie с именем wpb_visit_time.

Не стесняйтесь изменять код, чтобы сделать его более полезным для вашего сайта.

0 голосов
/ 06 марта 2020

Вы должны создать хук инициализации для повара ie, см.

add_action( 'init', 'my_setcookie' );
function my_setcookie() {
  setcookie( $name, $value, 24 * DAYS_IN_SECONDS, COOKIE_PATH, COOKIE_DOMAIN );
}

Затем файлы cookie можно получить с помощью функции setcook ie.

echo "My cookie: " . $_COOKIE[$name];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...