Kategoria: WordPress Strona 18 z 25

WordPress od lat znajduję się w samym centrum moich zawodowych zainteresowań.

Wyświetlanie jednej kategorii wpisów na stronie głównej

Załóżmy, że na stronie głównej chcemy wyświetlać tylko wpisy z kategorii o identyfikatorze 10. To co musimy zrobić, to powiedzieć WordPress’owi że chcemy tylko posty z określonej kategorii i jej podkategorii. Realizacja tego zadania polega na zmianie zawartości klucza cat w zapytaniu. Podmianę wykonujemy w taki oto sposób:

Poniższy kod należy dodać do pliku functions.php używanego motywu.

add_action('wp_head', 'iworks_only_one_category');
function iworks_only_one_category()
{
    if ( is_home() || is_front_page() ) {
        global $wp_query;
        $wp_query->query('cat=10');
    }
}

Jeżeli chcemy inną kategorię, to należy zmienić 10 na inny, wybrany identyfikator. Można tam też umieścić ich kilka z przecinkami.

Wyklucz kategorię

Wykluczanie wybranej kategorii ze strony głównej realizujemy przez dopisanie znaku minus, wtedy te z minusem będą pomijane przy wyświetlaniu.

add_action('wp_head', 'iworks_exclude_one_category');
function iworks_exclude_one_category()
{
    if ( is_home() || is_front_page() ) {
        global $wp_query;
        $wp_query->query('cat=-10');
    }
}
[zip href="http://iworks.pl/wp-content/uploads/2011/09/iworks_only_one_category.php.zip"]iworks_only_one_category.php[/zip]

Jak użyć podany kod?

Masz 3 rozwiązania:

  1. wrzuć załączony plik do folderu wp-content/plugins, a potem włącz wtyczkę
  2. wrzuć załączony plik do folderu wp-content/mu-plugins
  3. dołącz kod do pliku functions.php aktualnie używanego motywu

Lista wszystkich wpisów w danej kategorii

Jeżeli dla kategorii foo chcemy wyświetlić listę wszystkich wpisów, należy utworzyć plik category-foo.php zgodnie z http://codex.wordpress.org/Template_Hierarchy#Category_display

który będzie zawierał:

<?php
function get_all_post_from_category()
{
    global $wp_query, $cat;
    $wp_query->query('showposts=-1&cat='.$cat);
}
add_action('wp_head', 'get_all_post_from_category');
get_header();
if ( have_posts() ) {
    echo '<ul>';
    while ( have_posts() ) {
        the_post();
        echo '<li><a href="'.get_permalink().'">';
        the_title();
        echo '</a></li>';
    }
    echo '</ul>';
}
get_footer();
?>

Oczywiście należy dostosować go naszego motywu.

[zip href="http://iworks.pl/wp-content/uploads/2011/09/category-foo.php.zip"]category-foo.php[/zip]

Dodawanie do admin bar’a

Używana na tym blogu wtyczka upPrev ma swój panel administracyjny, ulokowany w menu „Wygląd”. W celu łatwiejszego dostępu chciałem umieścić odnośnik do jej konfiguracji w pasku administracyjny.

Jest to realizowane poprzez następujący kod:

Wtyczka WordPress: upPrev

Wtyczka do WordPress’a pozwala na wyświetlenie dynamicznego elementu z odnośnikiem do następnego wpisu. Powstała na podstawie swojej imienniczki w której zabrakło mi kilku opcji.

Więcej na stronie wtyczki upPrev WordPress Plugin lub w repozytorium: upPrev @ wordpress.org

WordCamp 2011 Poznań

Ruszyły przygotowania do WordCamp’u:

Strona: WordCamp Poznań. 9-10 grudnia 2011
Grupa na facebook’u: WordPress Polska

Targi InterCars

Zadanie polegało na integracji istniejącego szablonu z dowolną wtyczką obsługującą wersje językowy. z mojej strony oznaczało to użycie WPML, którą to wtyczkę uważam, za najlepszą do tego celu, choć nie twierdzę, że nie ma lepszej. Ja po po prostu lepszej nie znam. Strona już istniała i nawet odbyły się próby obsługi wielu języków, które się nie powiodły. Finalnie strona została odpalona w szybkim tempie, bo targi były tuż za progiem. Dodatkowo wprowadziłem całą, dostarczoną przez zamawiającego treść w obcych językach.

Zamknięcie projektu odbyło się już po targach i polegało na zmianie kilku elementów strony, choćby „zarejestruj się” oraz na uzupełnieniu treści o powstałe w czasie trwania imprezy: zdjęć, wyników z konkursów.

W serwisie użyto również:

  • generowania sitemap.xml
  • all in seo pack – w celu poprawy właściwości dokumentów
  • statystyk googla
  • lightbox gallery – żeby zdjęcia otwierały się w lightboxie
  • inne…
adres
11targi.intercars.com.pl
w sieci
sierpień 2011
oprogramowanie
wodrpress
cel
poprawienie i optymalizacja serwisu, wytworzenie motywu zintegrowanego z WPML, tak by bez kłopotów tworzyć wersje językowe
zakres prac
wytworzenia szablonu do wordpress, integracja z WPML, wprowadzanie treści
technologie
php, xhtml, gettext

Ostatnia wersja WPML na licencji GPL

Do pobrania tutaj, bo widzę, że znikło nawet z repozytorium publicznego.

Wtyczka była publikowana na licencji zgodnej z warunkami publikowania wtyczek w serwisie wordpress.org, czyli jest to licencja zgodna z GNU GPL.

[zip href="http://iworks.pl/wp-content/uploads/sitepress-multilingual-cms.2.0.4.1.zip"]Sitepress Multilingual-CMS w wersji 2.0.4.1[/zip]

Uzupełnienie:

Wtyczka jest cały czas dostępna w repozytorium wordpress’a, choć nie można jej znaleźć na stronie z wtyczkami.

Aby pobrać „wszystko” co się we wtyczce działo, należy skorzystać z subversion:

svn co http://plugins.svn.wordpress.org/sitepress-multilingual-cms/

Jeżeli interesuje nas ostatnia wersja:

svn co http://plugins.svn.wordpress.org/sitepress-multilingual-cms/tags/2.0.4.1

Testy motywu – skąd treść?

Tworząc nowy motyw do wordpressa na pewnym etapie prac zabieramy się do testowania naszej pracy. Ale żeby ją przetestować najlepiej korzystać z instancji, która … o zgrozo … zawiera dane.

Oczywiście można skorzystać z kopii już istniejącego serwisu i często tak robię, ale to nie rozwiązuje wszystkich testów, które należy przeprowadzić, szczególnie jeżeli korzystam z zestawu klas, które resetują ustawienia css’ów.

Podstawowym zestawem danych z których korzystam, jest ten udostępniany przez autorów wordpressa. Zestaw jest cyklicznie uzupełniany, co widać po wersjach plików. Ostatni, który można zaciągnąć ma datę 2011-01-15.xml.

Czasem korzystam z wtyczki WP dummy content, która z kolei pozwala na wygenerowanie treści: wpisów, stron, kategorii i jeszcze paru rzeczy, którymi można testować temat.

Innym zestawem danych jest Test Post Pack, ale ten zestaw jest moim zdaniem zdecydowanie słabszy od xml’a udostępnianego przez zespół tworzący wordpress’a.

Import danych z plików XML wykonujemy z „Narzędzia->Import”, wybierając „WordPress”. Należy mieć też zainstalowaną wtyczkę WordPress Importer.

A czego Ty używasz do testowania swoich motywów?

WordPress: wyrejestruj sprawdzanie wersji wp, wtyczek i motywu

Przy produkcyjnych wersjach dużego serwisu raczej nie potrzebujemy ciągłego sprawdzania nowych wersji wordpress’a, jego wtyczek czy motywów. Jest to zbędna funkcjonalność, a przy dużym ruchu dodatkowo niepotrzebna.

Często też używane w takich warunkach wtyczki są po prostu zmodyfikowane w celu polepszenia wydajności, więc wcale, ale to wcale nie chcemy aktualizować takich kawałków oprogramowania.

Poniższy kod pozwala na wyłącznie trzech akcji oraz ich usunięciu z wordpressowego crontaba.

Płacisz, ale szanuj moje zdanie!

Wpis jest o tym jak nie napisałem wtyczki do wordpress’a. Wtyczka o której mowa pojawiło się w serwisie WP Zlecenia i było naprawdę interesujące. Szczegóły zlecenia pominę jako nieistotne.

Nawiązałem kontakt ze zlecającym i rozpoczęliśmy proces negocjacji zarówno zakresu prac, jak i wynagrodzenia. Jak to zwykle bywa ja ciągnę w jedną stronę, potencjalny klient w drugą. Normalne i zrozumiałe.

Na samym początku przedstawiłem swoje argumenty: cena taka, a taka, bez przeniesienia autorskich praw majątkowych. Czemu tak?

Wtyczka będzie (bo powstanie tak czy inaczej) dość duża i widzę w niej potencjał, a co ciekawe to już drugie zapytanie w ciągu kilku miesięcy o taką funkcjonalność i co jeszcze ciekawsze już to kiedyś zrobiłem, tylko dla innej platformy.

Dodam, że cena, którą zaproponowałem nie była (moim zdaniem) wysoka, właśnie dlatego, że chciałem udzielić prawa tylko do jednego wdrożenia, zachowując autorskie prawa majątkowe.

Zlecający, mimo mojego bardzo wyraźnie określonego stanowiska, kilkukrotnie pytał mnie o to samo. Ba zadał nawet dość logiczne pytanie ile by wtyczka kosztowała w przypadku przeniesienia praw majątkowych.

Zrezygnowałem ze zlecenia w momencie w którym na odpowiedź na powyższe pytanie, która brzmiała tak:

Nie jestem zainteresowany przenoszeniem praw majątkowych.

dostałem zwrotkę:

Sugeruję jednak powrócić do przekazania praw autorskich.

Jeżeli na samym początku nie mogłem ustalić z klientem dość ważnej dla mnie sprawy, a on sam nie potraktował wystarczająco poważnie moich słów, to byłem zmuszony do rezygnacji ze zlecenia. A szkoda.

Wtyczkę zapewne zrealizuję tak czy inaczej, bo widzę w niej niezłe ćwiczenie na użycie kilku ciekawych możliwości wordpress’a, o których do tej pory tylko czytałem.

Strona 18 z 25

Oparte na WordPress & Theme by Anders Norén