Výběr avataru komentujícími

Nejprve upozorním, že výběr avataru se netýká zaregistrovaného uživatele, který by si tak ke svému účtu přidal vlastní avatar, tak tomu bohužel není. Jedná se ryze o přidání avataru ke komentáři, který si komentující pro daný komentář vybere, ať již registrován je či není.

Může to být nicméně zajímavé oživení komentářů, nabídka vlastních avatarů, které si […]

Validace kódu WordPressu – plugin Validation Helper

Ráda podporuji české tvůrce pluginů, takže když jsem na webtrhu narazila na lelkounův příspěvek, že vytvořil plugin pro (HTML) validaci kódu WordPressu, rozhodla jsem se, že se o tom zmíním i zde.

Plugin převede XHTML kód do validního HTML, můžete plugin vyzkoušet a připojit případné připomínky přímo na webu tvůrce (lelkoun.cz). Určený je pro WordPress 2.9 […]

Jak nakopnout WordPress správným směrem

Tento návod je určen spíše pro začátečníky, kteří si právě nainstalovali WordPress. Je pravděpodobné, že pokročilí uživatelé budou znát většinu informací, které zde uvádím. Nicméně i těm doporučuji přečíst si článek – už jenom kvůli ověření a osvěžení nabytých vědomostí.
Čistě nainstalovaný redakční systém WordPress je prázdný, postrádá celou řadu funkcí a potřebuje změnit […]

Validace kódu WordPressu

Dnes jsem konečně oficiálně zveřejnil plugin ušitý pro WordPress zvaný Validation Helper. Tentokrát se opravdu nejedná o žádný apríl, byť by tuto myšlenku mohlo podporovat dnešní datum.
Validation Helper je určen pro všechny uživatele, kteří nejsou spokojeni s nevalidním zdrojovým kódem své šablony. Plugin automaticky převádí XHTML kód na HTML, čímž se odstraní většina chyb. V […]

Rozdělení textu do dvou sloupců

Potřebujete-li někde uplatnit rozdělení textu do dvou sloupců, respektive nerozdělené hlavičky a dvou sloupců, pak oceníte plugin WP Columns.

Administrace pluginu se přidá poněkud netradičně do bočního menu přímo pod hlavičku Pluginy (a ne pod Nastavení), kde si určíte, jakou podobu bude mít „rozdělovač“, defaultně je to: /—/. Zde si také můžete nastavit CSS třídu, […]

IP-to-Country pro WordPress

Pro WordPress existuje celá řada pluginů pro geolokaci uživatele (to méně vznešenými slovy znamená, že k dané IP adrese přiřazuji stát a v lepším případě i město). Jak jsem však zjistil, všechny mají jeden zásadní nedostatek: jsou určeny pro uživatele WordPressu, ne pro jeho programátory. Pokusil jsem se tento nedostatek napravit pluginem IP-to-Country, který neposkytuje […]

Simple Download Monitor pro WordPress

Simple Download Monitor je mým prvním pokusem o vytvoření pluginu pro publikační systém WordPress. Napsal jsem ho proto, že jsem chtěl mít nějakou statistiku o počtu stažení jednotlivých souborů a přitom nemusel vytvářet speciální databázi souborů ke stažení, modifikovat odkazy a podobně. Prostě jsem chtěl pokračovat v tom, jak soubory publikuji teď – pomocí FTP […]

Postavme si téma část 1.

Na úvod chci napsat něco o tématech obecně. Téma je vlastně HTML šablona, která obléká, jako kabát, redakční systém WordPress. Můžete si tedy vytvořit jakýkoliv HTML layout a ten si do tématu poskládat. Budu počítat s tím, že vy, kteří tento článek čtete jste schopni nějaký ten layout vytvořit, zaměřím se na konstrukci tématu jakožto […]

Jak na české formátování čísel ve WordPressu

WordPress je výborný publikační systém, a to nemám na mysli jen systém samotný, ale i češtinu, která je pro WordPress k dispozici. Bohužel zde máme jednu maličkost, která k dokonalosti chybí. A tou je formátování čísel, které i při použití češtiny odpovídá anglickým konvencím, tedy desetinná místa odděluje tečka a tisíce odděluje čárka. V češtině to ale má být jinak, desetinným oddělovačem má být čárka, kdežto oddělovačem tisíců má být mezera. (pro hnidopichy, moc dobře vím, že oddělovačem tisíců by neměla být normální, ale tenká mezera, to se ovšem na webu realizuje ještě hůře než normální mezera)

Ono se to snadno napíše, krásná teorie, pokud si ale myslíte, že jen tak vlezete do zdrojáků češtiny pro WordPress a položky si opravíte, okamžitě se vystavíte problému. Totiž webové stránky (stejně jako drtivá většina aplikací pracujících s textem) odstavce zalamují do jednotlivých řádků podle mezer. Což je v pořádku právě do té doby, než Vám mezery začnou oddělovat tisíce v číslech. Protože řádek uprostřed čísla zalomit nechcete. Číslo potřebujete držet pohromadě. Řešení se nazývá tvrdá mezera a tím se řítíme do největších hlubin trapné chyby, se kterou se musíme poprat. (doplnění informace o tenké mezeře z předchozího odstavce: tenká mezera reperezentovaná entitou   je totiž v HTML zlomitelná přes řádek, tak proto ji nemůžeme použít pro formátování čísel)

Ne, chyba se nenachází v češtině pro WordPress. Nenachází se ani ve WordPressu samotném. Je skryta ještě níže, přímo v samotném PHP. Totiž, WordPress naprosto správně pro formátování čísel používá nativní funkci PHP, která se jmenuje number_format(). Potíž je v tom, že tato funkce neumí pracovat s tvrdými mezerami, a to ani s řetězcem   ani s pevnou mezerou zapsanou jako ASCII znak o hodnotě 160. Pokud ji předhodíte, že má použít pro oddělení tisíců tvrdou mezeru, ve výsledku místo ní dostanete čtvereček. To je naprosto nepoužitelné.

A naprosto trapné na celé situaci je, že problém s touto funkcí je reportovaný do PHP již mnoho let (viz velmi dlouhý log u popisu této funkce), netrápí jenom Čechy, ale i mnohé početnější národy používající stejné formátování, jmenujem třeba Francii nebo Rusko. A nikdo s tím nic nedělá.

Rozhodl jsem se, že se se situací nesmířím. Na svém webu chci mít čísla naformátovaná správně česky. Asi bych uměl najít zmíněnou funkci ve zdrojácích PHP a zkompilovat si vlastní modifikaci, bohužel PHP u svého web-hostera nevyměním, takže situaci musím vyřešit o úroveň výše, ve WordPressu. Nejedná se však o situaci, kterou by šlo vyřešit plug-inem, ale musel jsem sáhnout napřímo do střev samotného WordPressu. To ve výsledku znamená, že s každým upgradem WordPressu, byť tím nejmenším, to musím udělat znova.

Vlevo u seznamu souborů ke stažení vidíte, že to vše funguje správně. Velikost souborů má desetinnou část oddělenou čárkou a u počtu stažení je vždy oddělovačem tisíců nedělitelná mezera, takže se nestane, že by se číslo rozdělilo na více řádků. Tak to má být.

Pokud chcete, aby i na Vašem webu byla čísla správně česky naformátována, můžete si stáhnout následující archiv. V něm najdete tři soubory, které nahrajte (do příslušných adresářů) Vaší instalace WordPressu přes ty původní. Pozor: soubory v tomto archivu jsou v této chvíli pro WordPress verze 2.9.2 a pokud máte jinou verzi WordPressu, tak to nedělejte, WordPress by mohl přestat fungovat. Modifikace je určena jen pro verzi 2.9.2, pro žádnou jinou.

Poznámka: Soubor ke stažení byl vložen do příspěvku, pokud jej chcete stáhnout, musíte příspěvek otevřít.

Dobrá zpráva na závěr: tento problém jsem již před časem nahlásil vývojovému týmu WordPressu a lze předpokládat, že nějakým způsobem se s ní popasují a v budoucnu bude možné, aby oficiální čeština měla korektní formátování čísel tak, jak má být. Zatím se řeší, jakým způsobem toto zařídit, jestli tak, jak jsem to udělal já, nebo nějakým filtrem, ale to je méně podstatné; nyní je milestone nastavený na verzi 3.0, tzn. vývojový tým by to chtěl mít v této verzi již vyřešené (ale na druhé straně si můžete v logu všimnout, že už se oprava plánovala pro verzi 2.9 a pak se to zrušilo). Tak držme palce, že řešení popsané a nabídnuté ke stažení v tomto článku je pouze dočasným workaroundem.

Seznam uživatelů nabízejících placenou podporu pro WordPress

Vzhledem k tomu, že se velmi často v různých fórech objevuje poptávka po službách ohledně WordPress, která překračuje možnosti běžné podpory zde na fóru, rozhodl jsem se vytvořit seznam lidí, kteří nabízí své služby za úplatu. Za takové služby se dá považovat: překlady šablon, grafické návrhy a tvorba theme, správa webů, instalace a pokročilá konfigurace […]