*/ if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly } class Opalestate_Field_Iconpicker { /** * Current version number */ const VERSION = '1.0.0'; /** * Initialize the plugin by hooking into CMB2 */ public function __construct() { add_filter( 'cmb2_render_opal_iconpicker', [ $this, 'render_iconpicker' ], 10, 5 ); add_filter( 'cmb2_sanitize_opal_iconpicker', [ $this, 'sanitize' ], 10, 4 ); } public function get_icons() { $fontawesome_key = 'opalestate_fontawesome_data'; $icon_data = []; if ( false === ( $fontawesome_icons = get_transient( $fontawesome_key ) ) ) { $fontawesome = new Opalestate_Iconpicker_Fontawesome(); $fontawesome_icons = $fontawesome->get_icons(); set_transient( $fontawesome_key, $fontawesome_icons, 24 * 7 * HOUR_IN_SECONDS ); $icon_data[] = $fontawesome_icons; } var_dump($icon_data); return $icon_data; } /** * Render field. */ public function render_iconpicker( $field, $field_escaped_value, $field_object_id, $field_object_type, $field_type_object ) { $this->setup_admin_scripts(); $users = $field->value; var_dump($this->get_icons()); // $output = sprintf( // ''; // // echo $output; } /** * Sanitize data. */ public function sanitize( $override_value, $value, $object_id, $field_args ) { return $value; } /** * Enqueue scripts and styles. */ public function setup_admin_scripts() { // Iconpicker. wp_register_style( 'fonticonpicker', plugins_url( 'assets/css/jquery.fonticonpicker.min.css', __FILE__ ), [], self::VERSION ); wp_register_style( 'fonticonpicker-grey-theme', plugins_url( 'assets/themes/grey-theme/jquery.fonticonpicker.grey.min.css', __FILE__ ), [], self::VERSION ); wp_enqueue_style( 'fonticonpicker' ); wp_enqueue_style( 'fonticonpicker-grey-theme' ); } } new Opalestate_Field_Iconpicker();