Простой и удобный способ создания уведомлений администратора WordPress, которые можно постоянно закрывать. Кроме того, у него есть несколько интересных функций:
add_action ( ' admin_notices ' , function () {
$ notices_manager = ThanksToIT WPAN get_notices_manager ();
$ notices_manager -> create_notice ( array (
' id ' => ' my-notice ' ,
' content ' => ' <p>My Notice</p> ' ,
) );
} );
Примечание. По умолчанию эта библиотека сохраняет уведомления, то есть они не будут отображаться снова после того, как пользователь их закроет, до тех пор, пока не истечет срок их действия.
Чтобы он работал идеально, вам нужно его инициализировать следующим образом:
add_action ( ' wp_ajax_ ' . ' tttwpan_dismiss_persist ' , array ( ' ThanksToITWPANNotices_Manager ' , ' ajax_dismiss ' ) );
add_action ( ' activated_plugin ' , array ( ' ThanksToITWPANNotices_Manager ' , ' set_activated_plugin ' ) );
add_action ( ' upgrader_process_complete ' , array ( ' ThanksToITWPANNotices_Manager ' , ' set_upgrader_process ' ), 10 , 2 );
И важно делать эти вызовы до любого другого подключения вашего плагина/темы. Но не волнуйтесь, эта библиотека будет загружаться только тогда, когда это необходимо, поскольку она вызывается по соответствующим хукам.
'notice-info'
, 'notice-warning'
, 'notice-success'
, 'notice-error'
, 'notice-info'
. Значение по умолчанию — 'notice-info'
.true
.MONTH_IN_SECONDS
.'screen_id' => array( 'plugins' )
.'activated_plugin' => array('akismet/akismet.php')
.'updated_plugin' => array('akismet/akismet.php')
.'key'
и 'value'
. Пример: 'request' => array( array( 'key' => 'show_notice', 'value' => '1' ), )
.array( 'activated_plugin', 'updated_plugin' )
, add_action ( ' admin_notices ' , function () {
$ notices_manager = ThanksToIT WPAN get_notices_manager ();
$ notices_manager -> create_notice ( array (
' id ' => ' 1-week-notice ' ,
' content ' => ' <p>1 week notice</p> ' ,
' dismissal_expiration ' => WEEK_IN_SECONDS ,
) );
} );
add_action ( ' admin_notices ' , function () {
$ notices_manager = ThanksToIT WPAN get_notices_manager ();
$ notices_manager -> create_notice ( array (
' id ' => ' plugins-page-notice ' ,
' content ' => ' <p>plugins page notice</p> ' ,
' display_on ' => array (
' screen_id ' => array ( ' plugins ' ),
)
) );
} );
add_action ( ' admin_notices ' , function () {
$ notices_manager = ThanksToIT WPAN get_notices_manager ();
$ notices_manager -> create_notice ( array (
' id ' => ' akismet-notice ' ,
' content ' => ' <p>Akismet notice</p> ' ,
' display_on ' => array (
' activated_plugin ' => array ( ' akismet/akismet.php ' )
)
) );
} );
Чтобы установить этот пакет, отредактируйте файл composer.json
:
{
"require" : {
"thanks-to-it/wp-admin-notices" : "dev-master"
}
}
Теперь запустите:
$ composer install