Obține ID-ul paginii vizitate anterior
Împarte asta în două părți:
În primul rând, creăm o variabilă care stochează URL-ul ultimei pagini vizitate, astfel:
$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : '';
Apoi, poți folosi fie substr și strpos pentru a elimina totul între ?= și / după numărul ID, astfel:
$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, "/"));
.. Sau, poți folosi jQuery/Javascript pentru a obține același rezultat.
Nu am testat acest lucru, dar ar trebui să funcționeze - spune-mi cum merge! Mult succes ;)

mersi - mă gândeam deja în această direcție, dar manualul php spune despre asta: "Adresa paginii (dacă există) care a direcționat user agentul către pagina curentă. Aceasta este setată de user agent. Nu toate user agentele vor seta acest lucru, iar unele oferă posibilitatea de a modifica HTTP_REFERER ca o funcționalitate. Pe scurt, nu poate fi cu adevărat de încredere." Așa că sunt puțin îndoielnic dacă este cea mai bună cale de urmat...

Adevărat - HTTP_REFERER depinde doar de server. Sincer să fiu, nu cunosc alte soluții pentru asta. Dacă aceasta nu este o funcție crucială, aș merge înainte și aș folosi HTTP_REFERER deoarece este destul de stabil de la un agent la altul.

Am făcut acest truc în felul următor pentru a putea verifica dacă este una dintre paginile mele:
// Obține ultimul link din istoric
$prev_url = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : null;
// Verifică dacă nu este null și dacă conține URL-ul blogului meu
if( !empty( $prev_url ) || strpos( $prev_url, (string)get_blog_details()->domain ) !== false ) :
// Afișează linkul doar dacă este o pagină a blogului meu ?>
<a href="<?php echo $prev_url; ?>" class="previous-history-link">Ultima pagină din istoric</a>
<?php endif; ?>
