Modifikácia parametrov v URL

Pri tvorbe webov môžete občas naraziť na problém ako poslať stránke nejaké informácie, napríklad ID článku ktorý sa má zobraziť, ale kludne aj oveľa komplikovanejšie a obsiahlejšie informácie, ako napríklad kategóriu článkov, ktoré sa majú zonraziť, kritérium podľa čoho ich zoraďiť, poprípade aj z ktorého obdobia majú byť… Toto sa často robí tak, že tieto parametre zadáte priamo v URL.

To v podstate nie je žiadny problém, však len pridáte k URL nejaké parametre…

http://www.example.com/?id=123

Ak však tieto URL generujete dynamicky pomocou PHP, tak môže nastať viacero problémov. Napríklad, čo ak už v URL máme nejaké parametre a ďalší chceme pridať. Vtedy nestačí k URL pridať reťazec ?premenna=nieco, ale treba pridať &premenna=nieco. Čiže pred pridaním nejakého argumentu musíte skontrolovať ako daná URL vyzerá. Takisto si musíte dať pozor, či už daný argument v URL neexistuje… Čiže z veľmi jednoduchej veci sa za chvíľu vec trošku komplikovaná.

Ak však používate WordPress, tak môžete použiť funkcie add_query_arg a remove_query_arg, ktorých použitie je veľmi jednoduché a ktoré pracujú buď s URI uloženou v $_SERVER[„REQUEST_URI“], alebo URL/URI ktorú im explicitne zadáte.

Napríklad, zoberme si $_SERVER["REQUEST_URI"] == '/index.php':

echo add_query_arg('ID', '100'); // vypíše /index.php?ID=100
echo add_query_arg(array('category' => 'articles', 'order_by' => 'date')); // vypíše /index.php?category=articles&order_by=date
echo remove_query_arg('category', '/index.php?category=articles&order_by=date'); // vypíše /index.php?order_by=date

Ako vidíte, tak použitie týchto dvoch funkcií je fakt veľmi jednoduché a navyše aj veľmi praktické. Viac info nájde priamo na dokumentačných stránkach spomínaných funkcií a ak nepoužívate WordPress tak si ich môžete vytiahnuť z jeho zdrojákov.


Posted

in

by

Comments

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *