Feltetted mellé az ikonokat
Feltetted mellé az ikonokat is? http://drupal.org/project/languageicons
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
ezek megvannak?
nyelv beállításoknál be van állítva 2 nyelv gondolom, meg van adva hogy az egyik az alapértelmezett, és hogy pl az url-ből állapítsa meg a nyelvi prefix alapján az aktuális nyelvet... (admin/settings/language/configure/language - Útvonal előtagok nyelvi alapértelmezéssel, ami akkor működik ha a admin/settings/language/edit/en oldalon az Útvonal előtag ban be van állítva az en, magyarnál hu, stb stb)
ezek megvannak?
Drupal full-stack developer at Wunderman Thompson Budapest
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Na meg nem is XHTML Strict valid - van JS-alapú megoldás is
Arról nem is beszélve, hogy a target="_blank"
nem is XHTML Strict-valid már ([link], "The target attribute is deleted from HTML 4.01 Strict and XHTML 1.0 Strict.").
Lehetséges opcióként - ha mindenképp ezt szeretné valaki alkalmazni - érdemes lehet jQuery-vel megcsinálni ugyanezt, és így a validitás is megmarad (a base href-es kerülő megoldást én NEM igazán erőltetném, sőt):
$("a.external").attr("target", "_blank");
Természetesen ez csak az external
class-szal ellátott linkekre működik jól. Pl.: <a href="http://google.hu" class="external">Google</a>
Viszont annyit még hozzátennék, hogy az új fülön/ablakban megjelenő linkek elé esetleg érdemes lehet betenni egy erre utaló kis ikont, lásd pl. ingyenesen elérhető ikonok: [link], [link].
Ezzel legalább jelezhetjük a felhasználó felé (első klikknél mondjuk még nem biztos, hogy egyértelmű, aztán rájön az ikon jelentésére), hogy milyen viselkedést várhat el ezektől a linkektől. Pl. az external (vagy hasonló) class-hoz hozzáadnám a megfelelő tulajdonságokat, amik az ikon megjelenítésére szolgálnak.
Szerk.: elnézést, most látom, amit Petik linkelt, az External Links modul épp a fentebb leírt megoldásokat hivatott alkalmazni jQuery-vel, azzal kiegészítve, hogy ez "automatikusan elvégzi" (nem kell explicite hozzáadni plusz osztályt) annak felderítését, hogy az oldal belső vagy külső tartalomra mutat-e.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Felőlem nyugodtan
Felőlem nyugodtan használhatod :), nehogy félreérts, nem arra céloztam, hogy ne használd, mert irgumburgum. :) Egyébként remélem most már látod a JavaScript-kódot is, ami az egésznek a lényege.
Részemről akár az egész kódot bemásolhatod, de felhívtam a figyelmed, hogy létezik jobb megoldás is, és hogy adnod kellene előbb egy esélyt pl. a Colorboxnak, mert valószínűleg könnyebben megoldható a segítségével, amit szeretnél. Ha nem megy, segítünk.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Lehetséges megoldásra javaslat/szemléltetés
A machine name-re való átírogatásra vonatkozó objektumot és metódusokat a /misc/machine-name.js
fájlban láthatod.
Ha pl. megnyitod az /admin/structure/types/add
oldalt, akkor ez is betöltődik.
A transliterate
függvény alakítja át a szöveget, ez pedig egy replace patternt (settings.replace_pattern) vár, meg egy karaktert, amire le kellene cserélni a megfelelő karaktereket (settings.replace).
Így néz ki a függvény:
/** * Transliterate a human-readable name to a machine name. * * @param source * A string to transliterate. * @param settings * The machine name settings for the corresponding field, containing: * - replace_pattern: A regular expression (without modifiers) matching * disallowed characters in the machine name; e.g., '[^a-z0-9]+'. * - replace: A character to replace disallowed characters with; e.g., '_' * or '-'. * - maxlength: The maximum length of the machine name. * * @return * The transliterated source string. */ transliterate: function (source, settings) { var rx = new RegExp(settings.replace_pattern, 'g'); return source.toLowerCase().replace(rx, settings.replace).substr(0, settings.maxlength); }
A default replace pattern és a karakter, amire cserél, látszik a
jQuery.extend(Drupal.settings, .......)
résznél a forráskódban:
"replace_pattern":"[^a-z0-9_]+","replace":"_"
Nos, a fenti transliterate függvényt át kellene kicsit alakítanod.
Legegyszerűbb az lenne, ha egy ékezetátalakító metódust betennél ebbe az objektumba, hasonlóan a transliterate-hez, majd ezt a függvényt a transliterate-en belül utolsó sor ELŐTT meghívnád úgy, hogy a "source" változót adod át neki paraméterül.
Tehát ilyesmire gondolok (a kommentbe tett pontok azt jelzik, hogy előtte kód vagy komment van):
// ........ transliterate: function (source, settings) { var rx = new RegExp(settings.replace_pattern, 'g'); // IDE KERÜL a plusz függvényhívás source = this.remove_accents(source); // innentől ismét az eredeti kód... return source.toLowerCase().replace(rx, settings.replace).substr(0, settings.maxlength); }, // FIGYELEM! Ha ezután teszed, ne felejtsd el a vesszőt!! // ........ remove_accents: function (source) { // ide kerül az ékezet eltávolítására szolgáló kód!! // ... return source; } };
Ékezet átalakításával kapcsolatban hasznos lehet:
http://4rapiddev.com/javascript/javascript-remove-vietnamese-accents/
Persze a remove_vietnamese_accents függvénynevet változtasd meg, és tegyél bele innen kimaradt ékezetes karaktereket is, mint pl. az ó, ö, ő, ü, ű.
- A hozzászóláshoz regisztráció és bejelentkezés szükséges
Jol ertem?
Jol ertem hogy a 2 kulonbozo sminkbol szedegetted ossze? Igy felalombol nagyhirtelen ugy tunik hogy a regioiddal van baj, talan nem talaja oket vagy valami hasonlo ... Gondolom azert is emlegeti a hibajelzesben pl. a footer_secondcolumn szavat es a tobbit ...