Jak już dowiedzieliście się z poprzedniej części, na podstawowy szablon WordPressa składaja się: index.php
oraz style.css
. Ten drugi zawiera informacje o szablonie i formatowanie CSS, ten pierwszy natomiast zajmuje się wyświetlaniem treści. Czytaj dalej, a poznasz szczegóły…
Zawsze zaczynaj od góry
Na samej górze naszego pliku znaleźć musi się sekcja head
, która wygląda następująco:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" <?php language_attributes(); ?>>
<head profile="http://gmpg.org/xfn/11">
<meta http-equiv="Content-Type" content="<?php bloginfo('html_type'); ?>; charset=<?php bloginfo('charset'); ?>" />
<title><?php bloginfo('name'); ?> <?php if ( is_single() ) { ?> » Blog Archive <?php } ?> <?php wp_title(); ?></title>
<link rel="stylesheet" href="<?php bloginfo('stylesheet_url'); ?>" type="text/css" media="screen" />
<link rel="alternate" type="application/rss+xml" title="<?php bloginfo('name'); ?> RSS Feed" href="<?php bloginfo('rss2_url'); ?>" />
<link rel="pingback" href="<?php bloginfo('pingback_url'); ?>" />
<?php wp_head(); ?>
</head>
<body>
Najważniejszy fragment to te trzy <link rel="">
, które odpowiadają po kolei za podlinkowanie pliku stylu naszego szablonu, kanału RSS oraz systemu pingbacków. Zanim kończy się sekcja head
, widzimy jeszcze fragment wp_head();
– zajmiemy się nim później.
Schodzimy niżej
Oczkiem w jądrze WordPressa jest tak zwana the_loop();
– jest to ogólnie rzecz biorąc pętla, w której wyświetlane są wszystkie wpisy, a także strony statyczne. Jej budowa jest następująca:
<?php if (have_posts()) : ?>
<?php while (have_posts()) : the_post(); ?>
// Tresc
<?php endwhile; ?>
// Nawigacja
<?php else : ?>
// Zawartosc strony bledu
<?php endif; ?>
Wszystko zaczyna się od funkcji have_posts()
, która sprawdza czy w ogóle są jakieś wpisy do wyświetlenia – jeśli są, wtedy przechodzimy do funkcji pętli właściwej while
, w której wyświetlamy zawartośc właściwą, czyli wpisy i strony statyczne. Jak to się jednak robi, opiszę w kolejnej części tej serii.
Wbrew pozorom, niżej już nic ciekawego nie ma oprócz stopki, toteż wszyscy, którzy do tej pory mieli jakieś dziwne skojarzenia zapewne będą bardzo zawiedzeni – wszyscy jednak niech wiedzą, iż dzięki zaledwie dwóm artykułom wiecie już, jak stworzyć własny szablon do WordPressa – jednak wasza przygoda dopiero się zaczyna, o czym przekonacie się już wkrótce.
Komentarze
a może wrzuciłbyś tutka jak zrobić w sidebarze takie proste zakładki jak tu na blogu? :)
odpowiedzPolecam zapoznać się z Yetii Tabs – bardzo prosty w implementacji system. Nie wykluczam jednak artykułu o bardziej zaawansowanej implementacji takich zakładek ;)
odpowiedzdzięki za link, zaraz sprawdzę, próbowałem już innych, ale nie działały zbyt dobrze :)
odpowiedz@dzg: na vivee już o tym pisałem http://vivee.info/2008/08/05/zakladki-do-sidebara/ i http://vivee.info/2008/09/02/zakladki-do-sidebara-podpinamy/ te są akurat oparte na jquery i pewnie temat jeszcze będzie poruszany i rozszerzany.
Co do samego artykułu to czekam na resztę, bo powiem szczerze, że mimo iż skóry robić potrafię to tłumaczenie od zera jak taką skórę zrobić uważałem za mission impossible. Ja dostrzegam w wordpressowych skórach ogromną dowlność, a w tutorialu trzeba to wytłumaczyć jednoznacznie, przez co czułem sie tym ograniczany.
odpowiedza ja mam pytanie, w wersji np. 2.3 przy tworzeniu strony można było sobie wybrać z którego szablonu strona (links, archives, własny) ma być zbudowana. w wersjach nowych WP, taka możliwość zniknęła ?
odpowiedz@oloo,
Nie zniknęła. Została tylko przeniesiona w ciut inne miejsce (wcześniej była po prawej stronie), teraz jest jako rozwijana zakładka. Nazywa się „Szablon strony” i znajduje się pomiędzy „Strona nadrzędna” a „Kolejność stron”. :-)
@palmiak,
odpowiedzSorry, Akismet wyłapał Twój komentarz jako spam ale udało się go odratować :P
@WPNinja dzięki za odpowiedź ale u mnie tego nie ma :D jak by to było takie oczywiste to bym sam znalazł :D.
odpowiedzmam v. 2.5.1, dziś zrobię up-a i się zobaczy czy coś się zmieniło ;P
@oloo: patrzysz przy stronie czy wpisie? Przy publikacji/edycji strony musi to być. Po prostu musi.
odpowiedz@palmiak twoje „musi to być” zmusiło mnie do myślenia i się wymyśliło a raczej domyśliło dlaczego tego nie było :P
odpowiedzrobiłem tego thema już trochę temu i zawsze wyrzucam wszystko co mi jest nie potrzebne w tym przypadku, m.in. archiwum, links. zapomniałem sobie ze starego thema wrzucić plik z innym szablonem do nowego i nic dziwnego że nic nie widział :D, bo nie było żadnych innych szablonów niż domyślny. okazało się że nowsze WP oferuje już rzeczy które miałem w szablonie więc nie był mi on już potrzebny, ale za cholerę nie mogłem pojąć dlaczego WP „pozbyło” się opcji „szablon strony”.
dzięki za zmuszenie do myślenia. (to nie boli)
Pryzjemnie :). Dawno nie byłem – ale obowiązkowo znów dodaje do obecnie dziewiczej listy prenumerowanych kanałów RSS.
PS. Dodałbyś w ankiecie opcję „nie mam zdania” ;)
odpowiedz@TopBlogger,
Dzięki za sugestię – ankieta uzupełniona (-:
odpowiedzw sieci niewiele znajdziemy informacji na temat wp w naszym języku, dlaczego dzięki za ciekawe informacje :)
odpowiedz[…] może na naszą pętlę, którą wykonaliśmy w poprzednim artykule – interesuje nas konkretny jej fragment: <?php while ( have_posts() ) : […]
odpowiedz[…] Pliki szablonów WordPressa – część 2 – Spojrzenie na pętlę – wpninja.pl […]
odpowiedzDodaj własny komentarz
Odnośniki z innych stron
Lista innych stron, które w jakiś sposób odnoszą się do opublikowanej tutaj treści:
[…] może na naszą pętlę, którą wykonaliśmy w poprzednim artykule – interesuje nas konkretny jej fragment: <?php while ( have_posts() ) : […]
[…] Pliki szablonów WordPressa – część 2 – Spojrzenie na pętlę – wpninja.pl […]