Prezentacja dotycząca rozwoju CMS WordPress w wersjach 4.2, 4.3 i 4.4 oraz technologii webowych w roku 2015, zaprezentowana na pierwszym trójmiejskim WordUpie w PPNT w Gdyni.

Skrypt:

1. Kim jestem?
2. Co tam panie w PKSie?
3. Co tam panie w 4.2?
4. Co nam przyniósł WP 4.1(.1)
5. Tryb bezdekoncentracyjny / nierozpraszający
6. Szybkie wstawianie mediów
7. Instalacja wersji językowej z poziomu panelu
8. Rekomendacje wtyczek
9. Nowy pasek narzędzi do mediów
10. Twenty Fifteen theme
11. Dev • Usprawnienie obsługi metadanych Np. WP_(…)_Query, daty, komentarze, taksonomie • Zagnieżdżanie i wielokrotne relacje • Możliwość obsługi znacznika title przez motywy • customer API – indywidualizacja ekranu personalizacji • Nowe funkcje do do wyświetlania tytułów, opisów, nawigacji get_the_archive_title() the_archive_title() get_the_archive_description() the_archive_description()) get_the_post_navigation() the_post_navigation() get_the_posts_navigation() the_posts_navigation() get_the_posts_pagination() the_posts_pagination())
12. Co w przyszłości?
13. Customizer •Udostępnienie dedykowanego API do kontroli customizera przez JS •Budowanie menu z możliwością tworzenia sub-menu
14. Customizer theme switcher Features as Plugins •Możliwość wyboru i podglądu szablonu
15. Wsparcie dla Emoji icons
16. Nowe standardowe permalinki Lub bez mod rewrite:
17. Rozdzielenie terms’ów w taksonomiach w bazie Termsy w taksonomii standardowo są w tabeli wp_terms Z termsów korzystają różne taksonomie Od WP 4.2 termsy będą rozbite do różnych taksonomii Robiąc wp_update_term( $miesko_id, ‘kielbaski' ) WP rozpozna czy term kielbaski został użyty przez kilka taksonomii. Jeśli TAK: • wstawi do tabeli wp_terms nowy wiersz z term_id • Powiąże z nim właściwy term_taxonomy Ale: – term_taxonomy_id pozostanie bez zmian – term_id zmieni się!
18. Rozdzielenie term’ów kto beknie? Wtyczki, które trzymają u siebie, niezależnie term ID w bazie powiązane z postmeta, usermeta itp..: • Jetpack, • WordPress SEO by Yoast, • Google XML Sitemaps, • All in One SEO Pack, • Mailpoet, • Advanced Custom Fields, • Ninja Forms, • Types, • Custom Sidebars, • Paid Memberships Pro, • WordPress Download Manager
19. Kto będzie miał więcej zleceń?
20. Co robić? Jak żyć? Już dziś użyj: WP Find Shared Terms
21. A co jeśli tego nie zrobię? WP 4.2 nie rozdzieli termsów, jeśli nie zostaną ponownie zapisane. Kolejne wersje WP mają jednak zrobić to automatycznie przy instalacji. Możliwość błędnego lub niewyświetlenia list post-type’ów Na szczęście większość wtyczek i szablonów nie trzyma u siebie term ID (problem dotyczy 10% z TOP100 wtyczek)
22. Lepsza wydajność Press This
23. Możliwość instalacji wesji beta wtyczek RÓWNIEŻ BEZPOŚREDNIO Z GITHUBA!!!!
24. Wydajność (podobno) wzrośnie
25. • Minimum PHP 5.4 • Duży nacisk na Edukację ze strony Automattica – stosujmy proste zabezpieczenia (np. zmiana wp-login.php) • Dyskusja – iThemes Security / WordFence nielegalne w DE (obce wtyczki widzą requesty) Bezpieczeństwo
26. Pozostałe • UNDO dla widgetów • Content builder w CORE WP, usprawnienie użycia shortcode’ów • Checkbox do lazy-load mediów • Poprawa wydajności • Większa indywidualizacja pulpitu • Tworzenie i edycja z poziomu Front-end • Większa ilość wersji językowych WP • Decentralizacja społeczności i zejście do poziomu plugin-campów • Przeniesienie funkcjonalności do Customizera • Możliwość usuwania elementów typowo blogowych z podstawowej wersji WP przy instalacji • Wbudowana funkcja bezpieczeństwa
27. A co z szablonami?
28. Responsywność
29. Flat & 8 bit Picture Perfect Designing • no more shadowing, texture, beveling,
30. Video + duże zdjęcie w tle ale mniej sliderów!!! Coraz mniej czytania na rzecz oglądania TYPOgrafika
31. Scroll – będzie Was bolał palec!
32. Rozwój frameworków Bootstrap Foundation Zimit InK HTML5 Boilerplate YUI
33. Mikro interakcje Material design Subtelne animacje SVG Animacje częścią nawigacji
34. Minimal
35. Ghost buttons
36. Rozmyte tła

Jeśli na swoich stronach hostowanych na zenbox.pl korzystacie z formularza zbudowanego na CF7, zalecam skorzystanie z https://wordpress.org/plugins/contact-form-7-to-database-extension/ i regularne sprawdzanie historii wysyłanych przez formularz danych.

Właśnie przejrzałem historię dostarczonych maili z CF7. Okazuje się, że ok. 30% wybiórczo wybranych wiadomości zupełnie nie dotarło na adres docelowy.

Przy podobnych ilościach przesyłanych przez formularz wiadomości – problemu nie stwierdziłem w Site5 oraz w LinuxPL.com.

Rozwiązanie, jakie sugeruje support zenboxa to ręczna konfiguracja konta SMTP np. przez wtyczkę https://wordpress.org/plugins/easy-wp-smtp/.

Nadmienię tylko, że korzystam z Akismeta, ale jeśli coś poleciałoby do spamu, to nie pokazało by się w historii CF7 to DB.

Zastanawia mnie tylko fakt dlaczego na zenboxie wycinanie wiadomości działa tak wybiórczo…

Dziś postanowiłem wyświetlić w jednym z projektów pewien banner, który miał się pokazać jedynie w określonej kategorii.

Ponieważ nie była to zwykła kategoria, lecz taksonomia, toteż musiałem nieco kombinować niż użyć zwykłej funkcji WP is_category.

 

Otóż mam taksonomię 'filmy'.

Struktura kategorii/termów w taksonomii 'filmy' mam następujące:
– komedie
– – romantyczne
– – nieromantyczne
– thrillery
– sensacyjne

Dla wszystkich wpisów w kategorii komedie (razem podkategoriami) chcę wyświetlić banner.

Próbowałem z has_term, is_tax – bez skutku…

Poniższy kod ułatwił mi życie. W functions.php dodajemy:

//display something only in a certain term of taxonomy
function in_term($term,$taxonomy,$post_id=null) {
        if (has_term($term,$taxonomy,$post_id)) {
                return true;
        }
        $top_term = get_term_by('slug',$term,$taxonomy);
        if ($top_term) {               
                $children = get_term_children($top_term->term_id,$taxonomy );
                if (is_array($children) && !empty($children)) {
                        $post_terms = get_the_terms(get_the_ID(),$taxonomy);
                        foreach ($post_terms as $post_term) {
                                if (in_array($post_term->term_id, $children)) return true;
                        }
                }
        }
 
        return false;
}

Alternatywnie:

//display something only in a certain term of taxonomy
function in_term($term, $taxonomy, $post_id =null) {
        if ( null === $post_id ) {
              $post_id = get_the_ID();
        }
        if ( has_term($term, $taxonomy, $post_id) ) {
                return true;
        }

        $top_term = get_term_by('slug', $term, $taxonomy);
        if ( $top_term ) {               
                $children = get_term_children($top_term->term_id, $taxonomy );

                if (is_array($children) && !empty($children)) {
                        return has_term( $children, $taxonomy, $post_id );
                }
        }
 
        return false;
}

 

A w pliku, w którym chcemy wyświetlić element (np. single.php, sidebar.php) dodajemy:

 <?php if (in_term('komedie','filmy') ) { ?>
//tutaj wklejamy pożądaną treść	
		
 <?php } ?>

To rozwiązanie na szczęście obsługuje nie tylko obieżącego terma/kategorię, lecz także kategorie potomne.

RSS to skrót od Really Simple Syndication czyli Bardzo proste rozpowszechnianie, lub inna wersja Rich Site Summary, w tłumaczeniu – Obszerne streszczenie strony. RSS jest oparty na technologii XML’a, i jest to tak jakby alternatywny sposób na dostęp do informacji. Normalnie, każdy z nas przegląda jakieś strony, blogi, portale internetowe itp, i znajduje tam interesujące nas informacje, natomiast subskrybując kanały RSS danych blogów czy portali – te informacje same o nas napływają. Nie musimy codziennie sprawdzać czy są jakieś nowe wpisy czy artykuły nas interesujące, czytnik RSS na bieżąco sam sprawdza czy czasem nie pojawiło się coś nowego, i w razie potrzeby informuje nas o tym. Jest to wygodniejsze i znacznie szybsze rozwiązanie, tylko poprzez przeglądanie kanałów, po tytułach lub po kawałku treści, możemy stwierdzić czy dany wpis/news/artykuł nas interesuje i chcemy go przeczytać w całości.

Aby usunąć kanał RSS z komentarzy, dodaj poniższy kod do functions.php Twojego szablonu:

remove_action( 'wp_head', 'feed_links' );
remove_action( 'wp_head', 'rsd_link');
remove_action( 'wp_head', 'wlwmanifest_link');
remove_action( 'wp_head', 'index_rel_link');
remove_action( 'wp_head', 'parent_post_rel_link');
remove_action( 'wp_head', 'start_post_rel_link');
remove_action( 'wp_head', 'adjacent_posts_rel_link');
remove_action( 'wp_head', 'wp_generator');

 

Średnio zaawansowane użycie WordPress, bezpieczeństwo, analityka, optymalizacja, narzędzia, Google Webmaster Tools.

Jak przenieść WordPressa na inną domenę – migracje, jak tworzyć backup WordPressa, Co to jest WordPress multisite i kiedy warto z niego korzystać

Wtyczki, plugins – jak instalować, jak konfigurować. Jakich wtyczek unikać. Po co instalować wtyczki, czemu służą i jak radzić sobie z błędami, które generują wtyczki.

Strona internetowa dostosowująca się do rozdzielczości urządzenia na jakim jest oglądana (dosłownie wrażliwa na jego rozdzielczość). Technika tworzenia stron responsywnych polega na tworzeniu paru wersji strony dostosowanej do różnych rozdzielczości. Podczas wczytywania strony lub zmiany jej rozdzielczości strona responsywna sprawdza aktualną rozdzielczość i dostosowuje się do niej poprzez wczytywanie odpowiednich wersji grafik oraz innych elementów. Często w stronach responsywnych inaczej zorganizowane są elementy nawigacji.

Wnętrze, szablony, temaplates. Większość zwraca uwagę na aspekty wizualne wersji szablonu – postaram się podpowiedzieć na co jeszcze rzucić okiem aby wybór szablonu nie okazał się pomyłką. Na początku może przedstawię najciekawsze źródła w jakich znajdziemy szablony.

Jak skonfigurować WordPressa, jak korzystać z mediów. Jak zrobić podstawową konfigurację bloga na wordpressie po zainstalowaniu.