[WordPress] 實作外掛啟用後的管理員通知(admin_notices)功能

用過 WordPress 後台裝過外掛或是主題的人應該都知道,啟用後會有個通知

外掛啟用通知

這通知是在 WordPress 3.1.0 時增加,讓開發者做啟用外掛或主題後的導引,要增加自己開發產品的使用者體驗,結合內建提供的方法也當然是最好啦~

介紹原理

就是註冊在程式中啟用後的事件,加入 admin_notices 的方法( action ),方法中只需要輸出下面格式的 HTML 就可以照樣呈現:

<div class="{關鍵類別}"><p>{想提示的訊息}</p></div>

關鍵類別

  • (必填) notice
  • (選填) notice-success
  • (選填) notice-error
  • (選填) notice-warning
  • (選填) is-dismissible

以上列出常見的狀態,其他的可以參考 common.css

範例:

<div class="notice notice-success is-dismissible"><p>安裝成功!</p></div>

關閉提醒

這塊比較好玩的是不另外記錄「關閉通知」的話,通知還是會繼續出現!

is-dismissible 這個 class 也只是幫通知框補上個關閉扭,但不具有接下來的隱藏功能。

所以

程式可以選擇

  1. Cookie(本地端紀錄,多人使用版本的話每個人都會確實的通知到)
  2. Transients API
  3. Options API
  4. or 直接操作 Database 寫入鍵值記錄

然後在通知方法中加入檢查鍵值記錄是否存在,決定顯示與否!

範例:

function init_notice() {
    if (isset($_COOKIE[$this->plugin_slug . '-dissmis-notice-init'])) {
        return;
    }
    echo '<div id="init" class="notice notice-error notice-alt"><p>工具箱中的清單會即時比對最新版本的外掛,所以讀取速度較為緩慢,還請稍候!<button data-key="init" class="mxp-dissmis-btn button action">確認</button></p></div>';
}

實作方式多元,就不繼續列囉,可以參考其他介紹文

  1. Complete Guide to WordPress Admin Notices
  2. How to Add Admin Alerts and Error Messages to the Backend of WordPress

完整的使用也可以參考自己寫的常用外掛整理的外掛原始碼:work_with_wordpress

Facebook 外掛整合

Share: