Správné routování při filtrování & nastavení presenteru podle parametru

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
Zuben45
Člen | 268
+
0
-

Zdravím,
měl bych dotaz, jak nejlépe naroutovat parametry při filtrování, aby je google neindexoval kvůli duplicitě/pageranku ?

Někde jsem četl, že je dobré použít hash před parametrami, to jsem také vyzkoušel, ovšem když jsem si pak měnil parametry v url (např. cena od/do) tak se již nevykonával požadavek. Potřeboval bych, aby se url mohla bez problému i předávat mezi uživateli.

Moje aktuální routa:

$router[] = new Route('[<locale=cz cz|sk>/]<slug>[#filter[&page=<page>][&order=<order=PRODEJ>][&move=<sortMove=ASC>][&od=<amountFrom=0>&do=<amountTo>]]','Produkty:rady');

Vím že Nette přispívá k SEO ⇒ kanonizace, ale nejsem si jistý, jestli to platí i při filtrovacích parametrech.

Budu rád, za každou radu, děkuji :)

EDIT: A když už jsem u těch rout, je možné podle parametru (v mém případě slug) nastavit presenter/action ? Ještě jednou děkuji :)

Editoval Zuben45 (29. 1. 2016 21:37)

Myiyk
Člen | 321
+
0
-

Kanonizace se neprovádí pouze při AJAX a redirectu, nebo pokud to ručně vypneš. Jinak vždy.

Filtr by možná bylo pohodlnější si předávat jako pole.

$router[] = new Route('[<locale=cz cz|sk>/]<slug>[#filter=<filter>]','Produkty:rady');

Na ten slug musíš použít filter IN, OUT

Edit: řešení podobného problému před pár dny na foru

Editoval Myiyk (30. 1. 2016 9:49)

Zuben45
Člen | 268
+
0
-

díky moc, určitě vyzkouším :)