Файловый менеджер - Редактировать - /home/infrafs/www/wp-content/plugins/wp-store-locator/admin/class-notices.php
Назад
<?php /** * Admin Notices * * @author Tijmen Smit * @since 2.0.0 */ if ( !defined( 'ABSPATH' ) ) exit; if ( !class_exists( 'WPSL_Notices' ) ) { /** * Handle the meta boxes. * * @since 2.0.0 */ class WPSL_Notices { /** * Holds the notices. * @since 2.0.0 * @var array */ private $notices = array(); public function __construct() { $this->notices = get_option( 'wpsl_notices' ); add_action( 'all_admin_notices', array( $this, 'show' ) ); } /** * Show one or more notices. * * @since 2.0.0 * @return void */ public function show() { if ( !empty( $this->notices ) ) { $allowed_html = array( 'a' => array( 'href' => array(), 'id' => array(), 'class' => array(), 'data-nonce' => array(), 'title' => array(), 'target' => array() ), 'p' => array(), 'br' => array(), 'em' => array(), 'strong' => array( 'class' => array() ), 'span' => array( 'class' => array() ), 'ul' => array( 'class' => array() ), 'li' => array( 'class' => array() ) ); if ( wpsl_is_multi_array( $this->notices ) ) { foreach ( $this->notices as $k => $notice ) { $this->create_notice_content( $notice, $allowed_html ); } } else { $this->create_notice_content( $this->notices, $allowed_html ); } // Empty the notices. $this->notices = array(); update_option( 'wpsl_notices', $this->notices ); } } /** * Create the content shown in the notice. * * @since 2.1.0 * @param array $notice * @param array $allowed_html */ public function create_notice_content( $notice, $allowed_html ) { $class = ( 'update' == $notice['type'] ) ? 'updated' : 'error'; if ( isset( $notice['multiline'] ) && $notice['multiline'] ) { $notice_msg = wp_kses( $notice['message'], $allowed_html ); } else { $notice_msg = '<p>' . wp_kses( $notice['message'], $allowed_html ) . '</p>'; } echo '<div class="' . esc_attr( $class ) . '">' . $notice_msg . '</div>'; } /** * Save the notice. * * @since 2.0.0 * @param string $type The type of notice, either 'update' or 'error' * @param string $message The user message * @param bool $multiline True if the message contains multiple lines ( used with notices created in add-ons ). * @return void */ public function save( $type, $message, $multiline = false ) { $current_notices = get_option( 'wpsl_notices' ); $new_notice = array( 'type' => $type, 'message' => $message ); if ( $multiline ) { $new_notice['multiline'] = true; } if ( $current_notices ) { if ( !wpsl_is_multi_array( $current_notices ) ) { $current_notices = array( $current_notices ); } array_push( $current_notices, $new_notice ); update_option( 'wpsl_notices', $current_notices ); } else { update_option( 'wpsl_notices', $new_notice ); } } } }
| ver. 1.4 |
Github
|
.
| PHP 8.2.29 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка