Obține parametrii URL din referer
Nu sunt 100% sigur dacă aceasta se clasifică drept o întrebare PHP sau este specific WordPress...
Implementez WordPress Settings API cu o pagină de setări cu tab-uri. Am adăugat un buton 'reset tab', dar deoarece validarea se face pe o pagină separată (options.php), nu pot determina pe care tab mă aflu - fără să adaug tab-ul ca un câmp ascuns, lucru pe care vreau să-l evit.
Am găsit funcția wp_get_referer()
, dar aceasta îmi oferă URL-ul complet - nu sunt sigur cum să extrag tab=tab1
ca variabilă.
Update - Răspuns:
$url = parse_url(wp_get_referer());
parse_str($url['query'], $path);
$tab = $path['tab'];
După cum s-a menționat în răspunsuri, este necesară apoi o validare.

Dacă tab=tab
se află în URL atunci:
global $_GET;
var_dump($_GET); // doar pentru depanare; Ar trebui să poți vedea ce ai nevoie.
Acesta este PHP pur. Dacă chiar trebuie să procesezi acel șir (nu știu de ce ai face asta) folosește parse_url
apoi utilizează parse_str
pe partea de query
a acestuia.
$path = parse_url($url);
$path = parse_str($path, $output);
var_dump($output); // din nou, doar pentru depanare
Pentru completitudine, te rog să nu folosești niciuna dintre acele valori fără validarea lor.
Am înțeles greșit?

Din păcate, nu pot folosi $_GET
deoarece URL-ul din care încerc să extrag parametrul este referer-ul, nu URL-ul curent.
Cu toate acestea, având în vedere că pot accesa referer-ul prin funcția wp_get_referer
, cred că pot construi ceva care să folosească parse_url
și parse_str
pentru a obține parametrul tab.
Mulțumesc pentru ajutor
