내 테마에 gridstack.js를 포함한 문제가 있습니다.jQuery는 Wordpress Theme에 정의되어 있지 않지만 wp_register_script 종속성 배열에 정의되어 있습니다.
이 내 코드는 방법입니다
function custom_scripts() {
wp_register_script('gridstack.min', get_template_directory_uri() . '/js/gridstack.min.js', array('jquery', 'underscore', 'jquery-ui-core'), '201412028');
wp_enqueue_script('gridstack.min');
}
add_action('wp_enqueue_scripts', 'custom_scripts');
그리고 출력은 다음과 같습니다
<script type='text/javascript' src='http://localhost/~user/wordpress/wp-includes/js/jquery/jquery.js?ver=1.11.1'></script>
<script type='text/javascript' src='http://localhost/~user/wordpress/wp-includes/js/jquery/jquery-migrate.min.js?ver=1.2.1'></script>
<script type='text/javascript' src='http://localhost/~user/wordpress/wp-includes/js/underscore.min.js?ver=1.6.0'></script>
<script type='text/javascript' src='http://localhost/~user/wordpress/wp-includes/js/jquery/ui/core.min.js?ver=1.11.2'></script>
<script type='text/javascript' src='http://localhost/~user/wordpress/wp-content/themes/manfredinator/js/gridstack.min.js?ver=201412028'></script>
하지만 방화범은 여전히 나에게 "형식 오류 : $이 정의되지"를 제공합니다.
나는 이것에 대한 해결책을 가지고하지만 난 그것을 좋아하지 않아 :
이function custom_scripts() {
wp_register_script('jQuery.min', get_template_directory_uri() . '/js/jquery-1.10.2.min.js', array(), '1.10.2');
wp_enqueue_script('jQuery.min');
wp_register_script('gridstack.min', get_template_directory_uri() . '/js/gridstack.min.js', array('underscore', 'jquery-ui-core'), '201412028');
wp_enqueue_script('gridstack.min');
}
add_action('wp_enqueue_scripts', 'custom_scripts');
그래서 내 질문은 : jQuery 라이브러리가 (나는 또한 다른 플러그인을 시도 플러그인이 작동하지 WP에 포함 않는 이유 jQuery.min을 사용하고 동일한 문제가 발생했습니다.) 그리고이 문제를 해결하는 가장 좋은 방법은 무엇입니까?
대단히 감사합니다. 실제로 IIFE를 사용하여 플러그인을 변경했는데 이제는 작동합니다. 당신이 말한 것과 같았습니다. 이전의 것들은 바로 가기에 의존했다. – ClarkAdams