最新消息:雨落星辰是一个专注网站SEO优化、网站SEO诊断、搜索引擎研究、网络营销推广、网站策划运营及站长类的自媒体原创博客

javascript - How to implement color picker from wordpress in my plugin?

programmeradmin5浏览0评论

I'm having difficulty implementing the color picker exactly the same as WordPress in my plugin.

Is there any official wordpress documentation on how to use this feature?

I'm having difficulty implementing the color picker exactly the same as WordPress in my plugin.

Is there any official wordpress documentation on how to use this feature?

Share Improve this question edited May 30, 2018 at 22:06 Krzysiek Dróżdż 25.6k9 gold badges53 silver badges74 bronze badges asked May 23, 2018 at 19:07 Gabriel SoligoGabriel Soligo 1051 gold badge1 silver badge4 bronze badges
Add a comment  | 

2 Answers 2

Reset to default 16

Yes, there is: https://make.wordpress/core/2012/11/30/new-color-picker-in-wp-3-5/

1. You should enqueue scripts and styles...

add_action( 'admin_enqueue_scripts', 'mw_enqueue_color_picker' );
function mw_enqueue_color_picker( $hook_suffix ) {
    // first check that $hook_suffix is appropriate for your admin page
    wp_enqueue_style( 'wp-color-picker' );
    wp_enqueue_script( 'my-script-handle', plugins_url('my-script.js', __FILE__ ), array( 'wp-color-picker' ), false, true );
}

2. ... add an input...

<input type="text" value="#bada55" class="my-color-field" data-default-color="#effeff" />

3. ... and call wpColorPicker function

jQuery(document).ready(function($){
    $('.my-color-field').wpColorPicker();
});

We need to wp_enqueue_script the script and wp_enqueue_style the style with add_action to the functions.php file. Just include a jQuery file and stylesheet file by this script.

// Register Scripts &amp; Styles in Admin panel
function custom_color_picker_scripts() {
wp_enqueue_style( 'wp-color-picker' );
wp_enqueue_script( 'iris', admin_url( 'js/iris.min.js' ), array( 'jquery-ui-draggable', 'jquery-ui-slider', 'jquery-touch-punch' ), false, 1 );
wp_enqueue_script( 'cp-active', plugins_url('/js/cp-active.js', __FILE__), array('jquery'), '', true );

}
add_action( 'admin_enqueue_scripts', custom_color_picker_scripts);

Now create a new javascript file as like cp-active.js and keep it avobe defined “/js/cp-active.js” file path using bellows code.

jQuery('.color-picker').iris({
// or in the data-default-color attribute on the input
defaultColor: true,
// a callback to fire whenever the color changes to a valid color
change: function(event, ui){},
// a callback to fire when the input is emptied or an invalid color
clear: function() {},
// hide the color picker controls on load
hide: true,
// show a group of common colors beneath the square
palettes: true
});

Add a textbox to your settings page with a CSS class for the color picker, where you want to dispaly the input text. I have use “color_code” for input $variable.

<input id="color_code" class="color-picker" name="color_code" type="text" value="" />

Please see more details on Add jQuery Color Picker WordPress Theme or Plugin

发布评论

评论列表(0)

  1. 暂无评论