Po novoroční verzi v podobě Release candidate 2 se všeobecně čekalo, že je oficiální vydání WordPressu 3.1 už definitivně na spadnutí (obvykle to pak trvá ještě cca týden). Pokud ale vývoj sledujete trochu pozorněji, tak jste si nemohli nevšimnout poněkud překvapivé třítýdenní odmlky. Včera pak konečně vyšla nová testovací verze Release candidate 3 a snad už se tedy během několika dní opravdu dočkáme. Co se vlastně stalo?
Postupně se totiž objevilo několik zásadních problémů v implementovaných funkcích pro využití Ajaxu na administračních stránkách s výpisem obsahu webu (např. příspěvků, komentářů, atd), což donutilo vývojáře zvážit celou situaci a nakonec raději odebrat téměř celou slibovanou funkcionalitu, která měla být jedním z hlavních “tahounů” nové verze. Samotná příčina problémů spočívala v nefunkčnosti nově zobrazovaných výpisů pomocí Ajaxu v kombinaci s využitím hromadných úprav. Dořešení těchto problémů by si však údajně vyžádalo ještě mnohem více času, protože by musely být přepsány mnohé další části WordPressu, což by pak zase vyžadovalo další detailní testování. A to vše těsně před dokončením WordPressu 3.1 (samotná implementace Ajaxu byla zahájena už před několika měsíci a nikdo si v jejím průběhu evidentně nevšiml hrozícího velkého problému), kdy se obvykle už jen ladí drobné chyby a detaily. Podobnou situaci (slepá ulička) zatím u WordPressu nepamatuji, ale snad se Ajaxu dočkáme v některé z příštích verzí.
O co konkrétně jsme tedy ve WordPressu 3.1 přišli? Zjednodušeně řečeno mělo využití Ajaxu ve WordPressu spočívat v tom, že je aktualizována vždy pouze část stránky s výpisem obsahu a nenačítá se po každé provedené operaci znovu celá stránka. Pokud si vezmeme jako příklad výpis příspěvků (menu Příspěvky) a chtěli bychom zde najít všechny příspěvky obsahující slovo “WordPress”, tak toto slovo jednoduše zadáme do pole pro vyhledávání příspěvků a nově by se pak objevilo pouze symbolické točící se kolečko (v pozadí pak probíhají dotazy do databáze), stránka by se nenačítala celá, ale pouze by se za chvilku změnil výpis příspěvků a zobrazily se konkrétní články obsahující slovo WordPress. Tento způsob je rychlejší (načítají se pouze data z databáze a nikoli pokaždé celá stránka) a měl sloužit i pro autory pluginů. To vše ale bylo bohužel pozastaveno a nakonec zůstala pouze možnost řazení obsahu podle jednotlivých sloupců (můžete tedy kliknutím na název sloupce seřadit příspěvky např. podle abecedy) a nový způsob zobrazení stránkování obsahu. Ze zajímavé funkce, která mohla trochu urychlit a usnadnit práci s obsahem webu, tak bohužel zbyly pouze trosky.
Nejoblíbenější hosting pro WordPress WEDOS.cz
Co se dá dělat, mně jen zaráží, že se řeší takovéhle blbosti, které normální návštěvník webu vůbec nevyužije. A co se týče zrychlení nevím, no sice se nebude načítat celá stránka (kterou stejně z 90% tahá prohlížeč z cache) ale zato bude navíc tahat X *.js souborů kvůli ajaxu. Mně by třeba více potěšilo kdyby WP s pár aktivovanými pluginy “nežral” skoro 50M RAM a to úplně zbytečně. Ve verzi 4 už budem s takovou muset používat vlastní virtual s aspoň 200M memory limitem pro bezproblémový chod a hlavně bezproblémovou aktualizaci.
ELiX: Když jsem Ajax ve WordPressu před časem testoval, tak mi sice chvíli trvalo zvyknout si, že se stránka nenačítá celá a trochu to vypadalo, že se nic neděje (chtěl jsem pokaždé znovu klikat), ale nakonec mi to přišlo trochu rychlejší. Takže výhoda to asi opravdu byla, toho JavaScriptu nebylo zase tolik, byl také dost minimalizovaný a načítal se také jen jednou (mimochodem vše funguje klasicky i bez JavaScriptu).
Popisovaný problém sice mnoho uživatelů opravdu nevyužije, ale vývojáři si prostě nemohou pro to 1 % uživatelů (což jsou v případě WordPressu statisíce webů), kteří hromadné úpravy používají, nechat nějaké zásadní chyby.
Každopádně náročnost WordPressu s několika pluginy je cca 30 MB PHP paměti (memory_limit). Často ale není hosting optimalizován (cache, nastavení), takže to pak bohužel vypadá hůře. U ideálně nakonfigurovaného serveru s PHP cache si WordPress vystačí průměrně s 20 MB. Trochu snížit paměťové nároky v případě používání české lokalizace by mohl také tento plugin. A ještě jedna dobrá zpráva nakonec – u jednoho testovacího webu se po nasazení nejnovějšího WordPressu 3.1 využití paměti snížilo (sice nepatrně, cca 2%), ale zastavil se tak alespoň stávající pravidelný nárůst s každou novou verzí…
Tak to je konečně dobrá zpráva, protože i když o tom nikdo “nahlas” nemluví všichni víme, že s každou novou verzí je paměťová náročnost horší a horší.
Jinak co se týče paměti samozřejmně máš pravdu, jenže mněl bych k tomu pár výhrad, které si nikdo zrovna moc neuvědomuje (nebo nechce):
1. Administrace si vezme minimálně 30M ať je hosting nakonfigurovaný jakkoliv. (frontend nějakých 20M ale o tomhle se má cenu bavit jen pokud máš návštěvnost tak 100 lidí za celý den, pokud těch 100 lidí příjde v jednu chvíli , tak je ti i tohle číslo úplně k ničemu, protože pokud nemáš alespoň 500M RAM tak máš s wp smůlu – a tohle je už problém i u placených hostingů o free se nebudu radši ani bavit)
2. V případě aktualizace poskočí ještě o několik mega navíc.
(což je absolutní killer pro většinu freehostingu)
3. Né každý ví jak si upravit wp aby neměl takové nároky, nebo nemá možnost nakonfigurovat si server podle svého uvážení, tyhle návody musí každý hledat a z 98% jsou v cizích jazycích.
Což při větší návštěvnosti rapidně zmenšuje těch “statisíce webů” na pár stovek provozuschopných. Samozřejmně že existujou weby na WP s několika tisícovou návštěvností, ale už nikdo nemluví o tom, že tam WP běží na virtuálu s XG ramkou a za pomocí různých, většinou komerčních nástrojů jako jsou akcelerátory a podobně.
btw: 60% funkcí ve wordpressu je nevyužito ale i přesto se zbytečně načítají do paměti a jakkákoliv cache tomu nezabrání.
Je až s podivem jak složitě může být naprogramován systém, který “jen” tahá text z databáze, to je podle mně věc na kterou by se mněli vývojáři zaměřit, protože už teď na neplaceném nebo levném hostingu je WordPress bohužel jen “single instance”.
ELiX: Dostáváme se už sice trochu někam jinam, ale nevadí, paměť a WordPress je často diskutované téma (viz naše fórum, kde se paměť řeší každou chvíli)…
Ad 1) Moje zkušenosti jsou trochu jiné a při správném nastavení se lze s administrací vejít i do 20 MB (vlastní server). Většina menších projektů (100 – 300 lidí denně) nám funguje na hostingu s memory_limitem 40 MB a stačí to. Doporučuju využívat cache nejen ve WordPressu (pomocí dostupných pluginů), ale i přímo na serveru, ale máš pravdu, že pro většinu běžných uživatelů to není příliš reálné. Na druhou stranu existuje i mnoho dotupných hostingů, které mají výchozí memory_limit 64 – 128 MB (viz naše reklama v pravém sloupci), což postačí na rozvoj webu poměrně dlouho… Každopádně dnešní bezproblémové minimum u standardně nakonfigurovaného serveru je spíše 40 MB (u WordPressu 2.9.x šlo ještě o 32 MB). Větším problémem v případě návalu návštěvníků je pak spíše databáze…
Ad 2) Ano, automatická aktualizace WordPressu zabere ještě více paměti a v kombinaci s českou verzí je to “zabiják” hostingů s nastaveným memory_limitem 32 MB.
Ad 3) Máš velký web, musíš se více starat :-) Hledat a zkoušet nebo si někoho zaplatit. Hranice, kde začínají problémy a přestává stačit běžný hosting (i za použití cache) je podle mě kolem 2000 návštěv denně. Ale je to individuální a opět záleží na použitých pluginech. Nedávno jsem viděl jeden na zakázku vytvářený plugin, který se s databází vůbec nemazlil a dokázal i velmi výrazně navýšit potřebu PHP paměti.
Takže paměť a WordPress je určitě do budoucna jedno z hlavních témat (a vývojáři to snad budou i průběžně řešit). Ale nesouhlasil bych se zbytečnými funkcemi. Naopak se mi zdá, že WordPress osekává co může (importy se stávají samostatnými pluginy, odebrány budou patrně i pluginy Akismet a Hello Dolly a další funkce přejdou do tzv. “core plugins”). Některé funkce lze také jednoduše vypnout v souboru wp-config.php a dále se pak už nenačítají (např. starší verze příspěvků). Protože je ale WordPress vlastně jedno velké API, tak se velká část jádra načítat musí, aby bylo možné používat vlastní funkce a vytvářet nové pluginy. Uvidíme, kam bude vývoj nakonec směřovat, myslím že už WordPress 3.2 hodně napoví…
co cestina, jelikoz se uz blizi, tak predpokladam ze uz finisujete.???
K té paměti: u nás máme denně cca 3-4tis. návštěv (týdenní kolísání), mnoho pluginů je aktivních (protože jsou potřeba) + Hyper Cache = 23,5 MB paměť (memory usage) a spolehlivý onlinehosting ;-)
Řešení paměťových nároků nás potkalo při překročení 2000 návštěv za den.
Nechci aby to vypadalo, že chci nějak rejpat, WP mám rád a používám ho i tam kde bych nemusel, a netvrdím, že je to špatný systém jen mi jde o to že dříve nebyl problém nainstalovat WP na jakýkoliv free hosting a jel, třeba jen s určitým omezením ale jel. Což se v posledních verzích už říct nedá.
Argumenty ohledně paměti které tady padly jsou sice správné ale jen za předpokladu že jedete na placeném hostingu. To se ale netýká toho o čem se tady celou dobu bavím.
btw argumentovat návštěvností za celý den je špatné, každý kdo umí používat kalkulačku zjistí že i při několika tisícové návštěvě se jedná o např. 1 návštěvníka každých 30-40 vteřin což vyjde úplně nastejno jako by to byl 1 návštěvník za celý den. Jde totiž hlavně o to kolik lidí je online najednou to pak využitá paměť vypadá trochu jinak.
A takhle by tato diskuze mohla pokračovat do nekonečna, mohl bych uvést známé problémy např. s modem rewrite které nikdo neřeší nebo s nelogickou lokalizací která je už taky dlouho známa a neřešena, jen mi šlo hlavně o ten fakt že se poslední dobou hraje na vzhled, přívětivost a vychytávky pro uživatele na úkor použitelnosti. Což je podle mně špatné,
john: Aktuání stav překladu můžete sledovat zde. Ale není možné to brát definitivně, protože často jde jen o drobné změny, které tam pak rychle naklikáme. Sice je část přeložených řetězců stále ještě mimo online aplikaci (zejména kvůli testování a diskuzi), ale myslím, že čeština pro WordPress 3.1 vyjde relativně brzy po originální anglické verzi (o podrobnostech ještě budeme informovat).
ELiX: Já bych zase nechtěl WordPress nějak příliš obhajovat, protože své chyby určitě má. Problém je podle mě také v tom, že české freehostingy (a levné hostingy) ustrnuly spokojeně na úrovni dosažené před několika lety, zatímco WordPress se rozvíjel a využívá mnoho aktuálně dostupných technologií.
Ano, zátěžová návštěvnost je důležitá (vždy když vyjde nová verze WordPressu, také sotva stíháme nápor návštěvníků), ale vycházím z nějakého standardního rozdělení návštěvnosti během dne. Pokud má ale někdo web o teleshoppingu a během 10 minut po reklamě v televizi se mu tam nahrnou stovky návštěvníků, tak bude mít asi jiné problémy než klasický blog (a přitom mohou mít denní návštěvnost stejnou).
WordPress má mnoho chyb, ale také spoustu výhod, kvůli kterým ho tady všichni využíváme :-) A některé problémy prostě vývojáři příliš neřeší, protože jsou hodně specifické (české freehostingy) nebo je třeba nejdříve vyřešit jiné. WordPress si hraje hodně na vzhled a uživatelskou přívětivost, a i proto je tolik rozšířený. Lidé raději sáhnou po jednoduše vypadajícím WordPressu než po jiném “nabušeném” systému, který může být podle odborníků mnohem lepší a flexibilnější, ale budou se ho učit týden ovládat. Ale to už je na úplně jinou diskuzi. Ano, WordPress (ani nikdo z jeho konkurentů) není vhodný na freehosting či levný hosting. Dříve to možná šlo, ale nároky aplikací obecně rostou a hardware serverů se také zlepšuje. Neutečeme tomu…
Jsem začínající uživatel WP a musím přisvědčit, že jsem si jej zvolil opravdu kvůli jeho uživatelské přívětivosti. Rozhodoval jsem se, jaký CMS si zvolit pro svůj projekt, pustil jsem si Joomlu, Drupal, WP a další. WP mi přišel na první pohled jako nejjednodušší, s intuitivním ovládáním a příjemným vzhledem. S jeho používáním dále zjišťuji, že jeho možnosti jsou široké (mnoho svobody mi dal Atahualpa theme, který používám) a myslím si, že i srovnatelné s ostatními uvedenými redakčními systémy.
Nějaké novinky okolo termínu vydání WP 3.1 ?
Petr: Více než týden pryč a pořád nic. Neděje se ale nic zásadního, podle několika oprav drobných chyb nechávají vývojáři uživatelům evidentně delší čas na testování. Osobně si myslím, že by mohl vyjít už dnes v noci či zítra, ale necháme se překvapit :-)
ok, díky :)
No tak je tu 3.0.5… Což je škoda… Už se celkem těším na 3.1. :-)
S tou 3.0.5 je to nějaký fór?? :))
No já mám na všech webech dostupnou aktualizaci 3.0.5. us verze
Fix XSS bug: Properly encode title used in Quick/Bulk Edit, and offer additional sanitization to various fields. Affects users of the Author or Contributor role. (r17397, r17406, r17412)
Fix XSS bug: Preserve tag escaping in the tags meta box. Affects users of the Author or Contributor role. (r17401)
Fix potential information disclosure of posts through the media uploader. Affects users of the Author role. (r17393)
Enhancement: Force HTML filtering on comment text in the admin (r17400)
Enhancement: Harden check_admin_referer() when called without arguments, which plugins should avoid. (r17387)
Update the license to GPLv2 (or later) and update copyright information for the KSES library.
Takže s tím čekáním na otestování, to vyhráli docela. Už by jsme instalovali 3.1.1…..
Petr: Nikoliv WordPress 3.0.5 není vtip :-) Díky za inspiraci k titulku článku, cpát tam pořád bezpečnost bylo trochu nudné…
Aramon: Ano, teď už je dostupná i čeština.
ELiX: Přehled novinek WordPressu 3.0.5 v češtině je zde. Třeba budeme o to déle čekat na opravnou verzi 3.1.1 :-)