Файловый менеджер - Редактировать - /home/admin/domains/octawebtools.com/public_html/wp-content/plugins/emoji-picker/includes/admin/admin-page.php
�азад
<?php if (!defined('ABSPATH')) { exit; } class Emoji_Picker_Admin { public function __construct() { add_action('admin_menu', array($this, 'add_admin_menu')); add_action('wp_ajax_filter_admin_emojis', array($this, 'filter_admin_emojis_ajax')); } public function add_admin_menu() { add_menu_page( __('Emoji Picker', 'emoji-picker'), __('Emoji Picker', 'emoji-picker'), 'manage_options', 'emoji-picker', array($this, 'admin_page_content'), 'dashicons-smiley', 25 ); } public function admin_page_content() { ?> <div class="wrap"> <h1><?php esc_html_e('Emoji Picker', 'emoji-picker'); ?></h1> <div class="emoji-picker-admin-container"> <div class="emoji-picker-admin-content"> <h2><?php esc_html_e('Manage Emojis', 'emoji-picker'); ?></h2> <div class="emoji-stats"> <?php $total_emojis = $this->get_total_emojis(); $categories = Emoji_Picker_Database::get_categories(); ?> <p><?php printf(__('Total Emojis: %d', 'emoji-picker'), $total_emojis); ?></p> <p><?php printf(__('Groups: %d', 'emoji-picker'), count($categories['groups'])); ?></p> <p><?php printf(__('Sub-groups: %d', 'emoji-picker'), count($categories['sub_groups'])); ?></p> </div> <div class="emoji-filters"> <input type="text" id="emoji-search" placeholder="<?php esc_attr_e('Search emojis...', 'emoji-picker'); ?>"> <select id="emoji-group-filter"> <option value=""><?php esc_html_e('All Groups', 'emoji-picker'); ?></option> <?php foreach ($categories['groups'] as $group) : ?> <option value="<?php echo esc_attr($group); ?>"><?php echo esc_html($group); ?></option> <?php endforeach; ?> </select> <select id="emoji-subgroup-filter"> <option value=""><?php esc_html_e('All Sub-groups', 'emoji-picker'); ?></option> <?php foreach ($categories['sub_groups'] as $sub_group) : ?> <option value="<?php echo esc_attr($sub_group); ?>"><?php echo esc_html($sub_group); ?></option> <?php endforeach; ?> </select> </div> <div id="emoji-admin-grid" class="emoji-grid"> <?php $this->display_emoji_grid(); ?> </div> </div> </div> </div> <?php } public function filter_admin_emojis_ajax() { check_ajax_referer('emoji-picker-admin', 'security'); $search = isset($_POST['search']) ? sanitize_text_field($_POST['search']) : ''; $group = isset($_POST['group']) ? sanitize_text_field($_POST['group']) : ''; $sub_group = isset($_POST['sub_group']) ? sanitize_text_field($_POST['sub_group']) : ''; ob_start(); $this->display_emoji_grid(array( 'search' => $search, 'group' => $group, 'sub_group' => $sub_group )); $output = ob_get_clean(); wp_send_json_success($output); } private function get_total_emojis() { global $wpdb; $table_name = $wpdb->prefix . 'emoji_picker'; return $wpdb->get_var("SELECT COUNT(*) FROM $table_name"); } private function display_emoji_grid($args = array()) { $emojis = Emoji_Picker_Database::get_emojis($args); if (empty($emojis)) { echo '<p>' . esc_html__('No emojis found.', 'emoji-picker') . '</p>'; return; } echo '<div class="emoji-grid-container">'; foreach ($emojis as $emoji) { echo '<div class="emoji-item">'; echo '<span class="emoji-char">' . esc_html($emoji->emoji_char) . '</span>'; echo '<span class="emoji-name">' . esc_html($emoji->emoji_name) . '</span>'; echo '<span class="emoji-group">' . esc_html($emoji->emoji_group) . '</span>'; echo '<span class="emoji-sub-group">' . esc_html($emoji->sub_group) . '</span>'; echo '<span class="emoji-codepoints">' . esc_html($emoji->codepoints) . '</span>'; echo '</div>'; } echo '</div>'; } }
| ver. 1.4 |
Github
|
.
| PHP 8.1.32 | Генераци� �траницы: 0 |
proxy
|
phpinfo
|
�а�тройка