Header
Svačija maza. header.php je odgovorna za ono što vidite na vrhu svakog sajta. 99.9999% svih WordPress tema počinju sa header.php. Sadržaj ove fajle počinje sa kodom s kojim bilo koja web stranica na internetu počinje, naime sa DOCTYPE i Html atributima.
Doctype – doctype je deklaracija koja ima veze sa standardima na webu i mada ih ima više većina web stranica koristi XHTML. 1.0. i docktype će izgledati ovako:
<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”
“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
Odmah poslije ovoga dolazi jezički atribut (i njih ima više) čija uloga je da pripreme tražilicu za dolazeći kod.
<html xmlns=”http://www.w3.org/1999/xhtml” <?php language_attributes(); ?>>
Pošto HTML5 preuzima polako vodstvo kao glavni programski jezik, njegov DOCTYPE je pojednostavljen i bit će samo < !DOCTYPE html>. Kompletna internet zajednica radi na implementaciji html5 i uskoro će svijet weba biti dominiran novim standardom.
META Elementi
Nakon što su ubaceni obavezni dosktype i atributi otvara se i s njim sekcija. Unutar “head” sekcije i vrijeme je da se biraju tagovi koji su “informacija o informaciji” gdje je HTML informacija a meta tagovi opisuju informaciju. Moramo “reći” tražilicama koju vrstu sadržaja serviramo i kojim jezikom pričamo, WordPress nam daje praktične template tags za tu svrhu:
<meta http-equiv=”Content-Type” content=”<?php bloginfo(‘html_type’); ?>;
charset=<?php bloginfo(‘charset’); ?>” />
Sad dolazi opis (description) koji je veoma važan i ključne riječi (keywords) koji su manje važni. Pošto su opisi i ključne riječi za svaki pojedini članak različiti (zavise od onoga što ste napisali) najbolje je pustiti da se oni dinamično automatski pojave uz pomoć All-In-One SEO Pack plugina koji to odrađuje za nas.
The Title – Naslov
U <head> će biti i naslov <title> stranice koji je neopisivo važna linija u svakom HTML kodu. To je ono što će se pojaviti na vrhu tražilice i koji se koristi u rezultatima tražilica. Title nas opet stavlja u dilemu jer je taj dio koda dozvoljen samo jednom u headeru a koristi ga svaka pojedina stranica i post. Kako da riješimo tu dilemu i napravimo title koja je optimalna za svaki post? To se radi tako što se u header.php ubaci funkcija koja omogućava atraktivan i opisan naslov za svaku moguću stranicu na sajtu:
<title>
<?php if (function_exists(‘is_tag’) && is_tag()) {
single_tag_title(‘Tag Archive for "’); echo ‘" – ‘;
} elseif (is_archive()) {
wp_title(”); echo ‘ Archive – ‘;
} elseif (is_search()) {
echo ‘Search for "’.wp_specialchars($s).’" – ‘;
} elseif (!(is_404()) && (is_single()) || (is_page())) {
wp_title(”); echo ‘ – ‘;
} elseif (is_404()) {
echo ‘Not Found – ‘;
}
if (is_home()) {
bloginfo(‘name’); echo ‘ – ‘; bloginfo(‘description’);
} else {
bloginfo(‘name’);
}
if ($paged > 1) {
echo ‘ – page ‘. $paged;
} ?>
</title>
All-In-One SEO Pack plugin može da se koristi i za ovo sa dodatnom prednošću što drzi header.php kod lakšim. Jedina mana je u tome što ovaj plugin nije precizan kao što ste vi sami.
Link Elementi
je mjesto gdje se stavlja link ka vanjskim CSS i JavaScript fajlama. Pošto WordPress zahtjeva CSS onda ga trebate koristiti i link ka CSSu se stavlja ovako:
<link rel=’stylesheet’ href=’<?php bloginfo(“stylesheet_url”); ?>‘
type=’text/css’ media=’screen’ />
Funkcija bloginfo(“stylesheet_url”) će pokazati tačan URL za stylesheet.
Na drugu ruku, ubacivanje JavaScripta je komplikovana ukoliko želite da ga ubacite ispravno što je naravno cilj. Recimo hoćete da ubacite popularni JavaScript library jQuery, i u isto vrijeme vas lični specijalni skript
koji će koristiti jQuery. Pošto je jQuery toliko popularan i koristen kao dio skoro svakog plugina pa čak i za administraciju wordpressa, jQuery je dio jezgra prema kome treba da linkujete. To radite ubacivanjem sledeće funkcije u head području vaše functions.php:
<?php wp_enqueue_script(‘jquery’); ?>
Ovaj pristup ima svoje posebne prednosti:
1. Lakoca implementacije. Linkuje ka fajli za koju znate da postoji i za koju znate da će raditi.
2. Obavještava WordPress da je potrebna fajla uspješno lodirana.
Ako odete na web i downloadirate svoju vlastitu kopiju jQuerija, WordPress nema pojma o tome. Onda ako počnete da koristite neki plugin koji je baziran na jQuery WordPress će pokrenuti postojeći jQuery i izazvati katastrofu. Zato ako umjesto toga samo ubacite skript odozgo, plugin će znati da fajla već postoji i neće koristiti duplikat. Problem riješen!
S druge strane, ako koristite svoj vlastiti skript, nema potrebe da ubacujete specijalnu funkciju jer je vaš skript već unikat i nije dio wordpressa. Svoj vlastiti skript loadirate funkcijom:
<script type=”text/javascript”
src=”<?php bloginfo(‘template_url’); ?>/js/mojscript.js”></script>
Kao što vidite, i ova funkcija koristi “bloginfo” s tom razlikom što link vodi ka aktivnom direktoriju teme a ne ka specifičnoj fajli.
Sad, pretpostavimo da za arhivu koristite CSS koji nije korišten nigdje drugdje na sajtu kao i specijalan skript samo za arhivu. Za tu priliku se koristi specijalna wordPress logika za otkrivanje da li se vrši pregled arhive i koristi samo tada:
<?php if (is_page_template(‘page-archives.php’)) { ?>
<link rel=”stylesheet” href=”<?php bloginfo(‘template_url’); ?>/css/archives.css” type=”text/css” media=”screen” />
<script type=”text/javascript” src=”<?php bloginfo(‘template_url’); ?>/js/archives.js”></script>
<?php } ?>
Ovo će raditi samo ako se koristi specijalan templet za arhivu imenovan “page-archives.php. Ako znate tačno ID broj te stranice onda ovaj kod može da izgleda ovako:
<?php if (is_page(“5″)) { ?>
<link rel=”stylesheet” href=”<?php bloginfo(‘template_url’); ?>/css/archives.css” type=”text/css” media=”screen” />
<script type=”text/javascript” src=”<?php bloginfo(‘template_url’); ?>/js/archives.js”></script>
<?php } ?>
…gdje je “5″ page ID.
Sve skupa gore opisano će izgledati otprilike ovako:
<?php wp_enqueue_script(‘jquery’); ?>
<?php wp_head(); ?>
<script type=”text/javascript” src=”<?php bloginfo(‘template_url’); ?>/js/myscript.js”></script>
<?php if (is_page(“5″)) { ?>
<link rel=”stylesheet” href=”<?php bloginfo(‘template_url’); ?>/css/archives.css” type=”text/css” media=”screen” />
<script type=”text/javascript” src=”<?php bloginfo(‘template_url’); ?>/js/archives.js”></script>
<?php } ?>
wp_head() Funkcija
Ova funkcija će reci WordPressu “ovo je head”, i na neki način je generalna funkcija koja se koristi kao “hook” ili udica na koju će jezgro WordPressa, plugini i specijalne funkcije da se zakače.
Na primjer, ako imate XML-RPC funkcionalnost na blogu (Settings–>Writing) onda će ta funkcija zahtjevati specijalan link element u head. Ako je dio teme, wp_head funkcija će se koristiti sa strane WordPressa da se XML-RPC element uključi u head.
Slično, kod korišten kao wp_enqueue_script function (vidi gore opisano) on sam za sebe neće imati nikakav efekat osim ako je i wp_head tag takođe postojeći. Koristi se kao hook koji je lokacija gdje će wp_enqueue_script function prikazati skript.
I plugini koriste wp_head funkciju za prikaz vlastitog skripta i CSS fajli. Ponekad plugini ubace inline CSS i JavaScript, što je nepoželjno jer “source code” izgleda neuredno i natrpano.

{ 1 comment… read it below or add one }
Mnogo ti hvala na nesebicnoj podeli svog znanja sa nama,pocetnik sam u word pressu, i sve sto si napisala mi je vise pomoglo nego kurs koji placam.
Svaka ti cast