Anonim

주요 CMS 커뮤니티에서 주장하는 것처럼 인터넷의 25 %가 WordPress를 사용하고 있습니다. 트렌드를 보면 거의 두 번째 블로그와 4 번째 사이트마다 가장 강력하고 사용자 친화적 인 CMS를 사용하고있는 것 같습니다. 이를 기대하면서 사람과 개발자는 자신의 사이트를 WordPress 플랫폼으로 전환하기 시작했습니다.

달콤하고 단순한 웹 사이트를 복잡한 고성능 CMS 사이트로 전환하려는 노력에 사람들은 매우 기본적인 단계에 갇히고 다음과 같은 질문을합니다. 사랑을 위해이 외부 JavaScript (.js) 파일을 얻는 방법 이 워드 프레스 테마에서 일하고 있습니까? 당신도 같은 질문을하는 사람입니까? 글쎄, 당신은 마침내 올바른 위치에 있습니다 : 나는이 작업을 수행 할 수있는 가장 간단한 방법을 단계별로 안내하기 위해 여기 있습니다!

이제 WordPress가 모두 설치되어 있고 외부 JS가 준비되어 있다고 가정하면 파일을 포함시키는 작업을 시작하십시오!

참고 : 이 자습서에 다음 파일 (testrun.js)을 사용하고 있으며 작업중 인 테마는 WordPress의 Twenty Sixteen입니다.

alert ( 'Hello');

의 시작하자!

모든 스크립트와 스타일 시트는 functions.php 내에서로드됩니다. 이것은 WordPress 자체 또는 플러그인이 사용하는 다른 스크립트와 충돌하지 않도록 WordPress에 파일을로드하는 올바른 방법입니다. WordPress에 포함 된 모든 파일을 관리하게하려면이 파일이 파일의 머리글 (시작) 또는 바닥 글 (끝) 부분에 포함되도록해야합니다. 각 템플릿 / 테마에는 고유 한 functions.php가 있으므로 포함 할 모든 파일을 포함하는 함수의 정확한 이름은 일반화하기 어렵습니다. 16 개의 테마를 테마로 사용하고 있으므로 아래는 functions.php (파일 포함에 사용되는 방법)의 스냅 샷입니다. 당신은 어느 정도 이와 비슷해야합니다 :

wp_enqueue_script 함수는 스크립트가 포함되지 않았거나 모든 종속성이 등록 된 경우 스크립트 종속성에 따라 적절한 시간에 스크립트 파일을 생성 된 페이지에 링크합니다. wp_register_script () 함수를 사용하여 이전에 등록 된 핸들과 스크립트를 링크하거나 스크립트를 링크하는 데 필요한 모든 매개 변수를이 함수에 제공 할 수 있습니다.

wp_enqueue_script ($ handle, $ src, $ deps, $ ver, $ in_footer) 는 다음 매개 변수를 사용합니다.

$ 핸들

(문자열) (필수) 스크립트 이름.

$ src

(string | bool) (선택 사항) WordPress의 루트 디렉토리에서 스크립트 경로. 예 : '/js/myscript.js'.

기본값 : false

$ deps

(배열) (선택 사항)이 스크립트가 의존하는 등록 된 핸들의 배열입니다.

기본값 : array ()

$ ver

(string | bool) (선택 사항) 스크립트 버전 번호 (있는 경우)를 지정하는 문자열입니다. 이 매개 변수는 캐싱에 관계없이 올바른 버전이 클라이언트에 전송되도록하기 위해 사용되므로 버전 번호를 사용할 수 있고 스크립트에 적합한 경우 포함해야합니다.

기본값 : false

$ in_footer

(bool) (선택 사항) 전에 스크립트를 대기열에 넣을지 여부 또는 전에 . 기본 '거짓'. 'false'또는 'true'를 허용합니다.

기본값 : false

이 학습서의 wp_register_script () 함수를 무시할 수 있습니다. 우리의 목적은 외부 JS 만 포함하는 것입니다. 그것 없이는 잘 작동합니다!

따라서 스크립트의 이름을 "test"로 지정하려면이 매개 변수 ($ handle)가 실제 파일의 이름 일 필요는 없으며 내 파일은 jquery와 버전에 대해 외부 종속성이 있으며 버전은 1.0이며 페이지가로드되기 전에로드됩니다. 내 기능은 다음과 같습니다.

wp_enqueue_script ( 'tutorial', get_template_directory_uri (). '/js/testrun.js', array ( 'jquery'), '1.0', false);

다시피 , get_template_directory_uri ()를 사용 했으므로 함수 뒤에 연결된 문자열, 즉“ /js/testrun.js ”는 실제로 템플릿 의 색인 파일 인 파일의 경로입니다.

따라서 js 파일의 소스 인 $ src 속성은 get_template_directory_uri (). 'path_to_js_wrt_index_of_template'이됩니다.

따라서 최종 functions.php 는 다음과 같습니다.

우리는 거의 다 했어요! 지금 저장하고 웹 사이트에서 새로 고침을 누르십시오 … JS가 작동하는 것을 볼 수 있습니다! 여기 내 것이있다 :

$ in_footer 옵션을 false로 설정했기 때문에 페이지가로드되기 전에 스크립트가로드되지만 JQuery가 종속성으로 추가 된 후에로드됩니다!

그리고 .. 짜잔! 여기에 .. WP 테마에 외부 사용자 정의 JS 파일을 성공적으로 포함했습니다!

행복한 코딩 !!

참조 : 대기열 기능 : WordPress Codex

워드 프레스에 사용자 정의 외부 JS를 추가하는 가장 좋은 방법은 무엇입니까