Я хотел бы получить идентификатор (или постоянную ссылку) страницы посетителя, посетившего как раз перед посещением текущей страницы – другими словами, идентификатор последней страницы в истории браузера.
Это можно сделать? Есть идеи, как это сделать?
Разбейте это на две части:
Во-первых, мы создаем переменную, которая хранит URL-адрес последней страницы, например:
$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
Затем вы можете либо использовать substr, и strpos, чтобы обрезать все между ? = И / после идентификационного номера. как это:
$prev_url = 'http://www.yoursite.com/?p=123'; $id_block = substr($prev_url, strpos($prev_url, "?p=")+1); $id = substr($id_block, 0, strpos($id_block, "/"));
.. Или вы можете использовать jQuery / Javascript для достижения того же.
Я не тестировал это, но он должен работать – дайте мне знать, как это делается! Удачи 😉
Я сделал этот трюк, как это, чтобы позволить мне также проверить, является ли это одной из моих страниц:
// Получить ссылку последней страницы из истории
$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null;
// Проверяем, не имеет значения null, и если он содержит URL моего блога
if( !empty( $prev_url ) || strpos( $prev_url, (string)get_blog_details()->domain ) !== false ) : //Then display it only if it's one of my blog page ?> <a href="<?php echo $prev_url; ?>" class="previous-history-link">The last page from history</a> <?php endif; ?>