Praca z niestandardowymi tabelami bazy danych w WordPress

  • Edmund Richardson
  • 0
  • 3678
  • 1075
Reklama

Pokazałem Ci wiele sposobów, dzięki którym WordPress jest już najbardziej elastycznym systemem CMS 5 rzeczy, których możesz nie wiedzieć, że możesz zrobić z Wordpress 5 rzeczy, których możesz nie wiedzieć, że możesz zrobić z Wordpress Będąc najbardziej wszechstronnym systemem blogowania, to nie jest zdziwienie, że programiści przekręcili i sprawili, że Wordpress stał się o wiele bardziej dzięki sprytnemu użyciu wtyczek. Jeśli myślałeś, że Wordpress jest tylko dla… Szybki skan strony Best of WordPress Plugins ujawni także niektóre z wielu unikalnych i niszowych sposobów, dzięki którym blog będzie ciężej pracować. Pokazałem nawet, jak korzystać z niestandardowych typów postów Jak tworzyć własne listy zdarzeń przy użyciu niestandardowych typów postów w WordPress Jak tworzyć własne listy zdarzeń przy użyciu niestandardowych typów postów w WordPress WordPress pozwala używać niestandardowych typów postów do rozszerzenia wbudowana funkcjonalność. Oto jak to zrobić bez wtyczek. stworzyć własną mini bazę danych Utwórz bazę danych przeglądu produktów za pomocą Wordpress: niestandardowe typy postów, niestandardowe pola, wyróżnione obrazy i widżety! Stwórz bazę danych recenzji produktów za pomocą Wordpress: niestandardowe typy postów, niestandardowe pola, wybrane obrazy i widżety! Ostatnim razem pokazaliśmy, jak utworzyć prostą listę wydarzeń, używając być może najbardziej zaawansowanej funkcji WordPress 3.0 - niestandardowych typów postów. Po kilku prośbach o dalsze rozwijanie tego, dzisiaj będziemy…; ale chyba jedną rzecz pominęłem.

Co jeśli masz już bazę danych powiedzmy informacji o kliencie, ale chcesz móc wyszukiwać te dane i wyświetlać je w szablonie WordPress? Dzisiaj pokażę ci, jak to zrobić, bezpiecznie w silniku WordPress.

Wymagania

  • Oczywiście twoja własna witryna WordPress.
  • Podstawowe umiejętności PHP i MySQL - polecam samouczki Tizag PHP i MySQL, ponieważ obejmują one więcej niż wystarczającą ilość, a Ty możesz pracować nad nimi w ciągu dnia i odwoływać się do nich ponownie w razie potrzeby.
  • Istniejący zestaw danych w MySQL.
  • Wiersz polecenia dostępu PHPMyAdmin do scalenia baz danych.
  • Jedna baza danych z obydwoma zestawami danych - oznacza to, że musisz scalić tabele bazy danych WordPress z istniejącą bazą danych i zmienić wp-config.php odzwierciedlać nową nazwę użytkownika i hasło do bazy danych; lub zaimportuj istniejący zestaw danych do bazy danych WordPress. Łatwiej jest, jeśli nie masz innego systemu, który opiera się na danych. Tak czy inaczej, zakładam, że wykonałeś już ten krok - sprawdź mój artykuł na temat tworzenia pełnej kopii zapasowej bazy danych za pomocą wiersza polecenia SSH Jak wykonać kopię zapasową witryny za pośrednictwem wiersza polecenia SSH Jak wykonać kopię zapasową witryny za pośrednictwem SSH Wiersz poleceń Tworzenie kopii zapasowej witryny lub bloga może być kosztownym i uciążliwym zadaniem, wymagającym różnych wtyczek lub dodatkowych planów od dostawcy usług hostingowych - ale tak naprawdę nie musi być. Jeśli masz SSH… jeśli potrzebujesz tam wskaźników.

Ten samouczek jest tak zaawansowany, jak to możliwe w MakeUseOf, ale powinien otworzyć przed Tobą świat możliwości.

Dlaczego miałbym to zrobić??

Pomimo wielu wtyczek i rozszerzeń dostępnych dla nas w WordPress, czasami masz już zestaw danych i migracja go do formatu, który lubi WordPress, byłaby bardziej kłopotliwa niż jest warta - szczególnie jeśli masz inny system, z którym musisz współpracować.

Dzisiaj wezmę przykład prostej bazy danych informacji o kliencie i stworzymy szablon strony z listą tych klientów - tylko dla zarejestrowanych użytkowników WordPress (chociaż sama strona będzie dostępna z frontonu strony ).

Jako odniesienie do nazw kolumn i tabel w bazie danych pomocne może być zainstalowanie wtyczki Przeglądarka bazy danych, która pozwoli również uruchomić podstawowy gdzie i Zamów przez zapytania w celu przetestowania kodu SQL. Oto zrzut ekranu z przykładowym zestawem danych, który utworzyłem - w tym przypadku tabela o nazwie Klienci, zawierająca podstawowe informacje o każdym z moich bardzo ważnych klientów.

Co dokładnie zrobimy tutaj?

  • Tworzenie nowego szablonu strony, do którego możemy następnie zastosować niestandardowy kod PHP.
  • Patrząc, jak utworzyć niestandardowe zapytanie do bazy danych, a następnie przeanalizować wyniki - za pomocą wbudowanych klas bazy danych WordPress.
  • Sprawdzanie uprawnień na wypadek, gdybyś chciał ograniczyć dostęp.

Tworzenie niestandardowego szablonu

Jeśli chcesz użyć własnego kodu PHP, najłatwiej to zrobić, tworząc szablon niestandardowy, a następnie zastosuj szablon do konkretnej strony utworzonej w WordPress. Zacznij od otwarcia plików motywu i skopiowania pliku page.php (lub single.php jeśli nie ma). Zmień nazwę na coś oczywistego, na przykład “template-klienci.php” jak wybrałem.

Na samej górze pliku musimy poinformować WordPress, że jest to szablon niestandardowy. Zrób to, dodając następujące elementy (jest to komentarz w stylu PHP, więc powinien znajdować się po każdym otwierającym tagu PHP, jeśli jest obecny):

/ * Nazwa szablonu: Klienci * /

Oczywiście nazywaj to jak chcesz.

Teraz znajdź główną funkcję zawartości. Możesz go usunąć, jeśli chcesz, ale dodam po nim dodatkowy kod. Dzięki domyślnemu motywowi dwadzieścia jedenastu szukasz:

Ale w większości tematów będzie to coś w rodzaju:

To jest bit, który wyświetla twoją treść postu, więc wszystko, co dodasz później, będzie wyświetlane tuż za głównym obszarem zawartości. Aby sprawdzić, czy wszystko działa, dodajmy podstawowe polecenie echa i zapisz plik.

Zanim będziemy mogli to sprawdzić, musimy utworzyć stronę na stronie administratora WordPress i zastosować do niej nasz szablon strony.

Opublikuj i sprawdź stronę, aby sprawdzić, czy instrukcja echa działa.

Niestandardowa klasa zapytań

Aby uzyskać bezpośredni dostęp do bazy danych, wystarczy użyć obiektu $ wpdb, czyniąc go globalnym. Te trzy wiersze powinny to zrobić - zastąp ogólną instrukcję echa, którą napisaliśmy wcześniej:

get_results („WYBIERZ * OD klientów;”); print_r (klienci $); ?>

Zapisz i odśwież stronę. The funkcja print_r () po prostu zrzuca wszystkie dane z obiektu klienta - więc powinieneś zobaczyć, że prosta instrukcja SQL, aby wybrać wszystko z tabeli klientów, działa dobrze. Teraz wszystko, co musisz zrobić, to parsować wyniki do czegoś użytecznego. Oczywiście możesz wstawić dowolną instrukcję SQL select do uzyskać rezultaty() metoda, ale nie jestem tutaj, by uczyć cię SQL, więc na razie będziemy trzymać się wszystkiego.

Aby parsować wyniki w coś bardziej sensownego, na razie użyję podstawowej tabeli. Zastąp print_r Metoda z następującym kodem (nie martw się, wkleję później cały kod, jeśli sam nie chcesz go poskładać):

Echo ""; foreach ($ klienci jako $ klient) echo""; Echo ""; Echo ""; Echo ""; Echo ""; Echo "";  Echo "
„. $ customer-> name.”„. $ customer-> email.”„. $ klient-> telefon”.„. $ klient-> adres”.
„;

Gdy znajdziesz już każdy obiekt klienta w dla każdego, możesz łatwo uzyskać dostęp do nazw pól za pomocą $ klient-> nazwa_pola - to naprawdę nie może być prostsze.

Zabezpieczanie rzeczy

W tym przypadku tak naprawdę nie chcę, aby dane moich klientów były wyświetlane tylko nikomu i indeksowane przez wyszukiwarki - ale nadal chcę, aby były wyświetlane w interfejsie użytkownika przy użyciu tego szablonu; więc co możemy zrobić? Łatwo, wykorzystamy warunek WordPress is_user_logged_in (), i wyświetl szybką wiadomość, jeśli nie są. Oto cały blok kodu ponownie z dodanym nowym warunkowym:

get_results („WYBIERZ * OD klientów;”); Echo ""; foreach ($ klienci jako $ klient) echo""; Echo ""; Echo ""; Echo ""; Echo ""; Echo "";  Echo "
„. $ customer-> name.”„. $ customer-> email.”„. $ klient-> telefon”.„. $ klient-> adres”.
"; else: echo" Przepraszamy, tylko zarejestrowani użytkownicy mogą przeglądać te informacje "; endif;?>

Zapisz i odśwież, a zawartość powinna być nadal wyświetlana. Wyloguj się, następnie odśwież stronę, a zobaczysz “Przepraszamy, tylko zarejestrowani użytkownicy… ” wiadomość.

Jeśli chcesz ograniczyć to do określonych poziomów użytkowników, a nie wszystkich zarejestrowanych użytkowników, skorzystaj z current_user_can () zamiast tego warunkowe, wraz z powiązaną funkcją (o możliwościach w kodeksie). Sprawdziłoby to na przykład użytkowników administracyjnych - jedynych użytkowników, którzy mogą zarządzać opcjami wtyczek:

current_user_can ('manage_options')

streszczenie

Zostawię to dzisiaj, ponieważ wszystko inne stałoby się samouczkiem SQL lub jak stylizować wyniki za pomocą CSS. Niebo naprawdę jest granicą w WordPress i mam nadzieję, że przyda się to niektórym z was w waszych projektach WordPress.

W przyszłym tygodniu zajmę się nieco trudniejszym tematem, jak wstawiać dane z powrotem do niestandardowej bazy danych za pomocą formularza na stronie i odrobiny magii AJAX / jQuery. I spójrz na niektóre z naszych innych przewodników WordPress, takich jak rozwiązywanie 500 wewnętrznych błędów serwera i pustych stron The Ultimate Guide to Rozwiązywanie 500 wewnętrznych błędów serwera i pustych białych stron w WordPress The Ultimate Guide do rozwiązywania 500 wewnętrznych błędów serwera i pustych białych stron w WordPress Masz problem z 500 wewnętrznymi błędami serwera i pustymi stronami w WordPress? Oto jak je naprawić od razu. i wyróżnione rozmiary miniatur i obrazów Kompletny przewodnik po polecanych miniaturach i rozmiarach obrazków w WordPress Kompletny przewodnik po wyróżnionych miniaturach i rozmiarach obrazków w WordPress Oto wszystko, co musisz wiedzieć o rozmiarach obrazków w WordPress i zarządzaniu polecanymi obrazami. .

Nie masz jeszcze instalacji WordPress? Sprawdź nasz przewodnik po instalacji WordPress na Bluehost Jak zainstalować WordPress na Bluehost Jak zainstalować WordPress na Bluehost Bluehost jest jednym z największych, najpopularniejszych dostawców hostingu. Oto prosty przewodnik na temat instalacji WordPress na Bluehost. .




Jeszcze bez komentarzy

O nowoczesnej technologii, prostej i niedrogiej.
Twój przewodnik w świecie nowoczesnych technologii. Dowiedz się, jak korzystać z technologii i gadżetów, które nas otaczają każdego dnia i dowiedz się, jak odkrywać ciekawe rzeczy w Internecie.