如何在WordPress中靈活展示管理通知?使用stellarwp/admin-notices可以!

可以通過一下地址學習composer學習地址

在開發 wordpress 插件的過程中,我遇到了一個常見但棘手的問題:如何在管理后臺高效地展示通知。通常,用戶可能需要在不同條件下看到通知,比如特定用戶角色、特定頁面或者時間范圍內。然而,傳統的方法不僅繁瑣,而且容易出錯,導致通知無法按預期展示。

經過一番研究,我發現了 stellarwp/admin-notices 這個庫,它大大簡化了這個過程。使用這個庫,你可以輕松地在 WordPress 管理后臺展示通知,并且可以根據復雜的條件靈活控制通知的顯示。

首先,通過 composer 安裝 stellarwp/admin-notices 非常簡單:

composer require stellarwp/admin-notices

接下來,你需要初始化這個庫,以避免與其他插件的沖突:

use StellarWPAdminNoticesAdminNotices;  AdminNotices::initialize('my_plugin', plugin_dir_url(__FILE__) . 'vendor/stellarwp/admin-notices');

這個庫的核心是 AdminNotice 類,它允許你定義通知及其顯示條件。例如,你可以這樣設置通知:

use StellarWPAdminNoticesAdminNotices;  $notice = AdminNotices::show('my_notice', '這是一個通知')     ->on('edit.php')     ->ifUserCan('manage_options')     ->dismissible();

這個例子展示了一個通知,它會在 edit.php 頁面上顯示,并且只有具有 manage_options 權限的用戶才能看到。此外,這個通知是可Dismissible的,用戶可以選擇永久隱藏它。

stellarwp/admin-notices 還支持更復雜的條件設置,比如時間范圍:

$notice = AdminNotices::show('my_notice', '這是一個通知')     ->between('2022-01-01 00:00:00', '2022-01-31 23:59:59');

此外,你可以自定義通知的外觀和行為。例如,如果你想使用自定義的樣式和腳本,你可以使用 custom 方法:

$notice = AdminNotices::show('my_notice_custom', '這是一個自定義通知')     ->custom()     ->location('above_header');

這個庫還提供了重置已Dismissible通知的方法,這在某些情況下非常有用:

AdminNotices::resetNoticeForUser('my_notice', get_current_user_id());

總的來說,stellarwp/admin-notices 庫極大地簡化了在 WordPress 管理后臺展示通知的過程。它不僅提供了靈活的條件設置,還支持自定義通知的外觀和行為,極大提升了開發效率和用戶體驗。如果你正在開發 WordPress 插件,并且需要展示管理通知,那么這個庫絕對值得一試。

? 版權聲明
THE END
喜歡就支持一下吧
點贊12 分享