I den här artikeln visar vi olika sätt att optimera din WordPress-databas, för att göra din sida smidigare och förbättra laddningstiden.
Tänk på: Var väldigt försiktig när du arbetar i phpMyAdmin då det inte går att ångra ändringar. Vi rekommenderar att du gör en backup innan du gör några ändringar.
- Rekommenderade plugin-program för att optimera databasen
- Radera transients
- Radera inläggsversioner
- Radera överbliven metadata från inlägg
- Radera data som blivit kvar från avinstallerade plugin-program
- Radera WooCommerce-sessioner
Obs! När vi nämner wp_options-tabellen i en query eller andra tabeller i din databas ska du ersätta "wp" med det prefix som använts i din WordPress-installation. Ett prefix är den identifierare som kommer före delen "_options". Det kan till exempel vara: "www_options", "wp_options" eller "subdomain_options".
Rekommenderade plugin-program för att optimera databasen
Om du inte är bekant med så kallade databas queries kan du prova ett av de kostnadsfria plugin-programmen med öppen källkod som anges nedan eller kolla in premiumpluginen WP Rocket.
Radera transients
WordPress lagrar cachedata från plugin-program i wp_options-tabellen s.k. transients, som förbättrar prestandan för din hemsida. De kan jämföras med webbläsarens cookies.
Transients har ett förfallodatum och raderas automatiskt när tiden är ute. Det är dock inte alltid detta fungerar, utan datan blir kvar. Den kan samlas med tiden, fylla upp databasen och göra din sida långsammare, i synnerhet om du har en stor hemsida. Därför är det en bra idé att rensa bort och radera transients.
- Öppna databasen i phpMyAdmin.
- Klicka på SQL i menyn längst uppe på skärmen.
- Klistra in följande query för att ta bort alla transients från tabellen, genom att ersätta wp_options med namnet på options-tabellen i din WordPress-installation.
DELETE FROM `wp_options`
WHERE `autoload` = 'yes'
AND `option_name` LIKE '%transient%'
- Klicka på Go för att bekräfta åtgärden.
Radera inläggsversioner
När du uppdaterar ett inlägg eller en sida på din hemsida sparas det gamla innehållet på din databas, som en version du kan gå tillbaka till. En hel del kan samlas med tiden, i synnerhet om du ofta gör ändringar.
Använd nedanstående query för att radera alla tidigare sparade versioner av dina inlägg och sidor:
- Öppna databasen i phpMyAdmin.
- Klicka på SQL i menyn längst uppe på skärmen.
- Klistra in följande query för att ta bort all tillfälliga data från tabellen, genom att ersätta wp med prefixet för din egen WordPress-sida. Du måste ersätta wp på fyra olika ställen.
DELETE a,b,c
FROM wp_posts a
LEFT JOIN wp_term_relationships b ON ( a.ID = b.object_id)
LEFT JOIN wp_postmeta c ON ( a.ID = c.post_id )
LEFT JOIN wp_term_taxonomy d ON ( b.term_taxonomy_id = d.term_taxonomy_id)
WHERE a.post_type = 'revision'
AND d.taxonomy != 'link_category';
- Klicka på Go för att bekräfta åtgärden.
Radera överbliven metadata från inlägg
Varje inlägg innehåller metadata som lagras på din databas, till exempel författarens namn, publiceringsdatum med mera. När du raderar eller gör ändringar i ett inlägg ligger så kallade överbliven metadata kvar, som inte längre är kopplat till ett inlägg och bara fyller upp din databas.
Använd nedanstående query för att ta bort överbliven metadata från inlägg:
- Öppna databasen i phpMyAdmin.
- Klicka på SQL i menyn längst uppe på skärmen.
- Klistra in följande query för att ta bort all tillfälliga data från tabellen, genom att ersätta wp med prefixet för din egen WordPress-sida. Du måste ersätta wp på fyra olika ställen.
DELETE pm
FROM wp_postmeta pm
LEFT JOIN wp_posts wp ON wp.ID = pm.post_id
WHERE wp.ID IS NULL
- Klicka på Go för att bekräfta åtgärden.
Radera data som blivit kvar från avinstallerade plugin-program
När du avinstallerar plugin-program från WordPress-admin ligger en del data kvar i din databas. Det är en bra idé att ta bort dem för att förhindra att de fyller upp databasen.
I exemplet nedan tar vi bort data från Disqus-pluginen. För att ta bort data som blivit kvar från andra plugin-program ersätter du disqus i nedanstående query med namnet på en annan plugin ur listan i din wp-options-tabell.
- Öppna databasen i phpMyAdmin.
- Klicka på SQL i menyn längst uppe på skärmen.
- Klistra in följande query för att radera all data som blivit kvar i tabellen från Disqus-pluginen, genom att ersätta wp_options med namnet på din options-tabell.
DELETE FROM `wp_options`
WHERE `autoload` = 'yes'
AND `option_name` LIKE '%disqus%'
- Klicka på Go för att bekräfta åtgärden.
Radera WooCommerce-sessioner
Om du använder WooCommerce och har en stor wp_options-tabell är det troligtvis på grund av sessioner och transients. Du kan radera dem från WordPress-admin.
- I menyn till vänster klickar du på WooCommerce > Status > Verktyg.
- Rensa transients, förfallna transients, överblivna varianter och kundsessioner från WooCommerce. Lägg märke till att kundsessionerna även raderar nuvarande och sparade kundvagnar.
Radera WooCommerce-sessioner med en databas-query
Om WordPress-databasen är för stor kan du inte radera sessioner från WordPress-admin. Du måste i så fall göra det från databasen i phpMyAdmin.
- Öppna databasen i phpMyAdmin.
- Klicka på SQL i menyn längst uppe på skärmen.
- Klistra in följande query för att ta bort alla transients från tabellen, genom att ersätta wp_options med namnet på options-tabellen i din WordPress-installation.
DELETE FROM wp_options
WHERE option_name LIKE '_wc_session_%' OR option_name LIKE '_wc_session_expires_%'
- Klicka på Go för att bekräfta åtgärden.
Relaterade artiklar: