AdminNotice.php
49 lines
| 1 | <?php |
| 2 | |
| 3 | namespace Wpai\WordPress; |
| 4 | |
| 5 | if ( ! defined( 'ABSPATH' ) ) exit; |
| 6 | |
| 7 | |
| 8 | /** |
| 9 | * Class AdminNotice |
| 10 | * @package Wpai\WordPress |
| 11 | */ |
| 12 | abstract class AdminNotice { |
| 13 | |
| 14 | /** |
| 15 | * @var |
| 16 | */ |
| 17 | protected $message; |
| 18 | |
| 19 | /** |
| 20 | * AdminNotice constructor. |
| 21 | * @param $message |
| 22 | */ |
| 23 | public function __construct($message) { |
| 24 | $this->message = $message; |
| 25 | } |
| 26 | |
| 27 | /** |
| 28 | * |
| 29 | */ |
| 30 | public function showNotice() { |
| 31 | ?> |
| 32 | <div class="<?php echo esc_attr($this->getType());?>"><p> |
| 33 | <?php echo wp_kses_post($this->message); ?> |
| 34 | </p></div> |
| 35 | <?php |
| 36 | } |
| 37 | |
| 38 | /** |
| 39 | * |
| 40 | */ |
| 41 | public function render() { |
| 42 | add_action('admin_notices', array($this, 'showNotice')); |
| 43 | } |
| 44 | |
| 45 | /** |
| 46 | * @return mixed |
| 47 | */ |
| 48 | abstract function getType(); |
| 49 | } |