Paid Memberships Pro 會員方案名稱亂碼解決方式(Cloudways資料庫編碼問題)
本文對您有幫助嗎?
已有評分:5分 / 12

Paid Memberships Pro 會員方案名稱亂碼解決方式(Cloudways資料庫編碼問題)

有學員反應他在Cloudways平台上安裝的WordPress在使用Paid Memberships Pro這套外掛建立新的會員方案時(membership level),方案名稱無法顯示中文(英文跟數字正常),錯誤的畫面如下圖所示:

Paid Memberships Pro 會員方案名稱亂碼解決方式(Cloudways資料庫編碼問題)

這個問題是因為Paid Memberships Pro在建立資料庫表單的時候沒有規範編碼格式,像WordPress就有考慮到多國語言,所以他會有所規範。
(延伸閱讀:MySQL官方說明WordPress創建資料庫檔案)

解決方式:

  1. 先將資料庫編碼改成utf8:
    我是透過adminer這個只有一個php檔案的資料庫管理工具,他跟phpMyadmin功能幾乎一樣,但phpMyadmin安裝上會有些門檻。adminer不需要安裝,只要把檔案放到網站下,用瀏覽器打開就可以了。
    ALTER DATABASE MyDb CHARACTER SET utf8;
    WordPress官方說明:https://codex.wordpress.org/Converting_Database_Character_Sets
  2. 把Paid Memberships Pro停用,刪除Paid Memberships Pro所創建的資料表,然後重新啟用 Paid Memberships Pro:
    重新啟用後會創建新的資料表,這些新創建的資料表就會是utf8的編碼,於是創建中文名稱的會員方案就不會有問題了。

另外附上影片操作說明:

以下是影片裡頭提到的網址跟所用到的語法:

adminer官網:https://www.adminer.org/

adminer教學:http://www.aaronlife.com/teaching/uch_php_2015-06-03_00.html

MySQL語法:

1.查詢目前整個資料庫編碼:
show variables like “character_set_database”;

2.查詢某個資料表編碼,資料表名稱請修改:
SHOW TABLE STATUS where name like ‘wp_pmpro_membership_levels’;

3.將資料庫編碼改成utf8
ALTER DATABASE MyDb CHARACTER SET utf8;
WordPress官方說明:https://codex.wordpress.org/Converting_Database_Character_Sets

分享本文:
訂閱網站更新
獲得最新WordPress架站相關教學資訊
送出
您可以隨時取消訂閱,我們絕不濫發廣告信!
close-link