W artykule:
Znowu ta pora roku! Czas poświęcić się robieniu rzeczy, które zawsze chciałeś zrobić, na podjęcie nowych nawyków do samodoskonalenia i zdefiniowanie, co chcesz być w Nowym Roku.
Postanowienia noworoczne są dla niektórych coroczną tradycją, ale nie zawsze muszą być obietnicami dla siebie, które łamiesz. Jeśli chcesz zachować wynik, WordPress może być idealnym towarzyszem, który pomoże Ci pozostać na dobrej drodze i rozbić swoje cele.
W dzisiejszym poście pokażę Ci, jak stworzyć prostą aplikację do śledzenia celów, która obsługuje cele jednorazowe, cele typu nawyku, dziennik rozdzielczości, a także tworzy statystyki za pomocą widżetu.
Zaczynajmy!
Ustalanie Celów
Idea tego noworocznego projektu jest prosta: chcę mierzyć poziom aktywności moich celów na podstawie liczby postów, które o nich piszę. Całkiem proste, prawda? Najprostszym sposobem na to jest tworzenie celów jako kategorii, a następnie przypisywanie tych kategorii do postów.
Po pierwsze, cele. Oto niektóre z moich, które dodałem jako kategorie z opisami do WordPressa:
Użyłem dwóch kategorii najwyższego poziomu, „nawyki” i „jeden raz”, aby ułatwić rozróżnienie między dwoma różnymi typami celów.
Dodałem również specjalną kategorię najwyższego poziomu o nazwie „Status nawyku” z dwiema podkategoriami: niekompletna i kompletna. Plan polega na użyciu tych podkategorii, aby wskazać sukces lub porażkę nawyku. Na przykład jednym z moich celów jest picie większej ilości wody. Postanowiłem zacząć od minimum czterech szklanek dziennie. Dodam liczbę szklanek każdego dnia, a jeśli jest większa lub równa czterem, użyję kategorii „kompletne”, w przeciwnym razie użyję kategorii” niekompletne”.
Moglibyśmy wykryć to automatycznie za pomocą jakiegoś kodu, ale wszystkie nasze nawyki będą miały różne kryteria sukcesu lub porażki, co sprawiłoby, że byłoby to trudne. Ręczne określanie postępów celów jest łatwiejsze.
Dodawanie Nowych Wpisów Do Celów
Jeśli chcesz zajść tak daleko, to już po tobie! Powinieneś teraz mieć system kategorii, który pomoże Ci sortować rozdzielczości i śledzić postępy. Możesz zacząć dodawać nowe posty do swojej witryny pomiń resztę tego samouczka.
Aby dodać nowe wpisy, utwórz post tak, jak zwykle i przydziel mu cel z kategorii” nawyki „lub” One Timers”. Jeśli przypisałeś nawyk, upewnij się, że jest to wpis „kompletny” lub „niekompletny”.

Jeśli chcesz posunąć się o krok dalej, czytaj dalej.
Pierwsze Kroki Z Modyfikacjami
W dalszej części tego samouczka będziemy dodawać nowe funkcje do istniejącego motywu, modyfikując widok zaplecza i interfejsu, dodając opcje i wszelkiego rodzaju inne elementy.
Większość z nich powinna być umieszczona we wtyczce. Modyfikowanie motywu wymaga jednak motywu podrzędnego. Aby uczynić rzeczy łatwiejszymi w zarządzaniu, zdecydowałem się umieścić całą funkcjonalność wtyczki w motywie podrzędnym.
Uwaga: nie jest to najlepsza praktyka! Jeśli planujesz zaimplementować dowolny z poniższych kodów w witrynie, która nie jest wyłącznie do użytku osobistego, użyj wtyczki i motywu podrzędnego razem. Wszelkie funkcje, które chcesz zachować podczas przełączania motywów (na przykład modyfikacje listy postów administratora i opcje postów), muszą przejść do wtyczki.
Temat wybrałem dla tego projektu jest domyślny motyw dwadzieścia piętnaście, ponieważ chcę coś miłego i minimalne.
Tworzenie motywu potomnego
Tworzenie motywu podrzędnego jest prostym procesem, ale jeśli nigdy go nie skonfigurowałeś, najlepiej jest przeczytać nasz przewodnik, Jak utworzyć motyw podrzędny WordPress.
Ale oto krótkie podsumowanie: aby utworzyć motyw potomny, Dodaj folder w głównym folderze „motywy”. Nazwałem mój folder Goal-tracker
. Utwórz dwa pliki w tym folderze: styl.css
oraz funkcje.php
. A następnie dodaj to do swojego arkusza stylów:
W pliku functions musimy upewnić się, że styl motywu nadrzędnego jest zastosowany, więc zapytamy go w ten sposób:
Dodatkowo możesz dodać zrzut ekranu.png
obraz, dzięki czemu Twój motyw dziecka wygląda ładnie w Wygląd > Motywy Ekran w zapleczu witryny WordPress. Możesz pobrać obraz, który zrobiłem poniżej:

Podziękowania dla Grega Rakozy ’ ego za wspaniały obraz. Jeśli zdecydowałeś się stworzyć własny obraz, upewnij się, że 880×660 spełnia wymagania tematyczne.
Modyfikowanie widoku zaplecza
Istnieje kilka modyfikacji, które możemy wprowadzić do zaplecza WordPress, które nie tylko uczynią interfejs celu czystszym, ale także ułatwią nawigację.
Widok listy postów (na zdjęciu na górze tego artykułu) wygląda i działa dobrze, ale jest kilka informacji, które chciałbym zobaczyć, że nie ma, a niektóre informacje, które są zbędne, nie muszą być wyświetlane. Na razie pozbądźmy się komentarzy oraz kolumn tagów i autorów. Później dodamy dodatkowe informacje do widoku postu, gdy dodamy nowe opcje.
Aby zmodyfikować liczbę kolumn używanych na liście postów, musisz użyć manage_[post_type]_posts_columns
hak, gdzie [post_type]
powinien to być rzeczywisty typ Posta, do którego go stosujesz.
Funkcja hooked przekazuje tablicę domyślnych kolumn. Możesz do niego dodawać lub usuwać elementy-poniżej usuwam trzy kolumny-komentarze, tagi i autora-których nie potrzebujemy:
Nazwy naszych kategorii są również nieco długie. Ponieważ usunęliśmy kilka kolumn, nie ma dużo miejsca na wyświetlanie nazw w całości. Dodajmy więc arkusz stylów administratora, który daje więcej miejsca naszym kategoriom.
Najpierw napiszmy nasze style. Utwórz nowy plik o nazwie post-list.css
i zapisz go w folderze motywu podrzędnego. Dodaj następujący kod do pliku:
Wszystko, co musimy zrobić, to zapytać o to w pliku funkcji. Zrobimy to za pomocą admin_enqueue_scripts
hak, za pomocą get_current_screen()
funkcja, która pomoże nam dołączyć go tylko do ekranu listy postów:
Na get_current_screen()
funkcja dostarcza wszelkiego rodzaju przydatnych informacji na temat naszej bieżącej strony. Wydrukuj i zobacz! Pamiętaj, aby zadzwonić po admin_init
hak jest uruchomiony, w przeciwnym razie nie zadziała.
Na koniec tego wszystkiego, powinniśmy mieć nowy widok listy postów, który wygląda tak:

Modyfikowanie widoku Front-End
W tej chwili nasze cele wyglądają całkiem nieźle, ale chcę wprowadzić więcej modyfikacji (oczywiście!).
Zanim zaczniemy wprowadzać zmiany, oto jak posty powinny wyglądać teraz na front-endzie:

Początkowo chcę usunąć link do komentarzy. Chcę również usunąć nazwy kategorii” niekompletne „i” kompletne ” z wyświetlania w postach i zamiast tego wyświetlać małą ikonę zamiast tekstu.
Motyw Twenty Fifteen używa funkcji o nazwie twentyfifteen_entry_meta()
do wyprowadzania metadanych. Ponieważ twórcy tematu zapakowali go w function_exists()
zadzwoń, możesz nadpisać tę funkcję po prostu definiując ją w swoim motywie podrzędnym. Kopiuj-wklej całą tę funkcję z inc / template-tags.php
file in Twenty Fifteen to the functions file of your child theme.
Następnie na samym dole tej funkcji znajduje się kod linku do komentarza. Usuń całość jeśli
blok na dole.
Kategorie będą wymagały trochę więcej pracy, ale możemy zostawić wszystko tak, jak jest i uzyskać filtr do naszego ciężkiego podnoszenia. Oto jak cała twentyfifteen_entry_meta()
powinien wyglądać:
Twenty Fifteen używa get_the_category_list()
funkcja pobierania listy kategorii. Jeśli spojrzysz na kod źródłowy tej funkcji w wp-includes / category-template.php
widać, że filtr jest uruchomiony na liście kategorii i nazywa się the_category_list
. Przyjmuje listę kategorii jako pierwszy parametr i post ID jako drugi. Załóżmy tam funkcję i usuń status nawyku:
Następnie ponownie dodajmy status nawyku jako czerwony lub zielony wskaźnik, w zależności od statusu. Najpierw napisałem funkcję, która zwraca status posta. Efekt końcowy mojej get_habit_status()
funkcja jest obiektem term, terminem stanu:
Musimy odzyskać nadrzędny termin przyzwyczajenia, a następnie uzyskać wszystkie warunki dla dzieci. Stamtąd musimy zrobić małą żonglerkę. Utworzyłem dwie nowe tablice, jedna zawiera tylko identyfikatory Stanów, druga jest zasadniczo taka sama jak poprzednio, ale klucze tablicy są identyfikatorami terminowymi.
Następnie musimy pobrać identyfikatory terminów związane z postem. Skrzyżowanie $habit_status_ids
oraz $kategorie
tablica powinna dać mi statusy nawyków przypisane do stanowiska. Musimy użyć pierwszego statusu (powinien być jedyny) i poszukać pokrewnego terminu obiekt w naszym $ habit_list
array, a następnie zwróć go.
Z powrotem w twentyfifteen_entry_meta()
funkcja, dodałem mały fragment na dole:
Najpierw złapałem status nałogu. Jeśli post nie ma statusu nawyku, funkcja zawsze zwraca false, w takim przypadku niczego nie wypisujemy. Inaczej, prosta rozpiętość z klasą zwyczaj-status-wskaźnik
dodatkowo wyświetlana jest klasa wywodząca się z ślimaka. W naszym przypadku kończymy ze wskaźnikami z klasą niekompletne
lub complete
.
Pozostaje tylko dodać trochę CSS do tego stylu. Wybrałem absolutną pozycję po lewej stronie, dodając następujące elementy do arkusza stylów:

Wyświetlanie statystyk za pomocą prostego widżetu
Najlepszym sposobem na uzyskanie dobrego przeglądu naszych nawyków jest statystyka, a najlepszym sposobem wyświetlania statystyk dla WordPress jest widżet.
Aby rozpocząć, Utwórz gt-stats.klasy.php
plik w katalogu motywu-to będzie trzymać naszą klasę widget. Dodaj do niego następującą zawartość:
To jest rama, której użyjemy. Konstruktor poda widżetowi jego nazwę, opis i inne właściwości w panelu administracyjnym. Na forma()
funkcja zdefiniuje formularz używany do dodawania opcji do widżetu, a widget()
funkcja wyświetla widżet na interfejsie.
Dodam jedną opcję do widżetu, możliwość dodania tytułu. W funkcji wyświetlania wezmę wszystkie nasze statusy, przejrzę je i wyświetlę liczbę postów dla każdego. Oto Pełny kod dla klasy widget:
WordPress nie wie jeszcze o tym widżecie, więc musimy dołączyć plik i zarejestrować widżet. Zrobiłem to w pliku functions, tak:
A oto jak to wygląda na front-endzie:

Dodatkowe Opcje
Możesz dodać więcej danych i dostroić swój tracker za pomocą niestandardowych pól. Jeśli przeczytałeś niektóre z moich postów, wiesz, że jestem wielkim fanem zaawansowanych niestandardowych pól i używam tej wtyczki do wielu aplikacji. Jeśli chcesz dodać niestandardowe pola do swoich nawyków, polecam lekturę tworzenie idealnego bloga podróżniczego WordPress lub tworzenie konfigurowalnego szablonu listy postów. Oba te artykuły zawierają mnóstwo informacji na temat korzystania z ACF.
Ale pozwólcie, że pokażę wam szybki przykład. Po zainstalowaniu zaawansowanych pól niestandardowych można utworzyć grupę pól o nazwie ” Opcje wody.”W ramach tej grupy Dodaj pole liczbowe o nazwie” okulary dzisiaj.”W opcjach lokalizacji upewnij się, że przypisujesz ją tylko do postów, które są przypisane do kategorii „pij więcej wody”. Dzięki temu Twój administrator będzie czysty i możesz przypisać różne opcje do różnych celów.

Mogę teraz przejść do dowolnego postu w tej kategorii i wskazać, ile szklanek wody wypiłem.

Informacje te są zapisywane w tabeli meta, co oznacza, że mogę je łatwo odzyskać. Dodajmy to do stopki wpisu używając twentyfifteen_entry_meta()
. Dodaj następujący tekst na końcu funkcji:
Dodałem również drobną ciekawostkę CSS do arkusza stylów, aby wyglądał ładnie:
Na koniec powinien wyglądać mniej więcej tak, jak na poniższym obrazku.

Smashing New Year ’ s Goals
Dostosowania, które właśnie omówiliśmy, to tylko wierzchołek góry lodowej i możesz zrobić o wiele więcej, aby uczynić to swoim własnym. Możesz więcej niestandardowych danych, pokazać te dane w ciekawy sposób wewnątrz samych postów, użyć niestandardowych danych do generowania bardziej skomplikowanych statystyk, zmodyfikować administratora, aby pokazać niestandardowe Dane i wiele więcej!
Życzę wam wszystkim wspaniałego Nowego Roku! Postaram się dowiedzieć jeszcze więcej o WordPressie w 2016 i wnieść jak najwięcej wkładu. A Ty? Podziel się swoimi celami WordPress na Nowy Rok w komentarzach poniżej.
Tagi: