Cum să eliminați înregistrările _tranzitorii inutile din WordPress

  • 17 Acțiuni
  • Facebook
  • Stare de nervozitate
  • pinterest

În unele circumstanțe, toate bazele de date acumulează elemente de gunoi care ar trebui eliminate. Nu este suficient doar să optimizați din când în când tabelele folosind funcția corespunzătoare din MySQL, dar este și convenabil să ștergeți unele înregistrări inutile din unele tabele.

Astfel, în WordPress, în tabelul wp_options (prefixul poate fi diferit) există mai multe înregistrări cu instrucțiuni care au prefixul _tranzitoriu, unele necesare și altele care pot fi șterse.

Cum sunt produse instrucțiunile _tranzitorii??

Aceste instrucțiuni salvează referințe la intrările din cache, cum ar fi cele corespunzătoare fluxurilor RSS sau unele pluginuri. În mod normal, ele sunt șterse la executarea CRON-ului (manager obișnuit de proces de fundal, care se execută la fiecare anumită perioadă de timp), dar acest lucru nu se întâmplă cu instrucțiunile _tranzitorii menționate mai sus, care se acumulează, făcând ca dimensiunea tabelului să crească neregulat.

efectua curatenie

Acum ceva timp am explicat o modalitate de a curăța tabelul wp_options, eliminând _transients învechite, folosind o instrucțiune din phpMyAdmin, în articolul scris în urmă cu ceva timp și intitulat Optimizarea WordPress. Astăzi, după ce am examinat ce explică ei în WordPress Answers, propun o soluție diferită. Trebuie să adăugați o porțiune de cod, pe care am pus-o mai jos, în fișierul de funcții.php al temei pe care o aveți activă:

add_action( 'wp_scheduled_delete', 'delete_expired_db_transients'); function delete_expired_db_transients() { global $wpdb, $_wp_using_ext_object_cache; if( $_wp_using_ext_object_cache ) return; $time = isset ( $_SERVER['REQUEST_TIME' ) ? (int)$_SERVER['REQUEST_TIME' : oră() ; $expired = $wpdb->get_col( "SELECT opțiunea_nume FROM {$wpdb->opțiuni} WHERE opțiunea_nume LIKE '_transient_timeout%' AND option_value < {$time};" ); foreach( $expired as $transient ) { $key = str_replace('_transient_timeout_', '', $transient); delete_transient($key); } }

Când CRON este executat, toate instrucțiunile _tranzitorii inutile vor fi eliminate automat.

Alte solutii

De asemenea, puteți face curățarea folosind, pentru mine, cel mai bun plugin de curățare și optimizare a bazei de date. Vă recomand să aruncați o privire la Cel mai bun plugin pentru a menține baza de date WordPress optimizată.

Dacă avem instalat un plugin de optimizare menit să pregătească cache-ul paginii, așa cum este cazul WP Rocket, există opțiunea de optimizare a bazei de date manual și de asemenea automat. În cazul utilizării W3 Total Cache există și posibilitatea curățării _tranzitorii.

Oricare ar fi soluția aleasă, trebuie să verificăm funcționarea acesteia. Este convenabil, în orice caz, să ștergem aceste înregistrări deoarece, dacă nu facem acest lucru, baza de date crește prea mult, ceea ce afectează negativ timpul de încărcare a paginilor web în WordPress.

  • 17 Acțiuni
  • Facebook
  • Stare de nervozitate
  • pinterest

Lasă Un Comentariu

Please enter your comment!
Please enter your name here