Kategórie →

All posts in CMS

Open-source dashboard ako má Google Apps pre vaše služby

Nejeden krát som sa chytal za hlavu, že prečo poskytovatelia web hostingu či služieb nemajú dashboard ako Amazon AWS Status Page alebo Google Apps Status Page.

Jednoducho aby svojim klientom dali statusom vedieť ako sú na tom ich služby. Nejde o pohľad čo server to služba (pokiaľ to tak fyzicky nieje čo ale nemusí klient vedieť) ale o informácie o ich zdraví. Ak mi padne napríklad jeden MySQL server z piatich tak to pravdepodobne postihne časť klientov.

Čítaj ďalej →

TomatoCart je lepší osCommerce

Pokiaľ ste niekedy riešili nasadenie či výber CMS pre online shop určite vám neušiel systém osCommerce. Práve na jeho základoch (verzia 3) je postavené ďalšie CMS s názvom TomatoCart.

Čítaj ďalej →

WordPress 3.0 klope na dvere

CMS WordPress sa má dočkať vydania snáď najzásadnejšej verzie od mája 2003 kedy svetlo sveta uzrela verzia 0.73. WordPress 3.0 bol naplánovaný na začiatok mája tohto roku, no táto správa bola stiahnutá a očakáva sa, že sa tak stane na prelome mesiacov. Roadmap pre verzie 3.1 a 3.2 sa zatiaľ nemení – majú prísť v auguste resp. v novembri.

Čítaj ďalej →

Dva tipy na vylepšenie NextGen Gallery

Keď som migroval pôvodné CMS na WordPress pomerne dlho som vyberal plugin, ktorý použijem pre galériu. V tej sú desiatky tisíc fotografií tak som siahol snáď po tom najsofistikovanejšom riešení ktoré mi práve vtedy vyhovovalo – NextGen Gallery.

Od verzie 1.3.x mi ale prestalo fungovať drag&drop pre albumy – keďže sa tu menila štruktúra tabuliek tak nepomohlo sa uchýliť k verziám 1.2.x. Riešením je pár zásahov do zdrojových kódov, konkrétne v súbore plugins/nextgen-gallery/admin/album.php na riadku 369 treba vymeniť $picturelist = $wpdb->get_results("SELECT * FROM $wpdb->nggpictures ORDER BY pid DESC"); za $picturelist = $wpdb->get_results("SELECT t.*, tt.* FROM $wpdb->nggallery AS t INNER JOIN $wpdb->nggpictures AS tt ON t.gid = tt.galleryid WHERE tt.exclude != 1 GROUP BY tt.galleryid ORDER by tt.galleryid");
a všetko opäť funguje ako má.
Čítaj ďalej →

Postavte si vlastný pracovný portál

Pojem „kríza“ sa posledné mesiace spája najmä zo slovom práca. Väčšina ľudí je rada, že ju má a veľa ich sleduje pracovné portály z preventívnych dôvodov. Rozbiehať projekt s týmto zameraním je buď brutálne šialenstvo, alebo musíte mať brutálny nápad s ktorým by ste mohli preraziť, lebo trh je plný.

Podstránka s pracovnými ponukami môže byť ale zaujímavým doplnkom pre rôzne weby, ktorých návštevníci sa pohybujú v úzko špecializovaných pozíciach. Tu netreba opäť vynachádzať koleso a dá sa siahnuť po hotovom riešení a tým je jobberBase na ktorom už beží niekoľko desiatok takýchto pracovných webov.
Čítaj ďalej →

Ako na web s vlastným profesionálnym portfóliom

Veľmi pekné portfóliá so zaujímavými efektami sú doménou predovšetkým webových dizajnérov. No aj fotograf či stolár môžu mať vlastné portfólio na dobrej úrovni. No hlavne bez nutnosti znalosti akéhokoľvek programovania. Znie to dobre však?

Riešením je systém ProFolio, ktorý je napísaný v PHP, používa databázu MySQL a efekty pomocou JavaScriptu. Inštalácia spočíva v uploade súborov na FTP server a nastavení údajov na pripojenie k databáze v súbore config.php. Ďalej si vytvoríte užívateľské meno a heslo. S ním budete pridávať položky do vášho portfólia.

Pomocou návodu ProFolio zvládne nainštalovať skutočne každý, prípadne bude stačiť jednorázová asistencia skúsenejšej priateľky alebo priateľa. Rozhranie je jednoduché a prehľadné. Ako takéto portfólio vyzerá si môžete pozrieť na demo stránke.

ProFolio

WordPress kategórie v dvoch stĺpcoch

Pri tvorbe poslednej šablóny na blogu som hľadal riešenie ako rozdeliť kategórie do dvoch stĺpcov. Predsa len sa ich nazbieralo celkom dosť a v jednom stĺpci mi pripadali také nekompaktné. Pôvodný výpis vyzeral takto:

<?php wp_list_categories('show_count=1&title_li=<h2>Categories</h2>'); ?>

WordPress kategórie v dvoch stĺpcoch

Čítaj ďalej →

Od Joomla! k WordPress je cesta zarúbaná

No našťastie nie úplne nereálna. Niekoľko rokov som prevádzkoval blog na systéme Mambo z ktorého kvôli licenčným problémom vznikla Joomla!. Rozhodol som sa blog premigrovať na CMS WordPress, nakoľko zo všetkých kandidátov sa mi pozdával najlepšie práve tento. Má širokú komunitu ako používateľov tak aj vývojárov, bohatý archív pluginov a tém a hlavne sa aktívne vyvíja. Nebolo nad čím uvažovať.

Prvý problém nastal keď som uvažoval ako to vlastne vykonať. Takmer 2 000 postov, tisíce komentárov, ešte viac fotografií, spätné odkazy na články – čiže potreba zachovať ich URL, alebo vyriešiť redirect. Veľa neľahkých úloh na konci ktorých mal byť moderný, ergonomický a výkonný systém. Po dvoch mesiacoch môžem povedať že som kapituloval na takmer všetky predsavzatia a featúry.

Samotné preklopenie článkov z jedného CMS do druhého celkom slušne zvláda skript Joomla2WordPress – zvláda kopírovať vybrané kategórie, no pokiaľ máte texty v inom kódovaní ako UTF-8 zažijete prvé trhanie vlasov. To nehovorím o tom, že skript mi nevedel kopírovať z jedného hostingu na druhý ale len to tej istej DB – s iným prefixom. Každý prenesený článok však bolo potrebné otagovať a zaradiť do novej kategórie. Skript nevedel zachovať ani ID článkov čo bolo potrebné pre ďalšie redirecty. Nakoniec som zvolil ručné kopírovanie – aspoň som pretriedil ten balast a nostalgicky zaspomínal v duchu „ty kokso to ako som mohol takúto blbosť niekedy napísať“.

Presmerovávanie URL zo starých na nové bolo pre mňa veľkou prioritou – nabúchať do .htaccess presmerovania na všetko by asi zabilo server. Chytil som sa teda ID článkov a toto sa zdalo ako svetlý bod. Do súboru index.php šablóny default stačilo pridať

if(isset($_GET['option'])) {
    if(is_numeric($_GET['id'])){
        header ('HTTP/1.1 301 Moved Permanently');
        header("Location: http://alian.info/?p={$_GET['id']}");
        die();
    }else {
        die('Hack the Planet');
    }
}

a presmerovanie ID fungovalo perfektne. Než som však nezistil, že WordPress mi dá pocítiť, že on najlepšie vie čo je preň dobé a ja sa mám zaujímať len a len o obsah.

Ovládnuť totiž ID článku je nadľudská úloha. S verziou 2.5 tohto systému prišla úžasná vychytávka v podobe ukladania verzii a rozpísaných draftov postov. To znamená, že začnete písať článok – skočíte si na kávičku – pridáte pár obrázkov a nakoniec ho uložíte. Medzitým systém vykonal pár automatických uložení a keď začnete písať druhý článok tak môže mať kľudne ID 23. To ma postavilo zo stoličky. Ihneď som hľadal riešenie ako to vypnúť napevno tieto revízie. Nepomohlo nastavenie na „false“ v konfiguračnom súbore, ani niekoľko pluginov ktoré som testoval. Príde mi to ako totálna zvrhlosť. Tak som sa teda zmieril s tým, že staré a nové URL proste nepreviažem. Aj keď teraz mi to je platné ako mŕtvemu zimník rád by som túto funkcionalitu zrušil – duplicity pekne nafukujú DB. Pôvodná tabuľka s článkami na starom CMS mala niečo vyše 1 MB, tá terajšia má takmer 5 MB a ešte mi ostáva prepísať 300 článkov.

Na komentáre som sa vykašlal, s galériou sa ešte hrajem. Možno som málo bojoval, no napriek tomu som bol s WordPressom spokojný – na nečisto som si testoval ďalšiu funkcionalitu, tešil sa z automatických updatov a chcel som sa venovať už len finálnej šablóne, ktorá by bola konečne podľa mojich predstáv.

No dnes sa z čista jasna objavil ďalší nečakaný problém. Týka sa lne verzie 2.7.1 a prehliadača Mozilla Firefox 3+. Pri vytváraní nového článku je obsah stále niekde presmerovávaný – popisované to bolo už aj tu. Nemal som chuť to riešiť a radšej som spustil Google Chrome.

Ak chcete migrovať web z Joomla! do WordPress a máte do 100 článkov, kľudne sa s tým vyhrajte – ID editujte priamo v DB a celkom slušne a v prijateľnom čase to zvládnete. Pri tisíckach článkov to je však už nemysliteľné ba priam tragické riešenie. WordPress je ideálne riešenie pre budovanie „na zelenej lúke“, no nie na nejaký switch.

Postavte si vlastný Facebook

Chcete skúsiť preraziť s vlastnou sociálnou sieťou ako sa podarilo známemu Facebooku? Môžete to skúsiť pomocou nejakej online platformy – o všetko sa postará poskytovateľ takejto služby. Väčšina z nich je zadarmo, vy si len budujete svoju komunitu. Najväčšia výhoda je, že všetko je už hotové a nepotrebuje žiadnu znalosť programovania. Ale o tom niekedy nabudúce. Ďalšou možnosťou je začať tvoriť takúto službu úplne od nuly. Chce to viac prehľadu a skúseností. Zlatou strednou cestou je použiť už nejaké hotové CMS.

Celkom pokročilo a použiteľne na mňa pôsobí systém Elgg. Ďalšie plus je, že celý tento systém je úplne otvorený. Pre svoj beh potrebuje webový server – odporúčaný je Apache, podporu PHP a databázu MySQL. Čiže dne úplný štandard. Elgg podporuje aj pokročilé technológie ako Zend Platform, čiže v prípade rastu nieje problém s prechodom do enterprise sféry.

0111_01

Opis toho čo Elgg dokáže je na niekoľko kníh, ja len v skratke uvediem, že zvláda správu na úrovni užívateľov, objektov a súborov. Nechýba vytváranie profilov, skupín, stránok, priateľstiev, eventov atď. Obsah je možný zdieľať sko RSS, FOAF, XFN. Poteší aj podpora OpenID, OpenSocial, OAuth pre integráciu s ďalšími webmi. Pomocou už hotových lpuginov je možné pridať fórum, podporu pre užívateľské blogy, bookmarking a veľa ďalšieho. Jednoducho všetko čím dnes disponuje každá sociálna sieť.

Samotná inštalácia je viac ako jednoduchá, pokiaľ ste web developer odporúčam si Elgg nainštalovať už len zo zvedavosti – určite zistíte, že má väčšinu funkcií ktoré požadujete. Poteší aj perfektná dokumentácia, čo uľahčuje písanie vlastných pluginov a widgetov. Presvedčivo pôsobý aj ocenenie Best open source social networking platform 2008.

concrete5 – stavebný materiál pre web

Po dlhšej dobe som sa rozhodol napísať o nejakom CMS – tento krát to bude concrete5, alebo skrátene c5. Systém je napísaný v PHP, používa MySQL databázu a vyniká najmä svojim ovládaním. Ide totiž o jeden z mála tých editorov, ktoré pojem WYSIWYG neobmedzujú len na editor ale celú stavbu a vizuál vášho webu. Mohol by som o tom napísať niekoľko strán, no radšej si pozrite screencast priamo od jeho tvorcov.

1108_01

Ak by to nestačilo a chceli by ste si tento CMS rovno „ošahať“ ak som chcel ja odporúčam online demo . Niekedy je však rozhranie značne vyťažené, za hodinu totiž priemerne obslúži cca 400 testerov. Takže rovno odporúčam concrete5 stiahnuť k sebe a začať sa sním baviť. Je zadarmo, konkrétne pod MIT licenciou.

concrete5 je relatívne mladý systém, no napriek tomu si už nachádza stovky užívateľov ale aj vývojárov. Dosť ma preto zarazilo, že som o ňom nenašiel na „slovenskom“ internete. Systém sa stal dokonca projektom mesiaca na známom SourceForge. Dokonca jeden užívateľ ho prirovnal ku Google Pages. Za príplatok je možné ho rozbehať na Oracle, či pridať mu dodatočné vlastnosti alebo ho priamo ohnúť na potreby užívateľa. No a na záver len pre úplnosť – concrete5.org je to miesto kde treba začať.