Acasă » Blog » Eliberare cache la actualizarea categoriei de articole

Eliberare cache la actualizarea categoriei de articole

Share this post on social!
Programare & dezvoltare web custom

Pentru site-urile WordPress, pentru a obține un scor bun de viteză (Google Pagespeed) este necesară aplicarea unei soluții de cache. O parte a acestei soluții poate fi utilizarea unui plugin. Avem de ales între câteva varinate foarte bune, consacrate pe piața WordPress. De cele mai multe ori, WP Super Cache este un plugin de minune, pe lângă faptul că este complet gratuit. Ca dezvoltator trebuie să fii atent la opțiuni și configurație funcție de tema activă și celelate plugin-uri instalate și/sau de serverul gazdă..

Evenimente la care se eliberează cache-ul

Evenimentele de eliberare a cache-ului trebuie să fie actualizarea/adăugare ștergerea de articole (standard și custom) precum și de taxonomii (categorii de articole și taxonomii custom). De asemenea, la publicarea unui comentariu pe anumite pagini.

Pentru magazine virtuale, nu se aplică cache-ul pentru paginile sesiunilor vizitatorilor.

Actualizarea categoriei de articole standard

Am avut surpriza pentru un site cu WP Super Cache activ să nu se elibereze cache-ul paginii de categorie la actualizarea categoriei. Este drept că am modificat doar câmpuri adăugate custom în ecranul de editare a categoriei, deci nu am modificat titlul și/sau slug-ul acesteia. Cert este ca nu s-a eliberat cache-ul paginii de categorie.

Codul custom folosit în fișierul functions.php al temei copil pentru implementarea acestui comportament dorit este următorul

/**
* Hook declanșat la editarea/adăugarea/ștergerea unei taxonomii de tip category (categorie standard de articol WordPress)
**/
add_action('edit_term_taxonomy', 'sweb_clear_page_taxonomy_cache', 10, 2);

/**
 * Curatare cache pagina categorie articole la evenimentul update categorie
 * @author Traian Predan | sectorweb.ro | contact@sectorweb.ro
 * @param [integer] $tt_id Id-ul termenului taxonomic (term_id)
 * @param [string] $taxonomy Denumirea taxonomiei (category)
 * @return void
 */
function sweb_clear_page_taxonomy_cache($tt_id, $taxonomy)
{
        //pentru categorii de articole
	if ($taxonomy == 'category') {
                //obțin permalink pagină categorie
		$cat_page_link = get_category_link($tt_id);
                //apelez funcția specifică pluginului WP Super Cache de ștergere a cache-ului unei anumite pagini funcție de url-ul paginii dat ca parametru la intrarea funcției 
		wpsc_delete_url_cache($cat_page_link);
	}
}

În acest moment cache-ul paginii de categorie se șterge în mod corect.

Pentru dezvoltare aplicații custom WordPress sau pe alte platforme sau custom pur și simplu, apleați-ne prin formularul din pagina de contact sau sunați-ne la numărul de telefon disponibil pe site.

Suntem bucuroși să dezvoltăm site-uri și aplicații web complexe, performante care să materializeze ideile și viziunea dumneavoastră de business online.

Toate cele bune!

Lasă un răspuns

Traian Constantin Predan

Traian Constantin Predan

Inginer absolvent al Politehnicii București proiectează și construiește sisteme online. Lucrează proiecte extrem de diverse, îi plac viziunile noi care provoacă la dezvoltarea unor soluții tehnice eficiente și stabile.