搜尋
首頁CMS教程&#&按使用記憶體快取優化 WordPress 文章瀏覽統計效率

Memcached 記憶體快取可以優化 WordPress 很多功能,讓你的 WordPress 變得更快,以下由WordPress教學欄位為大家介紹如何使用 Memcached 來深度優化 WordPress。

使用記憶體快取優化 WordPress 文章瀏覽統計效率

 

使用記憶體快取最佳化 WordPress 文章瀏覽統計效率。

WordPress 預設的自訂欄位快取方式

#一般的文章瀏覽統計插件,都是使用自訂欄位來儲存資料的,如果伺服器開啟了Memcached 記憶體緩存,自訂欄位的資料是怎麼被緩存呢? WordPress 會以 $post_id 做為 cache_key,'post_meta' 作為 cache_group 整體進行快取。

所以更新某個自訂字段,相當於該$post_id 下的所有自訂字段的快取都一起更新,而每次文章瀏覽,這個自訂字段資料都會加1,這樣,每次自訂欄位的快取都會更新,然後就會造成每個頁面會多出三個SQL 查詢。

使用記憶體快取最佳化文章瀏覽統計效率

有沒有辦法解決這個問題呢?我們可以把文章的瀏覽統計量先快取到記憶體中,每次增加10次瀏覽才寫入資料庫中去,這樣就可以大幅降低 WordPress 操作因為自訂欄位變更而造成 SQL 查詢次數。

將上面的程式碼複製到目前主題的funtions.php 檔案中:

// 更新文章浏览数的时候,首先更新到内存中,然后每10次,才写到数据库中
add_filter('update_post_metadata', function($check, $post_id, $meta_key, $meta_value){
if($meta_key == 'views'){
if($meta_value % 10 != 0){
$check= true;
wp_cache_set($post_id, $meta_value, 'views');
}else{
wp_cache_delete($post_id, 'views');
}
}
return $check;
}, 1, 4);
// 获取文章浏览数的时候,首先从内存中获取,没有才从数据库中获取
add_filter('get_post_metadata', function($pre, $post_id, $meta_key){
if($meta_key == 'views'){
$views= wp_cache_get($post_id, 'views');
if($views !== false){
return [$views];
}
}
return $pre;
}, 1, 3);

另外可能存在一個小問題:由於Memcached 的快取不是持久的,如果不小心把將記憶體緩存的清空,文章的瀏覽數會遺失一部分,但肯定少於10了。 

WPJAM Basic 外掛程式已經整合了 Memcached,下載 WPJAM Basic 之後,將 wpjam-basic/template/ 目錄下的 object-cache.php 檔案複製到 wp-content 目錄下方即可。

以上是使用記憶體快取優化 WordPress 文章瀏覽統計效率的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述
本文轉載於:wpjam。如有侵權,請聯絡admin@php.cn刪除
如何輕鬆地將博客從 WordPress.com 移至 WordPress.org如何輕鬆地將博客從 WordPress.com 移至 WordPress.orgApr 18, 2025 am 11:33 AM

您想將博客從 WordPress.com 移至 WordPress.org 嗎? 許多初學者從 WordPress.com 開始,但很快意識到其局限性,並希望切換到自託管 WordPress.org 平台。 在本分步指南中,我們將向您展示如何正確地將博客從 WordPress.com 移動到 WordPress.org。 為什麼從 WordPress.com 遷移到 WordPress.org? WordPress.com 允許任何人通過創建帳戶來

如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多)如何使用 IFTTT 自動化 WordPress 和社交媒體(及更多)Apr 18, 2025 am 11:27 AM

您是否正在尋找自動化 WordPress 網站和社交媒體帳戶的方法? 通過自動化,您將能夠在 Facebook、Twitter、LinkedIn、Instagram 等平台上自動分享您的 WordPress 博客文章或更新。 在本文中,我們將向您展示如何使用 IFTTT、Zapier 和 Uncanny Automator 輕鬆實現 WordPress 和社交媒體的自動化。 為什麼要自動化 WordPress 和社交媒體? 自動化您的WordPre

如何修復 WordPress 中的自定義菜單項限制如何修復 WordPress 中的自定義菜單項限制Apr 18, 2025 am 11:18 AM

就在幾天前,我們的一位用戶報告了一個不尋常的問題。問題是他達到了自定義菜單項的限制。達到菜單項限制後他保存的任何內容都將根本無法保存。我們從未聽說過這個問題,因此我們決定在本地安裝上嘗試一下。創建了 200 多個菜單項並保存。效果很好。將 100 個項目移至下拉列表中,保存效果非常好。那時我們就知道這與服務器有關。經過進一步研究,似乎還有許多其他人也遇到了同樣的問題。深入挖掘後,我們發現了一張 trac 票證 ( #14134 ) 強調了這個問題。在閱讀了非常

如何在 WordPress 中將自定義元字段添加到自定義分類法如何在 WordPress 中將自定義元字段添加到自定義分類法Apr 18, 2025 am 11:11 AM

您需要將自定義元字段添加到 WordPress 中的自定義分類法嗎? 自定義分類法可讓您組織除類別和標籤之外的內容。有時添加其他字段來描述它們很有用。 在本文中,我們將向您展示如何將其他元字段添加到他們創建的分類法中。 何時應將自定義元字段添加到自定義分類法? 當您在WordPress 網站上創建新內容時,您可以使用兩種默認分類法(類別和標籤)對其進行組織。 一些網站受益於自定義分類法的使用。這些允許您以其他方式對內容進行排序。 例如,

如何使用 Windows Live Writer 遠程發佈到 WordPress如何使用 Windows Live Writer 遠程發佈到 WordPressApr 18, 2025 am 11:02 AM

Windows live writer 是一款多功能工具,可讓您直接從桌面將帖子發佈到 WordPress 博客上。這意味著您根本不需要登錄 WordPress 管理面板來更新您的博客。在本教程中,我將向您展示如何使用 Windows Live Writer 為您的 WordPress 博客啟用桌面發布。 如何在 WordPress 上設置 Windows Live Writer 第 1 步: 要通過 Windows Live Writer 在 WordPr

如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕Apr 18, 2025 am 10:52 AM

最近,我們的一位用戶報告了一個非常奇怪的安裝問題。寫帖子時,他們看不到自己寫的任何內容。因為帖子編輯器的文字是白色的。更重要的是,所有可視化編輯器按鈕都丟失了,並且從可視化切換到 HTML 的功能也不起作用。在本文中,我們將向您展示如何修復 WordPress 可視化編輯器中的白色文本和缺失按鈕問題。 初學者註意事項:如果您正在尋找可能在其他網站的屏幕截圖中看到的隱藏按鈕,那麼您可能正在尋找廚房水槽。您必須單擊廚房水槽圖標才能看到其他選項,例如下劃線、從單詞複製等。

如何在 WordPress 中顯示用戶電子郵件中的頭像如何在 WordPress 中顯示用戶電子郵件中的頭像Apr 18, 2025 am 10:51 AM

您想在 WordPress 中顯示用戶電子郵件中的頭像嗎? Gravatar 是一項將用戶的電子郵件地址連接到在線頭像的網絡服務。 WordPress 會自動在評論部分顯示訪問者的頭像,但您可能也想將它們添加到網站的其他區域。 在本文中,我們將向您展示如何在 WordPress 中顯示用戶電子郵件中的頭像。 什麼是 Gravatar 以及為什麼要顯示它? Gravatar代表全球認可的頭像,它允許人們將圖片鏈接到他們的電子郵件地址。 如果網站支

如何更改 WordPress 中的默認媒體上傳位置如何更改 WordPress 中的默認媒體上傳位置Apr 18, 2025 am 10:47 AM

您想更改 WordPress 中的默認媒體上傳位置嗎? 將媒體文件移動到其他文件夾可以提高網站的速度和性能,並幫助您更快地創建備份。它還使您可以自由地以最適合您的方式組織文件。 在本文中,我們將向您展示如何更改 WordPress 中的默認媒體上傳位置。 為什麼要更改默認媒體上傳位置? 默認情況下,WordPress 將所有圖像和其他媒體文件存儲在 /wp-content/uploads/ 文件夾中。 在此文件夾中,您將找到不同年份和月份的子

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱工具

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

這個專案正在遷移到osdn.net/projects/mingw的過程中,你可以繼續在那裡關注我們。 MinGW:GNU編譯器集合(GCC)的本機Windows移植版本,可自由分發的導入函式庫和用於建置本機Windows應用程式的頭檔;包括對MSVC執行時間的擴展,以支援C99功能。 MinGW的所有軟體都可以在64位元Windows平台上運作。

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境