web

Hivatkozások megadása egy webhelyen belül

Forrás: Dreamweaver MX Help - Working with multiple pages - About document locations and paths (Nem pontos fordítás, részben rövidített, részben kiegészítet szöveg.)

Abszolút és relatív hivatkozások

Egy weboldalon található hivatkozások (linkek) alapvetően kétfélék lehetnek: abszolút vagy relatív hivatkozások. Az előbbiek teljes URL-lel határozzák meg a címet (pl. http://www.domainnev.org/oldalak/oldal1.html) és akkor használatosak, amikor a saját webhelyünkön kívül található dokumentumra hivatkozunk. A webhelyen belül relatív a hivatkozásokkal ajánlatos megadni az elérhtőségeket. Ez azonban több módon is lehetséges.

Oldalhoz* viszonyító útvonalak

*Az eredeti szöveg a "dokumentum" kifejezést használja, de én az egyszerűség kedvéért inkább az "oldal"-t használom. Ettől függetlenül a leírtak természetesen nem csak a weboldalak közötti, hanem a webhely egyéb alkotóelemeire mutató hivatkozásokra is igazak.

A legtöbb webhelyen az oldalhoz viszonyító útvonalak a legalkamasabbak a belső hivatkozások megadására. Különösen hasznosak, mikor a hivatkozást tartalmazó és a hivatkozott oldalak ugyanabban a mappában találhatóak és várhatóan együtt is maradnak. Hivatkozhatunk persze egy másik mappában található oldalra is az aktuális és a hivatkozott dokumentum közötti mappaszerkezetet leíró útvonal megadásával.

Az oldalhoz viszonyító útvonal-megadás alapvető módja az, hogy az abszolút hivatkozásból elhagyjuk azt a részt, ami mindkét oldalnál azonos és csak az eltérést leíró részt hagyjuk meg.

Ha a hivatkozott fájl ugyanabban a mappában van, egyszerűen csak be kell írni a fájl nevét (pl. gumikacsa.html).

Ha a hivatkozott fájl az aktuális oldal almappájában található, meg kell adni a mappa nevét, majd egy perjelet (/) és aztán a fájl nevét (pl. kacsa/gumikacsa.html).

Ha a hivatkozott fájl az aktuális oldal fölötti mappában található, a fájlnév elé be kell írni két pontot és egy perjelet (../), ahol a ".." azt jelenti, hogy "egy szinttel feljebb a mappaszerkezetben". (Tehát annyiszor két pont, ahány szinttel feljebb található a hivatkozott fájl. Így például kettővel feljebb így: ../../gumikacsa.html)

Megjegyzés Dreaweaver használóknak: mindig el kell menteni az aktuális oldalt, mielőtt megadnánk egy oldalhoz viszonyító hivatkozást, ugyanis az ilyen hivatkozás nem működik meghatározott kiindulópont nélkül. Ha mentés előtt hozzuk létre a hivatkozást, a Dreamweaver egy ideiglenes abszolút hivatkozást fog használni, ami a file:// kifejezéssel kezdődik. Mentés után a program átírja a hivatkozást relatívvá.

Mikor fájlok egy csoprortját helyezzük át - például máshova teszünk egy mappát, amiben egymásra hivatkozó oldalak vannak -, akkor ezeknek az oldalaknak a oldalhoz viszonyító hivatkozásait nem kell frissíteni. Azonban ha egyedi fájlokat helyezünk át, amik ilyen hivatkozást tartalmaznak vagy rályuk ilyen hivatkozás mutat, akkor ezeket a hivatkozásokat frissítenünk kell. (Ha az áthelyezés a Site panel segítségével végezzük, a Dreamweaver automatikusan frissíti a hivatkozásokat.)

A gyökérkönyvtárhoz viszonyító útvonalak

A gyökérkönyvtárhoz viszonyító hivatkozás a leírja a teljes elérési utat a webhely gyökerétől a hivatkozott dokumentumig. Olyankor lehet szükség rá, ha egy nagy webhelyen dolgozunk, ami több szervert is használ, vagy egy szerveren, ami több webhelyet is tárol. Azonban ha valaki nem ismeri az ilyen útvonal leírásokat, talán érdemesebb az oldalhoz viszonyító eljárást alkalmaznia. A gyökérkönyvtárhoz viszonyító hivatkozás egy perjellel kezdődik, ami a gyökérkönyvtárat jelenti. Például a /support/tips.html egy ilyen hivatkozás a tips.html oldalra, ami a gyökérkönyvtárban elhelyezett support mappában található.

A gyökérkönyvtárhoz viszonyító útvonal megadás a legjobb módszer hivatkozások megadására olyan webhelyeken, amelyeken a html fájlokat gyakran kell egyik mappából a másikba helyezni. Ha áthelyezünk egy olyan oldalt, ami csak a gyökérkönyvtárhoz viszonyított hivatkozásokat tartalmaz, akkor ezeket a hivatkozásokat nem kell frissíteni. Például ha a html oldal így hivatkozik önálló fájlokra (mint mondjuk az oldalon megjelenő képek), akkor az oldal áthelyezése után is működni fognak a képekre mutató hivatkozások (hiszen a képeket nem helyeztük át, a gyökérhez képest ugyanott találhatóak). Azonban ha - a példánál maradva - a képeket helyezzük át, akkor frissítenünk kell a hivatkozást az említett html oldalon, akkor is ha a képek és és az oldal egyímáshoz viszonyított elhelyezkedése nem változott. Például ha a képek az images mappában találhatóak az oldal pedig a gyökérkönyvtárban és mindkettőt átteszük egy almappába akkor az oldal és az images mappa egymáshoz viszonyított elhelyezkedése nem változott, azonban a gyökérhez képest más az elérhetőségük.

Ha almappákban tárolunk olyan oldalakat, amiken rajta vannak a fő navigációs elemek, (vagy ha Dreamweaverben az oldalak fő részeinek, így pl. a naviágiónak a készítéséhez sablonokat használunk) ugyancsak érdemes így megadni az elérési utakat, máskülönben minden mappából máshogyan kellene hivatkozni a fő oldalakra.

Dreamweaverben a gyökérkönyvtárhoz viszonyító útvonalak megadásához először meg kell határoznunk egy helyi mappát, ami a webhely gyökérkönyvtára lesz (ezt a site definiálásának a része).

Fontos! A gyökérkönyvtárhoz viszonyító hivatkozásokat a szerverek értelmezik nem pedig a böngészők. Így aztán, ha megnyitunk a böngészőben egy helyi oldalt, ami ilyen hivatkozásokat tartalmaz, a hivatkozások nem fognak működni!

Dreamweaverben a Preview in browser (F12) utasítás segítségével meg tudjuk jeleníteni az ilyen oldalt, mivel a program a hivatkozásokat ideiglenesen átalakítja (így az oldalon látszani fognak például a gyökérkönyvtárhoz viszonyított útvonallal megadott képek). Azonban egyszerre csak egy ilyen oldalt tudunk megjeleníteni, ha itt kattintunk egy linkre, a következő oldal hivatkozásai már nem lesznek átalakítva és a böngésző nem tudja követni őket.

Megoldás lehet, ha a gépünkre telepítünk egy szerver programot (pl. Apache) és ezt használjuk az oldalak megjelenítéséhez.

Összefoglalás

Az <a href=""> idézőjelei közt szerplő kifejezés:

http://www.domainnev.org/folder1/gumikacsa.html - abszolút hivatkozás, az aktuális oldalhoz képest a hivatkozott oldal egy másik webhely (www.domainnev.org) folder1 mappájában található

gumikacsa.html - oldalhoz viszonyított relatív hivatkozás, mindkét oldal (aktuális és hivatkozott) ugyanabban a mappában található

subfolder1/subfolder2/gumikacsa.html - oldalhoz viszonyított relatív hivatkozás, az aktuális oldal mappájához képest két szinttel lejebb lévő mappában található a hivatkozott oldal

../../gumikacsa.html - oldalhoz viszonyított relatív hivatkozás, az aktuális oldal mappájához képest két szinttel feljebb található a hivatkozott oldal

../kacsa/gumikacsa.html - oldalhoz viszonyított relatív hivatkozás, az aktuális oldal mappájához képest egy szinttel feljebb lévő kacsa nevű mappában található a hivatkozott oldal

/images/logo.gif - a gyökérkönyvtárhoz viszonyított relatív hivatkozás, a kép az images mappában található, az pedig a gyökérkönyvtárban helyezkedik el. A gyökérkönyvtárhoz viszonyító hivatkozásokat a szerverek értelmezik nem pedig a böngészők.

file:///mappa1/mappa2/gumikacsa.html - (ideiglenes) abszolút hivatkozás, ilyet hoz létre a Dreamweaver, ha az aktuális oldal, ami a hivatkozást tartalmazza, még nem lett elmentve

2004. június 24.

Fel!