ugrás a tartalomhoz

Lapozhatóság szép URL-ekkel

csaba86 · 2011. Már. 8. (K), 11.07
Sziasztok!

Rengeteget gondolkoztam, hogy hogyan lehetne ilyen szép url-ekkel megoldani a lapozhatóságot.
Kiindulásként a valami.hu/lista/1 stb... lett (a szám az oldalt jelöli). Ez így szép is lett, de aztán jött a szűrés, keresés igénye, de erre nem tudok kitalálni semmit, hogy értelmes is legyen az url.
Jelenleg ha nem kell szűrni, keresnie semmit, akkor az url, a fentebb írt példára hasonlít.
Ha kell, akkor megint más, pl valami.hu/lista/nevek/pistike/2

Szeretnék egy egységes rendszert kialakítani, de nincs ötletem, hogy hogyan lenne ez szép és használható. Sok gondot okoz, hogy beazonosítsam mikor melyik "paraméter" mire használatos, így bonyolulttá válik a kódom.
Az meg elég gagyinak néz ki, hogy valami.hu/lista/minden/minden/1

Hogy lehetne akkor az ilyen lapozós szűrős url-ekre valami szép megoldást találni, ha van tanácsotok, akkor szívesen fogadom. Ja és mit a form action-jébe én simán azt írom, hogy /lista, ez jó így?
 
1

GET argumentumok

Török Gábor · 2011. Már. 8. (K), 11.11
Egy adott nézet (lista vagy részletes) módosított nézetei (lapozás, szűrés) kezelésének egy lehetséges, és általam preferrált módja a GET argumentumok használata.

/nevek/név entitások listája
/nevek/?p=2 - név entitások listája, lapozott, másik oldal
/nevek/?filter=Pis - név entitások listája, szűrt, a szűrő a „Pis”
/nevek/pistike/ - konkrét „pistike” entitás
3

Így azért nem szándékoztam

csaba86 · 2011. Már. 8. (K), 13.27
Így azért nem szándékoztam megoldani, mert nem akarom keverni a "szép urleket" meg a get-es értékeket.

Úgy látom/érzem, más megoldás úgysem lesz, ami ettől szebb, bár sose tudni.
Szerintem lehetne még a valami.hu/keresoszo=pisti/p=2 is, bár ez meg olyan, hogy nehezen átlátható.

A Tiéd a nyerő eddig, úgy gondolom nem egyszerű az ilyet megcsinálni ilyen urlekkel, csak így, keverve. Kereső szempontjából is lehet jobb, hogy tudja ez egy ilyen kereső és nem öli agyon a szervert a feltérképezéssel.
4

= karakter

firith · 2011. Már. 8. (K), 13.35
szerintem az egyenlőség jelet nem használhatod az url-ben, mert az értékadás a get paramétereknek. Nem vagyok benne biztos, de talán az apache nem is szereti, ezért picivel jobb megoldás amit én írtam (tehát a kettőspont) mert az nem "foglalt" karakter
5

Tudom használni, egy oldalon

csaba86 · 2011. Már. 8. (K), 13.41
Tudom használni, egy oldalon így működik, de éreztem, hogy nincs rendben itt valami, ezért érdeklődöm most. A kettőspont(:) valóban értelmesebb erre a használtra.
Köszi a segítséget.
8

Nem kevert

Török Gábor · 2011. Már. 8. (K), 14.10
Ácsi. Szó sincs itt semmiféle keverésről, itt egy létező technológia ésszerűen és korszerűen van felhasználva. A kilométer hosszú „SEO-friendly” URL-ek egyáltalán nem szépek, mindinkább károsak, mert semmilyen értelmet nem hordoznak a látogató számára azon felül, hogy valaki szerint majd ettől lesz előkelő a site rangsorolása.

Az általam vázolt megoldás nem úttörő, számos keretrendszer ezt a mintát használja (pl. Django). Rövid, egyszerű, érthető. A keresők számára is ideális, pont az általad említett ok miatt, ugyanis algoritmikusan könnyen értelmezhető.
2

nevesített paraméterek

firith · 2011. Már. 8. (K), 13.23
Ha jól emlékszem, CakePHP-ben erre nevesített paramétereket használnak, ahol a szintaktika a következő:
változó:érték
tehát mondjuk a hírek kiíratása dátum szerint fordított sorrendben, 3.oldal pl lehet így:
http://example.com/news/list/page:3/order:date/sort:desc
nem tudom ez a megoldás mennyire tetszik neked?! symfonyban get paraméterek vannak erre a célra, más framework nem tudom hogy csinálja
6

Mindegyik tetszik

csaba86 · 2011. Már. 8. (K), 13.43
Szóval akkor a "nagy frameworkök" sem tudtak jobbat kitalálni, ez megnyugtató azért, így maradnak ezek a megoldások, mindegyik tetszik. :)
7

GET paraméter

firith · 2011. Már. 8. (K), 14.02
amúgy én is a get paraméterre szavazok, mert a szép/tiszta/... url-nek az erőforrás elérés a lényege, a szűrésekre pedig a GET paramétereket találták ki. csak mod_rewrite előtti időszakban nem nagyon volt más megoldás (persze mindez csak saját vélemény, meglátás)
9

Köszönöm szépen

csaba86 · 2011. Már. 8. (K), 14.40
Köszönöm szépen a válaszokat, jó érzés tagja lenni a Weblabornak. Egyrészt, mert sok okos ember segít felnyitni egy kevésbé (hozzátok képest ostoba:) okos ember szemét, másrészt a baráti körömben sincs szinte senki (ez az én problémám) akivel ilyet meglehetne beszélni. Rendeltem is egy bögrét azonnal, picit támogatva az oldalt. ;)