Ottenere i Parametri URL dal referer
Non sono sicuro al 100% se questa sia una domanda PHP o specificamente WordPress...
Sto implementando la WordPress Settings API con una pagina di impostazioni a schede. Ho aggiunto un pulsante 'reset tab', ma poiché la validazione viene eseguita su una pagina separata (options.php) non riesco a capire in quale scheda mi trovo - senza aggiungere la scheda come campo nascosto, cosa che vorrei evitare.
Ho trovato la funzione wp_get_referer()
, ma questa mi restituisce l'URL completo - non sono sicuro di come estrarre il parametro tab=tab1
come variabile.
Aggiornamento - Risposta:
$url = parse_url(wp_get_referer());
parse_str($url['query'], $path);
$tab = $path['tab'];
Come indicato nelle risposte, è poi necessaria una validazione.

Se tab=tab
è presente nell'URL allora:
global $_GET;
var_dump($_GET); // solo per debug; Dovresti essere in grado di vedere ciò che ti serve.
Questo è PHP puro. Se hai davvero bisogno di elaborare quella stringa (non so perché dovresti farlo) usa parse_url
e poi utilizza parse_str
sulla parte query
di essa.
$path = parse_url($url);
$path = parse_str($path, $output);
var_dump($output); // ancora, solo per debug
Per completezza, per favore non utilizzare nessuno di quei valori senza validarli.
Ho frainteso qualcosa?

Sfortunatamente, non posso usare $_GET
poiché l'URL da cui sto cercando di ottenere il parametro è il referer, non l'URL corrente.
Tuttavia, dato che posso accedere al referer attraverso la funzione wp_get_referer
, penso di poter mettere insieme qualcosa che utilizzi parse_url
e parse_str
per ottenere il parametro della tab.
Grazie per l'aiuto
