Drupal CCK+Views. Tipovi sadržaja. Prikaz stranica preko Views. Kreiranje galerije zaposlenih
U prethodnom času sam vam pričao o tome šta je node (čvor) u Drupalu. Čvorovi su naši zapisi u blogu, stranice (Page), priče (Story). U ovom času ćemo kreirati novi tip sadržaja (Content type) "Zaposleni", koji ćemo koristiti za pravljenje liste zaposlenih sa fotografijom i opisom svakog od njih.
Dakle, koji moduli će nam za to trebati:
Drupal CCK
1. CCK (Content Construction Kit) - ovaj modul omogućava kreiranje novih tipova sadržaja, kao i dodavanje različitih polja za unos podataka.
Drupal modul CCK je toliko obiman da je podeljen u nekoliko podmodula, a nama će trebati sledeći podmoduli:
- Content - za kreiranje novih tipova sadržaja.
- Content Permissions - za definisanje dozvola za uređivanje i pregled našeg tipa sadržaja.
- Number - omogućava dodavanje numeričkog polja koje možemo koristiti kao šifru zaposlenog.
- Option Widgets - omogućava dodavanje polja sa izborom (checkbox, select, radio dugme).
- Text - omogućava dodavanje tekstualnih polja za unos podataka.
Ostali CCK podmoduli služe za:
- Content copy - omogućava kreiranje kopija postojećih tipova sadržaja sa svim njihovim poljima.
- FieldGroup - grupiše polja za unos; pošto mi imamo malo polja, ovaj podmodul nam ne treba.
- NodeReference - omogućava dodavanje polja koje pokazuje na neki drugi čvor, npr. ako imamo stranicu zaposlenog i želimo da povežemo sa njegovom ličnom stranicom tipa Page.
- UserReference - omogućava dodavanje polja koje referencira korisnika sajta. Ako zaposleni imaju naloge na sajtu, možemo povezati tip sadržaja "zaposleni" sa korisnikom.
Sačuvajmo konfiguraciju modula. Posle toga treba da se pojavi link Tipovi sadržaja u administratorskom meniju u sekciji Sadržaj:
Tip sadržaja ćemo dodati kasnije, a sada pređimo na sledeća dva modula.
FileField i ImageField Drupal
2. FileField i ImageField. FileField dodaje polje za upload fajla vezano za čvor. ImageField je isto polje, ali prihvata samo slike (jpg, gif, png). Instaliraćemo oba modula, koja će nam trebati za upload fotografija zaposlenih.
Sačuvaj konfiguraciju i pređi na sledeće module.
Imagecache Drupal
3. ImageCache i ImageAPI. ImageAPI je API koji se koristi umesto standardnog image.inc API-ja. ImageCache nam omogućava da napravimo preset (predodređenu obradu) fotografija zaposlenih, tako da slike različitih dimenzija budu prikazane ujednačeno, npr. sve veličine 100x100 piksela.
Takođe se može koristiti modul lightbox2 za prikaz slika koje se na klik prikazuju preko prozora u originalnoj veličini. Ovo je zgodno ako su preseti veoma mali i teško je videti detalje. Nakon instalacije lightbox2 modula, automatski se dodaje izbor preseta sa lightbox efektom.
4. Modul Views. Views je konstruktor SQL upita koji omogućava prikaz liste podataka bez potrebe za pisanjem SQL koda. Instalirajmo ovaj modul.
Sačuvaj konfiguraciju. Sada smo spremni da napravimo listu zaposlenih sa fotografijama.
Kreiranje liste zaposlenih na Drupalu
Prvo kreiramo tip sadržaja "Zaposleni". Uđite u administratorski meni: Sadržaj - Tipovi sadržaja - Dodaj tip sadržaja
Obratite pažnju da polje Naziv treba da bude na srpskom i jasno opisuje tip, a polje Tip treba da se unese latiničnim slovima bez razmaka i specijalnih znakova (dozvoljeno je donje crta).
Sada među tipovima sadržaja imamo i Zaposleni. Dodajmo mu polja za unos podataka. Kliknite na Manage Fields.
U polju New field unesite:
Naslov - može biti na srpskom
field name - bez razmaka, latinično, dozvoljeno donje crta
Type of data to store - izaberite file, potom u listi widgeta izaberite image
Kliknite Sačuvaj, u sledećem prozoru ostavite podešavanja kako jesu i sačuvajte.
Sada tip sadržaja Zaposleni ima polje za upload slike. Dodajmo još dva polja: "Ime i prezime" i "O zaposlenom". Za "Ime i prezime" izaberite tip polja "text", zatim "Text field" i povećajte dužinu na bar 80 karaktera (ja sam stavio 100).
Za polje "O zaposlenom" izaberite tip "text", ali kao widget "textarea" (više redova). U delu za obradu teksta izaberite "filtrirani tekst (korisnik bira format unosa)".
Više o formatima unosa pisaću u nekom od narednih tekstova.
Dobijamo sledeća polja za unos:
Tip sadržaja je spreman za kreiranje prvog zaposlenog. Kroz administratorski meni idite na "Sadržaj - Kreiraj sadržaj - Zaposleni".
Popunite podatke o zaposlenom kao i za blog zapis, Page ili Story, ali sada imate dodatna polja za fotografiju zaposlenog, Ime i prezime i O zaposlenom:
Moguće da se pitate šta unositi u naslov i sadržaj zaposlenog. U stvari, polje Ime i prezime duplira polje Naslov, a polje O zaposlenom je sadržaj. Možete koristiti naslov da upišete puno ime, a sadržaj za dodatne informacije o zaposlenom. Dodao sam ova polja da pokažem kako radi CCK, a možete proširiti tip sadržaja sa poljima za poziciju, radno vreme, kabinet itd.
Sačuvajte zaposlenog. Kao što sam rekao, svi zaposleni su čvorovi, pa će URL prvog zaposlenog biti npr. node/9. Trenutno vam se URL može prikazivati na latinici ili ćirilici (zbog modula pathauto), ali ako kliknete "Izmeni", videćete da je URL u formatu node/broj/edit.
Sada znamo kako dodavati zaposlene, sledeće je prikazivanje u prikladnom obliku. Počinjemo sa kreiranjem preseta slike, ako niste instalirali ImageCache i ImageAPI, sada je vreme. Preset se kreira u admin meniju: Struktura sajta - ImageCache - Dodaj novi preset.
Unesite ime preseta, preporučujem da u ime stavite dimenzije u pikselima koristeći latinicu X (npr. 100X100). Na raspolaganju su sledeće akcije za preset:
- Add Crop - sečenje slike u pravougaonik sa određenim pomerajem i veličinom.
- Add Deprecated Scale - prethodnik Scale and Crop, biće uklonjen u ImageCache 2.1.
- Add Desaturate - pretvaranje slike u sive tonove.
- Add Resize - menjanje dimenzija slike bez poštovanja proporcija.
- Add Rotate - rotacija slike.
- Add Scale - menjanje veličine slike uz zadržavanje proporcija (dovoljan je samo jedan parametar).
- Add Scale And Crop - menjanje veličine slike uz zadržavanje proporcija, zatim seče na zadate dimenzije.
- Add Sharpen - pooštravanje slike pomoću nesudara maske.
Nama treba Add Scale and Crop. Postavićemo dimenzije 100x100 piksela. Sačuvaj preset.
Sada prelazimo na modul Views, koji će kreirati upit i prikazati sve zaposlene sa fotografijama u presetu 100x100 piksela. Instalirajte Views i Views UI.
Drupal Views
U admin meniju idite na listu prikaza: Struktura sajta - Views. Po defaultu postoje neki prikazi (Arhiva, Nedavni komentari, Početna, Glosar, Termini taksonomije, Najnoviji sadržaji) ali su deaktivirani.
Kliknite na "Dodaj" da kreirate novi prikaz galerije zaposlenih. Ime prikaza je dobro da počne sa prefiksom view_.
U polju View type izaberite tip klasa koje želite da prikažete, pošto je Zaposleni čvor, izaberite Node.
Kliknite Next da pređete u korisnički interfejs Views.
Nama su sada najvažnija 4 bloka interfejsa: Arguments, Sort criteria, Filters, Fields.
- Arguments (argumenti) - omogućavaju filtriranje po argumentu, vrednosti iz URL-a (npr. za node/17 argument je 17).
- Fields - birate polja koja želite iz baze.
- Sort criteria - sortiranje rezult