我昨晚得到了这个工作。我认为您忘记将颜色选择器等的样式排入队列。这就是我将脚本排入队列的方式。
<?php
if ( !current_user_can('publish_posts') ) exit();
wp_enqueue_script(
array(
'iris',
'json2',
'jquery',
'jquery-ui-core',
'jquery-ui-sortable',
'jquery-ui-tabs',
'jquery-ui-slider',
'jquery-ui-datepicker',
'jquery-ui-autocomplete',
'tiny-mce-popup',
'shortcodes',
'media-upload',
'thickbox',
)
);
wp_enqueue_style( 'wp-color-picker', false, true );
wp_enqueue_script( 'wp-color-picker', false, true );
?>
不知道为什么,但最后两个只有在这样做时才有效。
然后这里是颜色选择器的脚本。
<script>
jQuery(document).ready(function($){
var myOptions = {
// you can declare a default color here,
// or in the data-default-color attribute on the input
defaultColor: false,
// 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
// or, supply an array of colors to customize further
palettes: true
};
$('.my-color-field').wpColorPicker(myOptions);
});
</script>
以及显示颜色选择器的 HTML。
<span class="wp-picker-input-wrap">
<input type="text" class="my-color-field" style="display: none;">
</span>
让我知道这是否适合你。这全部在我的 window.php 文件中,该文件用于填充厚框窗口等中的内容。