Blog (4)
Komentarze (54)
Recenzje (0)

Zabaw z Wordpressem ciąg dalszy

@HaseZabaw z Wordpressem ciąg dalszy12.06.2012 17:26

Dzięki poprzedniemu wpisowi mamy już z głowy podstawy instalacji i konfiguracji Wordpressa. Tym razem wgryziemy się znacznie głębiej w smakowitą tkankę naszego CMSa. Pokażę jak rozszerzać funkcjonalność Wordpressa poprzez wtyczki i tematy, oraz jak samodzielnie zbudować własny stronę w oparciu o tzw. tematy startowe.

Wtyczki i tematy

Dzięki systemowi wtyczek Wordpress posiada niemal nieograniczone możliwości poszerzania jego podstawowej funkcjonalności. Można bez większego problemu przekształcić go w forum, sklep internetowy czy nawet sieć społecznościową wzorowaną na facebooku. Podobne możliwości odnośnie wyglądu daje system tematów. Jedne i drugie możemy wgrywać na dwa sposoby. Jeżeli interesujący nas komponent znajduje się w repozytoriach Wordpressa (możemy je przeglądać na stronie wordpress.org), wystarczy zalogować się do naszej witryny, a następnie wybrać odpowiednią opcję w menu:

  • W przypadku wtyczki wybieramy w menu "wtyczki->dodaj nową". Następnie możemy wyszukać wtyczkę która nas interesuje i ją zainstalować. Wtyczki, aby poprawnie działać często potrzebują dodatkowej konfiguracji. Menu konfiguracji wtyczek najczęściej dodawane jest automatycznie po zainstalowaniu rozszerzenia jako nowy segment w menu.
  • Gdy chcemy zainstalować motyw wybieramy "wygląd->motywy". Następnie wybieramy zakładkę "zainstaluj motywy". Również mamy możliwość przeglądania i wyszukiwania dostępnych motywów oraz ich instalacji.

Wiele wtyczek i motywów nie jest jednak dostępnych z poziomu repozytorium Wordpressa. Wtedy musimy zainstalować je ręcznie. Pobieramy pliki interesującego nas rozszerzenia, najczęściej w postaci archiwum zip, i rozpakowujemy w wybranej lokalizacji. Następnie przenosimy folder z plikami do odpowiedniego katalogu Wordpressa. Wtyczki kopiujemy do "wp-content/plugins", motywy do "wp-content/themes". Następnie należy przejść do odpowiedniej sekcji w panelu administracyjnym aby włączyć rozszerzenie.

Samodzielna budowa tematu

Wordpress daje trzy podstawowe sposoby dostosowywania wyglądu witryny do naszych potrzeb. Możemy wgrać gotowy motyw, możemy również napisać własną skórkę od zera, co niestety jest bardzo pracochłonne i wymaga świetnej znajomości jego bebechów. Istnieje też trzecia droga, dla mnie najbardziej optymalna. Możemy użyć tematu startowego bądź frameworka. Taki temat jest szkieletem na który obudowujemy tkanką wedle naszych upodobań. Aby je wykorzystać mocno wskazana jest przynajmniej podstawowa znajomość HTML i CSS, PHP nie jest konieczne, aczkolwiek również mile widziane. Przykładami takich tematów są Bones, Roots, Whiteboard czy Carrington. Większość z nich korzysta z jakiegoś frameworka CSS jak 960.gs czy Bootstrap. W tym wpisie pokażę jak budować własny motyw na przykładzie tematu Bones. Korzysta on z dobrodziejstw HTML5 oraz frameworka 960.gs. Nie jest on dostępny w repozytorium Wordpressa, udajemy się więc na stronę http://themble.com/bones/, i pobieramy archiwum z tematem (dostępne są dwie wersje, klasyczna i responsywna, tu opisuję klasyczną). Instalujemy i uruchamiamy temat zgodnie z instrukcją z poprzedniego punktu. Rzućmy teraz okiem na zawartość katalogu naszego motywu. Znajduje się tam szereg plików .php odpowiadających za wyświetlanie różnych elementów strony. Nazwy są dosyć intuicyjne, więc nikt nie powienien mieć problemu aby się w tym połapać:

  • header.php - nagłówek strony, sekcja oraz początek .
  • footer.php - stopka strony.
  • siedebar.php - odpowiada za wyświetlanie paska bocznego na którym możemy umieszczać widżety.Nazwa jest trochę myląca ponieważ równie dobrze takim sidebarem możemy uczynić stopkę.
  • index.php - odpowiada za wyświetlanie strony głównej witryny.
  • comments.php - odpowiada za wyświetlanie komentarzy i formularza ich dodawania.
  • page.php - odpowiada za wyświetlanie pojedynczej strony.
  • single.php - wyświetla pojedynczy wpis.
  • style.css - jak łatwo się domyśleć, przechowuje style CSS strony.

To są podstawowe pliki, którymi będziemy się zajmować, pozostałe będę przywoływać w miarę potrzeb. Jest jeszcze katalog "library" w którym umieszczamy skrypty js czy grafiki strony. Pozostałe pliki będę opisywał w miarę potrzeb.

Zmiana loga

Aby na naszej stronie ustawić logo w postaci pliku graficznego zaglądamy do pliku header.php i edytujemy następujący fragment:

[code=php]

[/code]

Zastpęujemy tagiem i voila.

Formatowanie wyglądu witryny

Moim skromnym zdaniem zdecydowanie najwygodniejszym sposobem na formatowanie styli CSS poszczgólnych elementów jest wykorzystanie narzędzi Dragonfly w Operze bądź Firebug w Firefoksie. Pozwalają one w szybki sposób zlokalizować położenie wybranych styli w pliku style.css. Nie będę opisywał jak dokładnie działają, bo nie jest to celem tego wpisu, a jestem przekonany że w internecie informacji na ten temat jest w bród.

Dodawanie elementów z wtyczek

Wtyczki Wordpressa często pozwalają umieścić na stronie różne dodatkowe elementy, np. kalendarz. Elementy takie mogą być wstawianie jako widget, wtedy możemy umieścić je w sidebarze z poziomu panelu administracyjnego. Innym sposobem dostarczania i wstawiania takich elementów jest shortcode. Jest to specjalny znacznik ograniczony nawiasami kwadratowymi który wstawiamy bezpośrednio w treść wybranej strony lub wpisu. Przykładowy shortcode wstawiający na stronę kalendarz z wtyczki Event manager wygląda następująco:

[eo_fullcalendar]

Shortcode możemy również zaszyć bezpośrednio w wybranym przez nas pliku. Np. jeżeli chcielibyśmy wstawić wspomniany wcześniej kalendarz w stopce, możemy to zrobić umiejszczając w wybranym przez nas miejscu następujący kod:

<?php echo do_shortcode('[eo_fullcalendar]'); ?>

Czasami wtyczki udostępniają również bezpośrednio funkcje php które możemy wstawić w wybrane miejsce template'a. Jest to jednak zależne od wtyczek, i aby dowiedzieć się jakie możliwości oferuje dane rozszerzenie musimy zajrzeć do jego dokumentacji.

Dodawanie obszaru aktywanego (sidebara)

Nie jesteśmy ograniczeni do jednego paska bocznego w który domyślnie wyposażony jest Bones. Możemy ich dodać dowolną ilośc w dowolnym miejscu na stronie. Aby to zrobić otwieramy plik functions.php i odnajdujemy następujący fragment:

    
register_sidebar(array( 
'id' => 'sidebar1', 
'name' => 'Sidebar 1', 
'description' => 'The first (primary) sidebar.', 
'before_widget' => '<div id="%1$s" class="widget %2$s">', 
'after_widget' => '</div>', 
'before_title' => '<h4 class="widgettitle">',
'after_title' => '</h4>', 
));

Kopiujemy i wklejamy go pod spodem. Edytujemy wartość "id", np. zmieniając na "sidebar2". Analogicznie postępujemy z polami "name" i "description" i zapisujemy plik. Następnie otwieramy plik sidebar.php, podmieniamy wszystkie wystąpienia "sidebar1" naszym id i zapisujemy plik jako sidebar-nasze_id.php. Ostatnim krokiem jest wklejenie funkcji do wybranego template'a w miejscu w którym ma się pojawić kolejny pasek boczny:

[code=[/code]

Modyfikowanie listy wpisów

Domyślnie na stronie głównej Worpdress wyświetla listę wpisów posortowaną alfabetycznie. My w ustawieniach możemy jedynie określić liczbę wpisów na stronie. Jednak jeżeli pogrzebiemy trochę w plikach, zwłaszcza w index.php będziemy mogli osiągnąć znacznie więcej. Na początek kilka słów o tym w jaki sposób pobiera i wyświetla wpisy. Używany jest do tego mechanizm nazwany Pętlą (The Loop), wygląda on w następująco:


<?php
get_header();
if (have_posts()) :
   while (have_posts()) :
      the_post();
      the_content();
   endwhile;
endif;
get_sidebar();
get_footer(); 
?>

Kluczowe są tu instrukcje

<?php if (have_posts()) : while (have_posts()) : the_post(); ?>[/code]
 które pobierają kolejne posty i udostępniają je do wyświetlenia. Dopiero wewnątrz tej pętli możemy używać takich instrukcji jak 
[code=php]the_content(  );

odpowiadającej za wyświetlenie treści wpisu. Modyfikując Pętlę możemy zdecydować które wpisy pojawią się na stronie. Używa się do tego mechanizmu "WP_Query". Dla przykładu pokażemy jak przy jego pomocy wyświetlić tylko posty jednego autora:


<?php

// The Query
$the_query = new WP_Query( 'author_name=rami' );

// The Loop
while ( $the_query->have_posts() ) : $the_query->the_post();
	echo '<li>';
	the_title();
	echo '</li>';
endwhile;

// Reset Post Data
wp_reset_postdata();

?>

Więcej na temat WP_Query tutaj.

W pętli decydujemy również o kształcie naszego postu. Zamiast całej treści wpisu możemy wyświetlać wypisy. Aby to osiągnąć zmieniamy instrukcję

the_content();

na

the_excerpt();

.

Statyczna strona główna

Możemy podmienić standardową listę wpisów na przygotowany przez siebie szablon, a newsy czy wpisy blogowe umieścić na wybranej przez siebie podstronie. Najpierw przygotujemy template dla strony głównej. Otwieramy plik page-custom.php, na samym początku zmieniamy "Template name" na wybrany przez nas np. page_home i pod taką nazwą zapisujemy plik. Przechodzimy do panelu administracyjnego. Tworzymy dwie nowe strony. Jedna posłuży jako strona domowa, druga jako lista wpisów. Przy tworzeniu strony domowej musimy zmienić szablon strony z domyślnego na ten który przed chwilą utworzyliśmy (page_home). Szablon dla listy zostawiamy domyślny. Przechodzimy do "Ustawienia->Czytanie". Zmieniamy "Strona główna wyświetla:" z "ostatnie wpisy" na "statyczną stronę". Następnie ustawiamy "Strona główna" oraz "Strona z wpisami" na stworzone przez nas do tych celów strony. Następnie możemy przejść do dostosowywania naszej strony głównej. Możemy to zrobić przez dodanie treści w panelu administracyjnym, bądź bardziej niskopoziomowe zmiany w pliku naszego szablonu.

To tyle na dzisiaj ;)

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.