brainstormforce / astra-notices
Easily create admin notices
Installs: 69 269
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 2
Forks: 1
Open Issues: 8
Type:wordpress-plugin
Requires
- composer/installers: ^2.0
Requires (Dev)
- dev-master
- 1.1.13
- v1.1.12
- 1.1.11
- 1.1.10
- 1.1.9
- 1.1.8
- 1.1.0
- dev-sanitize-id
- dev-release/1.1.13
- dev-notice-id-check
- dev-release/1.1.12
- dev-dependabot/composer/wp-phpunit/wp-phpunit-6.2.0
- dev-dependabot/composer/roots/wordpress-6.2
- dev-dependabot/composer/phpunit/phpunit-8.5.32
- dev-dependabot/github_actions/ramsey/composer-install-2
- dev-dependabot/composer/phpcompatibility/phpcompatibility-wp-2.1.4
- dev-dependabot/github_actions/actions/checkout-3.1.0
- dev-dependabot/composer/composer/installers-2.2.0
- dev-release/1.1.11
- dev-release/1.1.10
- dev-release/1.1.9
- dev-release/1.1.8
This package is auto-updated.
Last update: 2025-03-14 14:08:34 UTC
README
Easily Create Admin Notices.
How to use this library
- Download the latest release from the tag as shown in the screenshot.
- Require the file
class-astra-notices.php
in your project. - Register your notices on action
admin_init
by calling methodAstra_Notices::add_notice()
Default Parameters
array( 'id' => '', // Required, Notice ID. Id can be like: `astra-notices-id-<$pluginslug>`. 'type' => 'info', // Optional, Notice type. Default `info`. Expected [info, warning, notice, error]. 'message' => '', // Optional, Message. 'show_if' => true, // Optional, Show notice on custom condition. E.g. 'show_if' => if( is_admin() ) ? true, false, . 'repeat-notice-after' => '', // Optional, Dismiss-able notice time. It'll auto show after given time. 'display-notice-after' => false, // Optional, Dismiss-able notice time. It'll auto show after given time. 'class' => '', // Optional, Additional notice wrapper class. 'priority' => 10, // Priority of the notice. 'display-with-other-notices' => true, // Should the notice be displayed if other notices are being displayed from Astra_Notices. )
Example Usage
add_action( 'admin_init', function() { Astra_Notices::add_notice( array( 'id' => 'your-notice-id', 'type' => '', 'message' => sprintf( '<div class="notice-image"> <img src="%1$s" class="custom-logo" alt="Sidebar Manager" itemprop="logo"></div> <div class="notice-content"> <div class="notice-heading"> %2$s </div> %3$s<br /> <div class="astra-review-notice-container"> <a href="%4$s" class="astra-notice-close astra-review-notice button-primary" target="_blank"> %5$s </a> <span class="dashicons dashicons-calendar"></span> <a href="#" data-repeat-notice-after="%6$s" class="astra-notice-close astra-review-notice"> %7$s </a> <span class="dashicons dashicons-smiley"></span> <a href="#" class="astra-notice-close astra-review-notice"> %8$s </a> </div> </div>', $image_path, __( 'Hello! Seems like you have used Header Footer Elementor to build this website — Thanks a ton!', 'header-footer-elementor' ), __( 'Could you please do us a BIG favor and give it a 5-star rating on WordPress? This would boost our motivation and help other users make a comfortable decision while choosing the Header Footer Elementor.', 'header-footer-elementor' ), 'https://wordpress.org/support/plugin/header-footer-elementor/reviews/?filter=5#new-post', __( 'Ok, you deserve it', 'header-footer-elementor' ), MONTH_IN_SECONDS, __( 'Nope, maybe later', 'header-footer-elementor' ), __( 'I already did', 'header-footer-elementor' ) ), 'repeat-notice-after' => MONTH_IN_SECONDS, 'display-notice-after' => 1296000, // Display notice after 15 days. 'priority' => 18, 'display-with-other-notices' => false, ) ); } );
Also check the example of how this is used in the Astra Theme.