wordpress 테마 프레임 워 크 thematic 자바 script 참조 방법

thematic 는 매우 우수한 wordpress 테마 프레임 워 크 입 니 다. 이 를 이용 하여 우리 가 필요 로 하 는 주 제 를 신속하게 만 들 수 있 지만 실제 개발 과정 에서 thematic 의 많은 함수 가 우리 의 수 요 를 만족 시 키 지 못 합 니 다. 우 리 는 더 좋 은 함수 로 작업 을 완성 할 수 있 습 니 다. 이 럴 때 thematic 의 함 수 를 개조 해 야 합 니 다.예 를 들 어 최근 에 우리 의 개발 프로젝트 에서 발생 한 문제: thematic 가 제공 한 javascript 스 크 립 트 는 너무 비대 하고 우리 의 javascript 은 작고 정교 하기 때문에 여기 서 두 가지 문 제 를 해결 해 야 한다. 먼저 thematic 프레임 워 크 를 바 꾸 지 않 는 원칙 에서 프레임 워 크 가 제공 하 는 javascript 를 제거 한 다음 에 프레임 워 크 를 바 꾸 지 않 는 원칙 에서 우리 가 필요 로 하 는 javascript 를 도입 해 야 한다.그러나 이것 은 하나의 사고방식 이다. 실제 조작 에서 우 리 는 우리 의 목적 을 한 걸음 에 달성 할 수 있다.
우선 thematic 프레임 워 크 함수 라 이브 러 리 를 살 펴 보 세 요. wp - content \ themes \ thematic \ \ library \ extensions 에서 header - extensions. php 를 찾 았 습 니 다. 이 파일 에는 전체 프레임 워 크 의 머리 에 관 한 함수 가 포함 되 어 있 습 니 다. 이 파일 을 열 고 309 줄 로 이동 하거나 다음 코드 를 찾 았 습 니 다.
 

  
  
  
  
  1. if (function_exists('childtheme_override_head_scripts'))  {  
  2.     function thematic_head_scripts() {  
  3.         childtheme_override_head_scripts();  
  4.     }  
  5. else {  
  6.     function thematic_head_scripts() {  
  7.         $scriptdir_start = "\t";  
  8.         $scriptdir_start .= '<script type="text/javascript" src=\'#\'" /span>;  
  9.         $scriptdir_start .= get_bloginfo('template_directory');  
  10.         $scriptdir_start .= '/library/scripts/';  
  11.           
  12.         $scriptdir_end = '"></script>';  
  13.           
  14.         $scripts = "
    "
    ;  
  15.         $scripts .= $scriptdir_start . 'hoverIntent.js' . $scriptdir_end . "
    "
    ;  
  16.         $scripts .= $scriptdir_start . 'superfish.js' . $scriptdir_end . "
    "
    ;  
  17.         $scripts .= $scriptdir_start . 'supersubs.js' . $scriptdir_end . "
    "
    ;  
  18.         $dropdown_options = $scriptdir_start . 'thematic-dropdowns.js' . $scriptdir_end . "
    "
    ;  
  19.           
  20.         $scripts = $scripts . apply_filters('thematic_dropdown_options'$dropdown_options);  
  21.       
  22.             $scripts .= "
    "
    ;  
  23.             $scripts .= "\t";  
  24.             $scripts .= '<script type="text/javascript">' . "
    "
    ;  
  25.             $scripts .= "\t\t" . '/*<![CDATA[*/' . "
    "
    ;  
  26.             $scripts .= "\t\t" . 'jQuery.noConflict();' . "
    "
    ;  
  27.             $scripts .= "\t\t" . '/*]]>*/' . "
    "
    ;  
  28.             $scripts .= "\t";  
  29.             $scripts .= '</script>' . "
    "
    ;  
  30.       
  31.         // Print filtered scripts  
  32.         print apply_filters('thematic_head_scripts'$scripts);  
  33.     }  
  34.  
  35. }  
  36.  
  37. if (apply_filters('thematic_use_superfish', TRUE)) {  
  38.     add_action('wp_head','thematic_head_scripts');  

thematic_head_scripts 라 는 함수 이름 은 머리 스 크 립 트 출력 을 제어 하 는 역할 을 쉽게 알 수 있 습 니 다. 여기 서 우 리 는 이 함수 에 대해 더 상세 하 게 설명 하지 않 고 이 주제 와 관련 된 부분 만 토론 합 니 다. 우 리 는 이 함수 의 코드 를 다음 과 같이 간소화 합 니 다.
 

  
  
  
  
  1. if (function_exists('childtheme_override_head_scripts'))  {  
  2.     function thematic_head_scripts() {  
  3.         childtheme_override_head_scripts();  
  4.     }  
  5. else {  
  6.     function thematic_head_scripts() {  
  7.         ......  
  8.         print apply_filters('thematic_head_scripts'$scripts);  
  9.     }  
  10.  
  11. }  

여 기 를 보면 자 바스 크 립 트 를 쉽게 제어 할 수 있 습 니 다. 우선 이 함 수 는 if 가 있 습 니 다. childtheme 를 검사 하 십시오.override_head_scripts () 이 함수 가 존재 하 는 지, 존재 하 는 지, 이 함 수 를 실행 하 는 지, 그렇지 않 으 면 프레임 워 크 의 기본 함 수 를 실행 합 니 다.
그래서 우 리 는 주제 의 functions. php 에서 childtheme 를 구성 할 수 있 습 니 다.override_head_scripts () 함 수 는 자 바스 크 립 트 스 크 립 트 를 참조 합 니 다. 다음 코드 를 테마의 functions. php 에 추가 합 니 다. 이 파일 의 마지막 은? >이전:
워드 프레스 프론트 로 돌아 가 페이지 를 새로 고 친 후 웹 소스 코드 를 봅 니 다.

  
  
  
  
  1. function childtheme_override_head_scripts() {?>  
  2.     <?php echo "
    \t"
     ?><script type="text/javascript" charset="utf-8" src="<?php bloginfo('stylesheet_directory'); ?>/script/main.js"></script><?php echo "
    "
     ?>  
  3. <?php } 

thematic 프레임 워 크 의 자 바스 크 립 트 가 없어 진 것 을 발견 할 수 있 습 니 다. 대신 우리 가 정의 한 자 바스 크 립 트 스 크 립 트 입 니 다.
자 바스 크 립 트 와 thematic 프레임 워 크 를 인용 한 자 바스 크 립 트 가 공존 하 는 방법 도 있 습 니 다. 이전 방법 과 마찬가지 로 테마의 functions. php 파일 의 마지막 방법 은? >이전에 다음 코드 를 추가 합 니 다:
 

  
  
  
  
  1. function childtheme_scripts() {?>  
  2.     <?php echo "
    \t"
     ?><script type="text/javascript" charset="utf-8" src="<?php bloginfo('stylesheet_directory'); ?>/script/main.js"></script><?php echo "
    "
     ?>  
  3. <?php }  
  4. add_action('wp_head''childtheme_scripts'); 

또 하나의 문 제 는 인 용 된 javascript 스 크 립 트 경 로 를 얻 을 수 있 는 문제 입 니 다. 정상 적 인 상황 에서 우 리 는 bloginfo ('template directory') 를 통 해 현재 테마의 경 로 를 얻 을 수 있 지만 하위 테마 에서 이 방법 으로 얻 을 수 있 는 것 은 이전 주제 의 경로 입 니 다. 따라서 우 리 는 bloginfo ('stylesheet directory') 를 통 해하위 테마 가 져 오 는 경로
본 고 는 '베 이 비 깨 물 기' 블 로그 에서 나 온 것 이 니 작가 에 게 연락 하 세 요!

좋은 웹페이지 즐겨찾기