HTML

Laza Bálint Drupal naplója

Archív Drupal-blog.

Kontakt

Friss topikok

Linkblog

Ezt is megértük: a nyílt forráskód diktál

2010.11.14. 22:39 Laza vagyok

A hétvégén Drupal konferencián jártam.  Nem csinálok titkotbelőle, ez a webes tartalomkezelő (keret)rendszer nagyon kedves a szívemnek. Viszont most nem általánosságaiban szeretnék beszélni a konferenciáról, hanem inkább kiemelnék egy - szerintem - nagyon lényeges momentumot.

A Microsoft Magyarország is a rendezvény szponzorai között volt. Elsőre talán meglepő lehet, hogy egy zárt forrású, szoftvereit főleg pénzért árusító cég mit keres egy open source project támogatói között. Ennek ellenére, ez nem túl nagy újdonság: a remondi cég például nemrég Wordpressre költöztette az MSN Live fiókokat.

Most azonban ennél többnek lehettem szem- és fültanúja. Nemsokára megjelenik a Drupal 7-ik kiadása, amely tartalmaz egy fontos újítást. A dinamikus weboldalak (mint például ez a blog is) általában úgy működnek, hogy az adatok nagy részét egy adatbázisban tárolják el, és onnan kérdezik le betöltéskor. Rengeteg adatbázis megoldás létezik persze, ezek közül az egyik legelterjedtebb például a MySQL. Természetesen a Microsoft is rendelkezik sajáttal, az az MsSQL.

A Drupal eddig csak két ilyen adatbázis platformmal működött együtt: a MySQL-el és a PgSQL-el, sőt szinte nem is volt lehetőség ennek a körnek a bővítésére. Ez a 7. kiadásban megváltozott: megjelent egy olyan réteg, ami kezeli az adatbázist, és ehhez lehet különböző drivereket írni. Egyszerűbben: bármelyik adatbázis kezelési megoldásra felkészíthetjük a weboldalt.

Kis - látszólagos - kitérő: a biztos adatok szerint jelenleg 712,905fejlesztő/sminkes/rendszergazda használ Drupalt. A becslések szerint a weben található összes weboldal 1% Drupal, ami nagyjából 2,5 millió weboldalt jelent. Az első ebben a statisztikában a Wordpress - mely szintén nyílt forráskódú.

Most pedig térjünk vissza az adatbázisra: mint írtam, minden megoldásra felkészíthető a rendszer. Mint megtudtam, a Microsoft fejlesztőket foglalkoztat azért, hogy elkészítsék az MsSQL driverét a Drupal 7 alá. Sőt, a Microsoft webes programcsomagjának a Microsoft Web Platformnak telepíthető szoftvere között is szerepel a Drupal, méghozzá első helyen.

Azt hiszem, hogy nagy lépés ez a nyílt forráskód életében. Lehet, kicsit elbíztam magam, de úgy gondolom, ez még a desktop linuxoknak is jót tehet: ha a hardvergyártók is beállnak a sorba, akkor lehet végre sikerül meghódítani az asztali gépeket is...

Cross-post a KözelJövő blogról.

 

Szólj hozzá!

A közösségi szerkesztés öröm!

2010.10.09. 18:22 Laza vagyok

Ennyi. Egyszerűen sokkal jobb alkotni valamit, ha azt többen teszitek. Az úgyis gyermekes ábránd, hogy bármi ami új, jó, az kipattanhat egy ember fejéből. Vagy ha igen, kellően nyers ahhoz, hogy ne legyen fogyasztható.

Ezzel szemben, ha nekiálltok valaminek többen, annak kiváló vége lehet. Mindehhez társul egy furcsa, euforikus érzés, amelyre rá lehet szokni, akár a drogra. Próbáljátok csak ki. Nyissatok egy Google Docsot egy közös házi feladat megoldásához: csak ötletelni is jó benne, de amikor a szemed előtt alakul ki egy értelmes folyószöveg, amelynek Te csak pár sorát, bekezdését írtad, az valami fantasztikus.

Nem véletlenül létezik mondjuk Wikipédia, pár száz "függő" szerkesztővel (itthon). Mert mondjuk ki, ezek az emberek (Mi?) függők: szeretik csinálni azokat a bejegyzéseket, és örülnek a végeredménynek. Majd elkezdik újra és újra és újra.

Nem véletlenül vannak hatalmas open source (nyílt forrású) közösségek. Én például a Drupal "hívők" táborát gyarapítom. Elismerem, nem könnyű kezelni azt a rendszert. Viszont olyan közösség áll mögötte, hogy mindenkinek bátran merem ajánlani.

Hogyan is működik az egész? Először is van maga a drupal.hu honlap, amit a közösség hozott létre. Ők gyűjtötték össze rá a pénzt, készítették el a designt, az egész funkcionalitást. Levelezőlistákon, IRC-n beszélgetve. A most érkezők pedig már egy professzionális tudásbázist (!!!) látnak. Létezik magyar nyelvű kézikönyv, amit egy lelkes felhasználó készít, és ingyen letölthető, vagy ha szeretnél fizethetsz érte! Amennyiben problémád van, azt felteheted a fórumban, és profi drupalosoktól kaphatsz percek alatt választ a kérdésedre. Amennyiben rossz irányba haladsz, akkor sem letorkollnak: segítenek. A szabadidejükben, ingyen. Tudva azt, hogy Te esetleg eladod azt a terméket, amelynek mondjuk egy funkcióját az Ő tudások, az Ő konkrét segítségük valósítja meg. Aztán ez a szakmai együttműködés egyre szerteágazóbbá válik: szakmai esteket szerveznek, konferenciát, vagy éppen közös játékot.

Először csak kérdezgetsz, majd egyre okosabb, gyakorlottabb leszel a témában, és elkezdesz másoknak is segíteni. Nem tudsz passzívan létezni egy ilyen közösségi térben, érzed, hogy neked is segítened kell. Amit kaptál, visszajár.

Úgy tűnik, ez a folyamat önfenntartó. Talán ezért is olyan jó érzés részt venni bármi hasonlóban. Ajánlom mindenkinek, hogy éljen az internet adta technikai lehetőségekkel, és ne rekessze ki életből ezt a pluszt, amit a 21. század tud nyújtani.

Laza Bálint

(cross-post)

Szólj hozzá!

Címkék: közösség drupal

Kereső átszabása

2009.11.02. 12:42 Laza vagyok

Nagyon jó, hogy a Drupal alapból nyújt számunkra egy keresőt "mindenestől". Ennek a funkciónak erősen megvannak a korlátai nem véletlen azt hiszem, hogy a drupal.hun is a googlet részesítik előnyben. Viszont ez a rövid bejegyzés nem ezekről a korlátokról kíván szólni, hanem a kereső kinézetének átszabásáról, mely gyakran felmerülő igény, mégsem olyan egyszerű megoldani, mint ahogy az ember azt elsőre gondolná.

 

Az igények voltak: a kereső mező elől a label eltűntetése és a form rövidebbre szabása.

Ehhez a következőt kell tenni:

0. Amennyiben még nincs, hozzuk létre az (al)smink gyökérkönyvtárában a template.php fájlt (figyeljünk rá, hogy a kód " <?php "-val kezdődjön, de a végén ne zárjuk le!)

1. A fájlban szükségünk van egy sminkneve_theme meghívására (tehát pl. garland_theme)

 

function sminkneve_theme() {
  return array( // The form ID.
    'search_theme_form' => array( 
    'arguments' => array('form' => NULL),
   ),
  );
}

2. Ezután jön a lényegi munka, eltüntetjük a labelt és átállítjuk a szövegmező hosszát.

function sminkneve_search_theme_form($form) {
// Eltüntetjük a labelt
  unset($form['search_theme_form']['#title']);
// Átállítjuk a szövegmező hosszát
  $form['search_theme_form']['#size'] = 32;
  $output .= drupal_render($form);
  return $output;
}

3. Elmentjük a template.phpt, ürítjük a smink gyorsírótárat (ezt pl. úgy tehetjük meg, hogy rámegyünk a sminkek oldalára és mentünk), és kész vagyunk

Szólj hozzá!

Címkék: drupal search form sminkelés

Out of the box: magyar települések listája Drupalhoz

2009.06.04. 09:10 Laza vagyok

Minden ember életében eljő a pillanat, amikor szüksége lesz egy magyar településlistára.

Az enyében legalábbis eljött, és akkor jöttem rá, hogy nem is olyan könnyű ilyet találni.

Azért, hogy nektek ne kelljen megjárni, amit én megjártam, közzéteszem, drupal által használható formátumban, megyékre lebontva, hierarchikus taxonomy listaként.

A fájl formátuma CSV, akkor is könnyen kinyered belőle, ami neked kell, ha éppen nem taxonómia kellene, vagy nem kell hierarchia és a megyék.

A településlista letölthető ide kattintva.

UTF-8 verzió itt.

XML formátumban itt. Köszönet érte

Hogyan kell használni?

Én a Taxonomy CVS Import modult ajánlom az importáláshoz: (update: a modullal problémák vannak, lásd itt: http://bit.ly/ObZHL )

http://drupal.org/project/taxonomy_csv

 

A menedzseléshez pedig nem árt a Taxonomy Manager, azért mégis egy 3000+ lista: 

http://drupal.org/projectaxonomy_manager

10 komment

Címkék: drupal települések taxonomy

Életkor kiszámítása születési dátumból

2009.06.02. 16:04 Laza vagyok

Gyakran lehet szükségünk arra, hogy születési dátumból életkor számoljunk. (Például ha társkereső oldalt csinálunk, vagy ha társkereső oldalt csinálunk.)

Eléggé szánalmas, ha a regisztrációkor a felhasználó születési dátuma mellett bekérjük az életkorát is :) A regisztrációkor ezért hozzáadunk még egy CCK mezőt, de nem akármilyent: Computing Fieldet.

Ez egy külön modul, letölthető itt: http://drupal.org/project/computed_field

Ezután már hozzá tudjuk adni a Computed típusú mezőt a profil tartalmunkhoz és a regisztrációhoz. Esetemben a profile node típushoz a kor mezőt.

Ezt itt tudjuk beállítani: admin/content/node-type/profile/fields/field_kor

Az általános beállításokban a Computed code: űrlapba kell a kódot írnunk mely a számítást végrehajtja. Szúrjuk be a következő kódot (ahol field_szuletesi_ido cserélendő annak a fieldnek az azonosítójára, amelyik a születési dátumot kéri be!)

if (!$node->nid) node_save($node);

  $dob = $node->field_dob[0]['value'];
        $now = time();
        $then = strtotime($dob);

        $diff = date('Y', $now) - date('Y', $then);

        if($diff < 0)     
           echo '??? - negative age.';

        if(($diff > 0) && (date('z',$now) < date('z',$then)))
           $diff --;
$node_field[0]['value'] = $diff;


Ahhoz, hogy meg is jelenjen valami, kattintsuk be, hogy display this field! És a display mezőbe írjuk a következő kódot:

$display = $node_field_item['value']; Figyeljünk rá, hogy a data type integer legyen, ha úgy szeretnénk dolgozni vele a továbbiakban, hogy pl. viewsben szűkíthető legyen vele az életkor... Mint a kódból látható, ez a művelet akkor hajtódik végre, ha elmentjük a nodeot, tehát utólag, már felvitt nodeokra magától nem fog kiszámolódni :)

A kód forrása: http://drupal.org/node/142151#comment-986330

6 komment

Címkék: drupal cck computed field

Többnyelvű taxonomy menu

2009.06.01. 23:54 Laza vagyok

(Ez a bejegyzés feltételezi, hogy a többnyelvű oldal készítésének alapjait ismered és fel vannak telepítve a többnyelvűséghez szükséges alap modulok.)

Hogyan kell azt megoldani, hogy van egy többnyelvű termünk, és szeretnénk egy menüpontot, amely listázza az adott term nodejait. Egy nyelven ezzel még nincs semmi gond: hozzáadunk egy menüpontot a path pedig taxonomy/term/[termid] (pl. taxonomy/term/1)

Többnyelvű oldal esetén azonban van pár lehetőség, ezért inkább leírnám, én hogy csináltam.

 

  1. (0.) Kapcsoljuk be a Taxonomy Translastion modult
  2. Vigyünk fel egy szótárat itt: admin/content/taxonomy/add/vocabulary
  3. Translation mode-nál ezt válasszuk: Translation mode: Localize terms. Terms are common for all languages, but their name and description may be localized.
  4. Language: NE ADJUNK MEG NYELVET
  5. A többi teendő olyan, amit egy sima szótár felvitelekor is elvégzünk, mentés.
  6. Most fordítsuk le a termet. Itt keressünk rá: /admin/build/translate/search
  7. Menjünk a node szerkesztésére és válasszuk ki a termet amit hozzá akarunk rendelni
  8. Menjünk a translatera és tegyük meg ugyanezt az idegen nyelvűvel
  9. Nincs más dolgunk mint a menüpontot létrehozni: a pathnak a taxonomy/term/[termid]-nek kell lenni, tehát nem kell semmiféle nyelvi prefixum!
  10. Fontos, hogy a menüpontnak ne állítsunk be nyelvet!

Ezek után, ha itt váltunk nyelvet, akkor a megfelelő nyelvű taxonomyhoz társított megfelelő nodeokat fogja listázni.

Szólj hozzá!

Címkék: drupal taxonomy internationalization

Miért jött létre ez a blog?

2009.06.01. 23:35 Laza vagyok

Nagyon konkrét céllal. Ugyan van már egy másik blogom, de az főként közéleti témákkal foglalkozik, és a kettőt nem szeretném összekeverni. Milyen kettőt? Mostanában elég sokat foglalkozom a Drupal nevű tartalomkezelő rendszerrel, így elég sok problémával/több gondolkodást ígénylő megoldással szembesülök. Nem szeretném, ha ezen megoldások eltűnnének, és mindig előről kellene kezdenem a gondolkozást (lustaság félegészség ;])

Így ez a blog arra szolgál majd (főként és előreláthatólag), hogy a Drupal használata során alkalmazottakat/tapasztaltakat ide levéssem. Jó szórakozást/okosodást/dühöngést.

 

 

Szólj hozzá!

Címkék: rólam drupal