WordPress – 5 trików i porad dla programistów to seria artykułów, w której pokazuje Tobie bardzo przydatne kawałki kodu gotowe od razu do zaimplementowania w twojej witrynie. Żeby jeszcze bardziej ułatwić Ci to zadanie cały kod jest możliwy do pobrania w formie pluginu.
1. Własne informacje kontaktowe
WordPress standardowo pozwala na dodanie paru informacji kontaktowych o danym użytkowniku w jego panelu. Email i strona WWW to jak na erę social media naprawdę niewiele. We wcześniejszych wersjach dostępne były jeszcze AIM, Yahoo i Jabber. Nie jest to problem, ponieważ w prosty sposób możemy dodać własne, dowolne pola.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | function wptat_contactmethods( $user_contact ) { // Add Twitter if ( !isset( $user_contact['twitter'] ) ) $user_contact['twitter'] = 'Twitter'; // Add Twitter if ( !isset( $user_contact['facebook'] ) ) $user_contact['facebook'] = 'Facebook'; // Add Google+ if ( !isset( $user_contact['gplus'] ) ) $user_contact['gplus'] = 'Google+'; return $user_contact; } add_filter( 'user_contactmethods', 'wptat_contactmethods', 10, 1 ); |
2. Odnośnik i jego tytuł na stronie logowania
W pierwszym wpisie serii, przy okazji zmian na stronie logowania użytkownik DMati zasugerował pokazanie sposobu w jaki możemy edytować odnośnik i jego tytuł na stronie logowania.
1 2 3 4 5 6 7 8 9 | function wptat_login_logo_url( $user_contact ) { return get_bloginfo( 'url' ); } add_filter( 'login_headerurl', 'wptat_login_logo_url' ); function wptat_login_logo_url_title() { return get_bloginfo( 'name' ); } add_filter( 'login_headertitle', 'wptat_login_logo_url_title' ); |
3. „Sprytny” tytuł
Same pliki szablonowe powinny być jak najprostsze i nie powinny udawać kontrolera. Niby sprawa oczywista, a jednak nie trzeba długo szukać by trafić na motyw, w którym ktoś uznał, że złożone warunki w szablonie to właściwe rozwiązanie. Warto pamiętać, że możemy tworzyć też własne tagi szablonowe i dzięki temu zachować porządek w plikach szablonowych.
1 2 3 4 5 6 | function wptat_the_title() { if ( is_single() ) the_title( '<h1 class="post__title">', '</h1>' ); else the_title( '<h1 class="post__title"><a href="' . esc_url( get_permalink() ) . '" rel="bookmark">', '</a></h1>' ); } |
4. Własne klasy dla postu
Z klas generowanych przez funkcję post_class możemy się wiele dowiedzieć ( jego status, format, id itd.). Czasami jednak nasze style dla postu mogą wymagać specjalistycznych informacji tj. to czy post ma miniaturę. Mamy wtedy dwa wyjścia. Pierwsze, napaskudzimy if-ami w plikach szablonowych (wyjątkowo kiepski pomysł również ze względu na częste łamanie zasady DRY). Drugie, zrobimy to jak należy za pomocą odpowiedniego filtru w pliku functions.php.
1 2 3 4 5 6 7 8 | function wptat_post_class( $classes ) { if ( has_post_thumbnail() ) $classes[] = 'has-thumbnail'; else $classes[] = 'no-thumbnail'; return $classes; } add_filter('post_class', 'wptat_post_class'); |
5. Własne klasy dla body
Innym tagiem generującym klasy jest body_class. Dostarcza on informacji m. in. o typie wyświetlanej strony i użytkowniku. Generowane klasy możemy edytować w podobny sposób.
1 2 3 4 5 6 7 8 | function wptat_body_class( $classes ) { if ( is_multi_author() ) { $classes[] = 'multi-author-blog'; } return $classes; } add_filter( 'body_class', 'wptat_body_class' ); |
Przydatne linki
Tagi: body_class • Facebook • Google+ • post_class • promowany • Twitter • WordPress • wp 5 trików i porad