wordpress-struktura

WordPress ima jasnu granicu između funkcionalnosti sajta i načina na koji je sajt prikazan krajnjim korisnicima. Izgled WordPress sajta koji se prikazuje korisniku zavisi isključivo od teme koja je aktivirana. Od teme zavisi i šta će biti prikazano na različitim stranicama u pogledu stilova i strukture.

WordPress ima veoma fleksibilnu strukturu tema i organizaciju fajlova koji je čine. U zavisnosti od konkretnog zahteva WordPress sistem će odlučiti koji fajl ili šablon će biti upotrebljen da bi se ispunio zahtev.  Ovo pomaže u organizaciji koda teme tako da nema duplikacije i veoma olakšava održavanje koda.  WordPress način struktuiranja i podele teme u različite fajlove, takođe omogućava da radite modifikacije na jednom delu teme, koje neće imati uticaja na druge delove.

U ovom postu ćemo proći kroz različite fajlove WordPress-a na primeru podrazumevane Twentytwelve  teme. Struktura bilo koje druge teme takođe bi trebalo ima istu ili sličnu organizaciju.

Osnovna struktura WordPress teme

Pri svakoj instalaciji WordPress-a  kao podrazumevani deo dobićete twentytwelve temu.

Struktura izgleda kao na slici ispod:

struktura-teme

Nisu svi od prikazanih fajlova obavezni za WordPress temu. Mi ćemo u nastavku teksta objasniti  samo glavne fajlove koji čine njenu strukturu.

Stilizovanje putem CSS-a

U WordPress folderu teme  se nalazi style.css fajl koji uglavnom sadrži sve informacije o stilovima web sajta.

style.css  takođe sadrži  i jedan veoma važan deo, a to je header teme. Header teme je definisan u vidu komentara i služi WordPress-u da učita osnovne informacije o temi.

/* Theme Name: Twenty Twelve
Theme URI: http://wordpress.org/extend/themes/twentytwelve
Author: the WordPress team
Author URI: http://wordpress.org/
Description: The 2012 theme for WordPress is a fully responsive theme that looks great on any device. Features include a front page template with its own widgets, an optional display font, styling for post formats on both index and single views, and an optional no-sidebar page template. Make it yours with a custom menu, header image, and background.
Version: 1.1 */

U suštini header sadrži meta podatke teme, poput naziva teme koje se prikazuje u WP admin delu. Takođe sadrži različite tagove poput Theme URI, Author, Description itd. Header je neophodan da bi WordPress sistem prepoznao temu.

Index.php i drugi pomoćni šabloni

Index.php je jedan od glavnih fajlova u strukturi teme i koristi se za prikaz u slučajevima kad postoji zahtev za nekim specifičnijim šablonom koji se ne uklapa u neki od standardnih šablona.

Unutar index fajla se nalazi get_header funkcija koja uključuje header.php fajl koji je sastavni deo teme. Tu možete takođe videti i poziv funkcija get_sidebar i get_footer koji pozivaju footer i sidebar da se pikazu na stranici. Ovaj način definisanja fajlova omogućava da ih pozivate u različitim šablonima bez duplikacije koda.

Dodavanje funkcionalnosti sajta upotrebom functions.php

WordPress tema sadrži opcioni functions.php fajl u kome se mogu dodavati bilo koje funkcionalnosti koje želite. U ovome fajlu se obavljaju zadaci poput povezivanja na različite WordPress kuke (hooks) ili definisanje WordPress vidžeta (widgets)  koji mogu biti korišćeni kada je tema aktivirana.

Prikazivanje kategorija na drugačiji način

WordPress tema može sadržati različite šablone za prikaz kategorije pod nazivom category.php. Ovaj šabon će biti korišćen kada god postoji zahtev za prikazom kategorije. Category šablon može stilizovati sadržaj kategorija na različite načine. Može takođe koristiti neke WP funkcije da prikaže dodatne informacije o trenutnoj kategoriji.

Ako pogledamo u category.php twentytwelve teme možemo videti da je slična index.php, ali koristi neke dodatne funkcije kao category_description za opis kategorije.

Prilagođavanje izgleda postova

WordPress tema može imati različite šablone za prikaz sadržaja postova. Ovo može biti urađeno upotrebom single.php šablona. Ovaj šabon ima mogućnost  prikaza kompletnog sadržaja posta ili samo jednog izdvojenog odlomka,  može prikazati komentare ispod posta i slično.

Još neki od važnijih WordPress šablona

Imamo i druge šablone koje je moguće definisati u sklopu teme da bi prilagodili sadržaj izgledu specifičnih stranica. Neki od važnih šablona su:

  • page.php – koristi se za prilagođavanje prikaza stranica,
  • comments.php – koristi se za prilagođavanje prikaza komentara u WordPress-u,
  • author.php – koristi se za prilagođavanje prikaza autorskih stranica,
  • search.php – koristi se za prilagođavanje rezultata pretrage,
  • archive.php – koristi se za prilagođeni prikaz stranica arhive poput kategorija, autora kada ne postoje drugi šabloni.

Zaključak

WordPress sistem organizacije fajlova dozvoljava definisanje različitih šablona koji kontrolišu prikazivanje različitih delova WordPress sajta. Većina šablona u WordPress-u je opciona  i može biti primenjena na specifične delove sajta koje želite drugačije da organizujete.

Za ostatak zahteva WordPress će prikazati šablon koji najviše odgovara konkretnom zahtevu ili u krajnjem slučaju index.php.  Tako da možete prilagoditi web sajt postepenim dodavanjem šablona kada je to potrebno.

Razumevanje koji šablon poziva koju stranicu i koji deo sajta prikazuje će biti od pomoći u razumevanju sadržaja koji vi niste kreirali i želite da ga prilagodite svojim potrebama. Uživajte u kreiranju i prilagođavanju vaših tema!

Jovan Ivezic

E-business and internet marketing specialist.