TechBlogSD - Wszystko do WordPressa i tworzenia stron internetowych
Instrukcje WEB i WordPress, nowości, recenzje motywów i wtyczek

Duża metatabela postów w WordPressie? – Oto jak posprzątać

10

Większość firm hostingowych oferuje instalację WordPress za pomocą konfiguracji cPanel. Wykorzystuje bazę danych MySQL w zapleczu i phpMyAdmin do edycji zawartości bazy danych. Będziesz mieć również narzędzia w cPanel do zarządzania uprawnieniami użytkowników i tworzenia kopii zapasowych bazy danych. O ile sprawdziliśmy, jest to ta sama konfiguracja z popularnymi firmami hostingowymi, takimi jak SiteGround, Bluehost i HostGator, chyba że używasz niestandardowej dedykowanej opcji. Możesz zauważyć, że rozmiar bazy danych będzie rósł szybciej wraz z publikowaną treścią. W szczególności niewiele tabel w bazie danych MySQL będzie rosło znacznie szybciej w porównaniu do innych tabel. Post meta jest jedną z takich tabel i w tym artykule omówimy, jak wyczyścić tabelę wp_postmeta w WordPressie.

Co to są metadane posta?

Zanim przejdziemy do procesu czyszczenia, konieczne jest zrozumienie metadanych. To rodzaj danych informacyjnych wykorzystywanych do różnych celów. WordPress przechowuje treść związaną z postem w dwóch tabelach wp_posts i wp_postmeta. Tabela postów wp_posts zawiera wszystkie szczegóły związane z postem, autorem, datami, hasłem, statusem itp. Podczas gdy metatablica wp_postmeta zawiera DODATKOWE dane informacyjne.

Przykłady post metatabeli

Każde dodatkowe pole meta widoczne w edytorze postów doda dane do tabeli meta postu. Poniżej znajdują się niektóre z najbardziej znanych przykładów:

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Metadane wtyczki Yoast SEO

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Przejrzyj metadane wtyczki

  • Komercyjne motywy dodają meta pola dla ustawień układu i innych funkcji

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Metadane motywu

  • Pola niestandardowe tworzone przez wtyczki i motywy.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Pola niestandardowe w postach

Chociaż możesz wyłączyć te meta pola w edytorze Gutenberg, nadal każde meta pole będzie tworzyć wpisy w tabeli zaplecza.

Sprawdź rozmiar tabeli wp_postmeta

Domyślnie tabele MySQL będą miały przedrostek wp_. Na przykład tabela treści posta będzie podobna do wp_posts, a meta posta będzie podobna do wp_postmeta. Jeśli jednak zmieniłeś prefiks podczas instalacji, zobaczysz inny prefiks w swojej bazie danych.

  • Zaloguj się na swoje konto hostingowe cPanel.
  • Kliknij aplikację phpMyAdmin.
  • Wybierz swoją bazę danych i posortuj bazę danych za pomocą kolumny „Rozmiar".
  • Na górze znajdziesz największy stół.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Sprawdzanie rozmiaru tabeli w bazie danych WordPress

Jak widać na powyższym zrzucie ekranu, tabela postów ma rozmiar 26,6 MB, a tabela postów ma rozmiar 109,8 MB. Jest to wyraźny symbol ostrzegawczy, że coś wpływa na rozmiar postu metatabeli i musisz popracować nad czyszczeniem.

Struktura tabeli wp_postmeta

Metatabela postu ma cztery pola o poniższej strukturze. Meta ID, post ID, meta klucz i wartości meta to cztery pola dostępne w tabeli. Musisz skupić się na meta_key, aby znaleźć wtyczkę, która tworzy wpisy w tabeli.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Struktura metatabeli postu WordPress

Ustalenie pierwotnej przyczyny dużego rozmiaru

Ważne jest, aby najpierw zrozumieć, co powoduje, że meta postu się powiększa. Jak wyjaśniono w powyższych przykładach, istnieje wiele innych powodów, które możesz znaleźć.

  • Wtyczki, które dodają metaboxy w edytorze postów, takie jak SEO, recenzje i wtyczki społecznościowe.
  • Wtyczki społecznościowe, które dodają niestandardowe preferencje dla każdego posta.
  • Wtyczki forów, takie jak bbPress i wtyczki sklepów internetowych, takie jak WooCommerce.
  • Motywy, które dodają pola meta dla ustawień układu, tła i formatu.

Pamiętaj, że duży rozmiar bazy danych spowoduje problemy, takie jak powolna strona internetowa i importowanie na lokalny serwer lub podczas migracji do innej firmy hostingowej.

Problemy z wtyczkami, które dodają Meta Boxy

Istnieje wiele wtyczek tworzących wpisy w metatabeli postu.

Przejrzyj wtyczki

W powyższym przykładzie głównym powodem była wtyczka WP Review, która dodaje ponad 30 wpisów dla każdego identyfikatora postu.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Przejrzyj dane wtyczek w post metatabeli

Większym problemem jest to, że wtyczka dodaje wpisy związane z recenzjami w każdym poście, niezależnie od tego, czy używasz recenzji w poście. Jeśli masz 10 recenzji na blogu, który zawiera 10000 postów, musisz usunąć wtyczkę recenzji, aby zabezpieczyć swoją witrynę.

Wtyczki SEO

Ten sam problem dotyczy Yoast i innych wtyczek SEO. Jednak zrozumiałe jest, że każdy post musi mieć tytuł i opis SEO. Dlatego zastanów się dwa razy, zanim zainstalujesz jakąkolwiek wtyczkę z meta polami w edytorze, aby kontrolować ustawienia.

Większe wtyczki sklepu i forum

Z natury nie należy łączyć sklepu lub forum z istniejącą witryną bloga. To drastycznie zmniejszy prędkość i zwiększy rozmiar w różnych tabelach, w tym wp_posts i wp_postmeta. Na przykład popularna wtyczka WooCommerce doda setki tysięcy wpisów w metatabeli postu dla danych rozliczeniowych, kraju i klienta. Zawsze możesz hostować swój sklep w subdomenie lub podkatalogu w innej bazie danych, aby zapobiec wpływowi na główny blog.

Powiązane posty i wtyczki społecznościowe

Powiązane posty i wtyczki społecznościowe zwiększą ogromne obciążenie bazy danych poprzez zapytania. Zwłaszcza posty związane z dynamiką są na tyle niebezpieczne, że przekraczają ograniczenia Twojego konta hostingowego. Spróbuj użyć wbudowanych postów związanych z tematem lub usług innych firm, takich jak Taboola, Outbrain lub AdSense z dopasowaną treścią. Chociaż nastąpi pewien kompromis w szybkości witryny, możesz bezpiecznie chronić swoją bazę danych.

Komercyjne motywy z wieloma pudełkami w edytorze

Nawet lekkie motywy, takie jak GeneratePress, mają w edytorze wiele metapól. Te meta pola dodadzą wpis do każdego postu i zwiększą rozmiar Twojej bazy danych. Dlatego sprawdź i przetestuj swoją witrynę na początku, zanim planujesz zbudować. Zalecamy zachowanie ustawień globalnych na poziomie witryny zamiast dostosowywania każdego posta w edytorze.

Zbyt wiele obrazów

Innym powodem rosnącej meta postu jest użycie zbyt wielu obrazów. WordPress przechowuje metadane załącznika, szczegóły kompresji i szczegóły tagu alt w metatabeli postu.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Metadane obrazu

Jeśli masz dużą liczbę obrazów, zwiększy to rozmiar twojej tabeli wp_postmeta ze szczegółami danych alt i meta. Ponadto, jeśli masz wtyczki do kompresji obrazu, takie jak WP Smush, doda również wpisy w tabeli.

Pola niestandardowe

Większość z wyżej wymienionych wtyczek utworzy niestandardowe pola do wykorzystania w backendzie. WordPress przechowuje te niestandardowe pola w tabeli post_metadata, zwiększając w ten sposób rozmiar Twojej bazy danych. Problem polega na tym, że nawet jeśli odinstalujesz i usuniesz wtyczki, te niestandardowe pola w starych postach nie zostaną usunięte. Musisz ręcznie usunąć je z edytora postów lub bezpośrednio z bazy danych.

Kopia zapasowa przed czyszczeniem

W ramach najlepszej praktyki zawsze wykonaj kopię zapasową bazy danych przed wykonaniem jakichkolwiek nieodwracalnych działań.

  • Kiedy jesteś w phpMyAdmin, przejdź do zakładki „Eksportuj”.
  • Bazę danych w formacie SQL możesz szybko pobrać za pomocą opcji „Szybko – wyświetl tylko minimalne opcje”.
  • Zalecamy jednak wybrać opcję „Niestandardowa – wyświetl wszystkie możliwe opcje” i wybrać kompresję jako „gzip”, aby pobrać bazę danych w skompresowanym formacie GZIP.

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Eksportuj kopię zapasową bazy danych z phpMyAdmin

Oczyszczanie tabeli wp_postmeta

Teraz, gdy wiesz, co to jest post meta i dane przechowywane w tabeli wp_postmeta.

  • Zdecydowanie zalecamy usunięcie wtyczek, które dodają wpisy dla każdego postu. Najlepszą opcją jest przeniesienie wtyczek do oddzielnej instalacji, dzięki czemu można podzielić bazę danych, aby kontrolować rozmiar. Na przykład możesz mieć sklep lub recenzje w osobnej instalacji, aby wtyczka recenzji WooCommerce nie umieszczała wpisów w metatabeli postu. To samo dotyczy posiadania forum bbPress.
  • Sprawdź, czy możesz zmienić motyw na prosty i czysty, który nie zrzuca danych w bazie danych zaplecza.

Pamiętaj, że oprócz wydania bazy danych wiele motywów i wtyczek będzie tworzyć miniatury do prezentowania mniejszych obrazów w obszarze paska bocznego i stopki. Często zdarza się, że na każdy przesłany obraz przypada 10 miniatur. Spowoduje to zbyt duże zużycie przestrzeni dyskowej i spowolnienie całej witryny. Wybierz więc swój motyw i wtyczki mądrze w oparciu o swoje potrzeby i nie patrz na te wszystkie funkcje, których nigdy nie używasz.

Usuwanie nieużywanych wpisów meta post

Istnieją również wtyczki do optymalizacji bazy danych, takie jak WP Optimize i WP Rocket, które umożliwiają wyczyszczenie bazy danych. Jednak żadna z tych wtyczek nie usunie nieużywanych wpisów z tabeli wp_postmeta. Wiele wtyczek i motywów nie usunie wpisów bazy danych nawet po usunięciu ich z witryny. Aby znaleźć nieużywane wpisy, możesz sprawdzić wartość meta_key dla dowolnych pojedynczych postów w tabeli wp_postmeta.

Użyj poniższego zapytania w zakładce SQL, aby przefiltrować i dowiedzieć się, ile wpisów znajduje się dla słowa kluczowego. Poniższe zapytanie filtruje wpisy z wtyczki WP Smush ze słowem kluczowym %smpro%.

WYBIERZ * Z wp_postmeta GDZIE meta_keyJAK ‘%smpro%’

Duża metatabela postów w WordPressie? – Oto jak posprzątać

Wynik zapytania z post metatabeli

Możesz użyć słów kluczowych, takich jak zamówienie dla WooCommerce, recenzja w celu znalezienia recenzji i bbp dla wpisów bbPress. Użyj słowa kluczowego, którego wtyczka używa w tabeli, aby dowiedzieć się, ile wpisów wtyczka lub motyw utworzyła w metatabeli postu.

Po zakończeniu wyszukiwania nieużywanych wpisów nadszedł czas, aby je usunąć. Użyj poniższego zapytania, aby usunąć wszystkie wpisy zawierające słowo kluczowe „przegląd”. Zastąp słowo kluczowe odpowiednie dla Twojej sprawy, aby usunąć wpisy z post metatabeli.

USUŃ Z wp_postmetaGDZIE meta_keyJAK ‘%review%’;

Usuwanie pól niestandardowych

Aby usunąć niestandardowe pola, powinieneś znać nazwę i miejsce użycia listy postów. Prostym sposobem jest usunięcie ich z bazy danych za pomocą podobnego kodu jak powyżej. Jeśli martwisz się usunięciem z bazy danych, edytuj posty, które mają niestandardowe pola i usuń je ręcznie. Musisz jednak usuwać je pojedynczo na każdym poście, co jest czasochłonnym zadaniem.

Jeśli znasz czas usunięcia wtyczki lub zmiany motywu, możesz poszukać postów opublikowanych wcześniej. Pomoże Ci to skoncentrować się na poprawnych postach, które zawierają nieużywane pola niestandardowe.

Źródło nagrywania: www.webnots.com
Leave A Reply

Ta strona korzysta z plików cookie, aby poprawić Twoje wrażenia. Zakładamy, że nie masz nic przeciwko, ale możesz zrezygnować, jeśli chcesz. Akceptuję Więcej szczegółów