我编写了一个插件,它为高级自定义字段和tinyMCE编辑器添加了额外的功能。总之,简单的东西主要是一些js和css。
问题是,WP不仅在以下位置查找文件:
“/wp内容/插件/acf列/资产/js/输入。js?ver=1.0.0\'
它的实际位置,但也:
“/wp-content/themes/generatepress/resources/acf-field-column/js/input。js\'
它不仅不会在“assets”文件夹中查找js文件,还会在“acf field column”文件夹中查找js文件,而不是在“acf field columns”文件夹中查找js文件(请注意列中的“s”)。我正在使用GeneratePress的儿童主题。
我只将插件主文件中的文件排队,而且只排队一次
这是我的排队
// Add styles and js init
function acf_admin_enqueue() {
global $post;
if($post->post_type != \'acf-field-group\'):
// enqueue jquery UI script
wp_enqueue_script( \'jquery-ui\', plugin_dir_url(__FILE__) . \'assets/js/jquery-ui.min.js\', array(\'jquery\'), \'1.0.0\', true );
// enqueue plugin jQuery
wp_enqueue_script( \'pagebuilder-js\', plugin_dir_url(__FILE__) . \'assets/js/input.js\', array(\'jquery\'), \'1.0.0\', true );
// enqueue stylesheet
wp_enqueue_style( \'pagebuilder-styles\', plugin_dir_url(__FILE__) . \'assets/css/input.css\', array(), \'1.0.0\', false);
endif;
}
// hook in styles and js
add_action(\'acf/input/admin_head\', \'acf_admin_enqueue\');
我的子主题中没有名为“resources”的文件夹,只有generatepress父主题中有。有什么想法吗?
SO网友:Emil Østervig
我是个十足的傻瓜。查看了字段文件,发现以下内容:
function input_admin_enqueue_scripts()
{
// Note: This function can be removed if not used
// register acf scripts
wp_register_script(\'acf-input-column\', $this->settings[\'dir\'] . \'js/input.js\', array(\'acf-input\'), $this->settings[\'version\']);
wp_register_style(\'acf-input-column\', $this->settings[\'dir\'] . \'css/input.css\', array(\'acf-input\'), $this->settings[\'version\']);
// scripts
wp_enqueue_script(array(
\'acf-input-column\',
));
// styles
wp_enqueue_style(array(
\'acf-input-column\',
));
}
$设置->[\'dir\']设置为:get\\u template\\u directory\\u uri()/资源/acf字段列/\'
这就是404文件被包括在内的地方。