幫助中心
這里有最新的使用文檔和教程
WordPress:Memcached 內(nèi)存緩存優(yōu)化 ,加速WordPress 后臺(tái)媒體庫(kù)加載
WordPress網(wǎng)站媒體庫(kù)的圖片隨著文章的增長(zhǎng),會(huì)越來(lái)越多,有時(shí)候不斷的去翻幾個(gè)月前的圖片進(jìn)行引用,發(fā)現(xiàn)顯示特別慢,原來(lái)這個(gè)內(nèi)存緩存并沒有緩存媒體庫(kù)月份篩選附件功能這里。今天就跟大家分享下如何使用 Memcached 內(nèi)存緩存優(yōu)化 WordPress 后臺(tái)媒體庫(kù)加載。
WordPress 是直接通過(guò)查詢數(shù)據(jù)庫(kù)來(lái)獲取博客的附件的月份,這樣每次打開媒體庫(kù),或者添加媒體,打開「添加媒體」彈窗時(shí)候,都會(huì)到數(shù)據(jù)庫(kù)去查詢。用起來(lái)會(huì)有那么點(diǎn)卡頓,當(dāng)然了,某些人連內(nèi)存緩存都沒開的,估計(jì)也不在乎這些卡頓。
使用內(nèi)存緩存優(yōu)化媒體庫(kù)月份獲取
雖然不會(huì)造成很大的問(wèn)題,但是附件如果不新增刪除,這個(gè)月份的數(shù)據(jù)基本不會(huì)變化,站長(zhǎng)是用 WPJAM 插件配合 Memcached 將其緩存起來(lái)。不說(shuō)有什么特殊效果,至少自己添加起媒體文件總舒服很多吧!
將下面的代碼復(fù)制到當(dāng)前主題的 functions.php
文件中,就可以使用內(nèi)存來(lái)緩存媒體庫(kù)的月份了:
// 使用 Memcached 內(nèi)存緩存優(yōu)化 WordPress 后臺(tái)媒體庫(kù)月份獲取加載 - http://www.jinchangtalc.com add_filter('media_library_months_with_files', function($months){ $months = get_transient('wpjam_media_library_months'); if($months === false) { global $wpdb; $months = $wpdb->get_results("SELECT DISTINCT YEAR( post_date ) AS year, MONTH( post_date ) AS month FROM $wpdb->posts WHERE post_type = 'attachment' ORDER BY post_date DESC"); set_transient('wpjam_media_library_months', $months, WEEK_IN_SECONDS); } return $months; });
當(dāng)然,你要是覺得不想要了,也可以刪除后臺(tái)媒體庫(kù)附件月份的緩存。
// 刪除后臺(tái)媒體庫(kù)附件月份的緩存 - http://www.jinchangtalc.com function wpjam_delete_media_library_months_cache(){ delete_transient('wpjam_media_library_months'); } add_action('edit_attachment', 'wpjam_delete_media_library_months_cache'); add_action('add_attachment', 'wpjam_delete_media_library_months_cache'); add_action('delete_attachment', 'wpjam_delete_media_library_months_cache');