워드프레스 속도향상: 이모지(Emoji) 비활성화


 

이모지란?

이모지(emoji)는 그림 문자를 말한다.  워드프레스는 :-)  나 :-P 같은 텍스트 이모티콘을 입력하면 자동으로 그림 문자로 바꿔주는 기능이 있다.

텍스트 이모티콘을 외우고 있지 않아 그냥 OS 에서 제공하는 기능을 이용한다.

 

 

이모지 자바스크립트 파일과 렌더링

이 기능을 하기 위해 워드프레스에서는 별도의 자바스크립트가 있어 렌더링 속도에 작게라도 영향을 준다.

이모지 자동 변환 기능을 사용하지 않으면 조금이라도 워드프레스 사이트의 성능을 향상시킬 수 있다.

워드프레스 wp-emoji-release.min 다운로드
워드프레스 wp-emoji-release.min 다운로드

 

 

워드프레스 쓰기 설정에서 꺼도 자바스트립트 다운로드 된다

워드프레스 쓰기 설정에서 이모지 변환 기능을 끌 수 있다.

그래도 wp-emoji-release.min.js 파일은 다운로드 된다

워드프레스 쓰기 설정
워드프레스 쓰기 설정

 

 

이모지 비활성화시키기

워드프레스는 안 되는게 없다. 이모지 자바스크립트 파일을 다운로드하지 않게 하는 방법이 있다.

  • 플러그인으로 이모지 비활성화시키기
  • 코드로 이모지 비활성화시키기

 

플러그인으로 이모지 비활성화시키기

Disable Emojis 플러그인을 이용하면 된다.

Disable Emojis 플러그인
Disable Emojis 플러그인

 

코드로 이모지 비활성화시키기

테마에 아래 코드를 추가하면 된다.

1.만든 테마가 아니라면 차일드테마를 만든다.

2.테마 파일 중에 functions.php 에 다음 내용을 추가하고 저장한다.

/**
 * Disable the emoji's
 */
function disable_emojis() {
 remove_action( 'wp_head', 'print_emoji_detection_script', 7 );
 remove_action( 'admin_print_scripts', 'print_emoji_detection_script' );
 remove_action( 'wp_print_styles', 'print_emoji_styles' );
 remove_action( 'admin_print_styles', 'print_emoji_styles' ); 
 remove_filter( 'the_content_feed', 'wp_staticize_emoji' );
 remove_filter( 'comment_text_rss', 'wp_staticize_emoji' ); 
 remove_filter( 'wp_mail', 'wp_staticize_emoji_for_email' );
 add_filter( 'tiny_mce_plugins', 'disable_emojis_tinymce' );
 add_filter( 'wp_resource_hints', 'disable_emojis_remove_dns_prefetch', 10, 2 );
}
add_action( 'init', 'disable_emojis' );

/**
 * Filter function used to remove the tinymce emoji plugin.
 * 
 * @param array $plugins 
 * @return array Difference betwen the two arrays
 */
function disable_emojis_tinymce( $plugins ) {
 if ( is_array( $plugins ) ) {
 return array_diff( $plugins, array( 'wpemoji' ) );
 } else {
 return array();
 }
}

/**
 * Remove emoji CDN hostname from DNS prefetching hints.
 *
 * @param array $urls URLs to print for resource hints.
 * @param string $relation_type The relation type the URLs are printed for.
 * @return array Difference betwen the two arrays.
 */
function disable_emojis_remove_dns_prefetch( $urls, $relation_type ) {
 if ( 'dns-prefetch' == $relation_type ) {
 /** This filter is documented in wp-includes/formatting.php */
 $emoji_svg_url = apply_filters( 'emoji_svg_url', 'https://s.w.org/images/core/emoji/2/svg/' );

$urls = array_diff( $urls, array( $emoji_svg_url ) );
 }

return $urls;
}

(코드 출처)

 

 

 

플러그인 vs. 테마

이모지 자바스클비트 다운로드 파일을 줄이고 렌더링 속도를 향상시키는데, 플러그인을 사용하면 디비 부하를 조금이라도 주게된다. 플러그인 사용 여부를 디비 설정에서 찾기 때문이다.  서버 부하를 줄이려면 플러그인이 하는 일을 테마에 코드를 넣으면 된다.

메인 테마를 직접만든게 아니라면 해당 테마의 차일드 테마를 만들어야 한다. 부모 테마를 업데이트하면 수정한게 다 사라지기 때문이다.

테마를 아직 결정하지 않았거나 테마를 자주 바꿀 일이 있다면 플러그인으로 하면 된다.  서버부하가 그렇게 크지는 않다.

테마를 수정한 경우 테마를 바꿀 때 이 부부분도 같이 바꿔야 한다.

 



만들면서 배우는 워드프레스:초보자도 따라 하는 웹사이트 제작 완벽 가이드, 한빛미디어워드프레스(WordPress) 사이트 제작과 플러그인 활용:100가지 실용 예제로 강력하고 견고하게 만드는, 에이콘출판만들면서 배우는 워드프레스 교과서:WordPress 도입 사용성 향상 SEO 보안 액세스 해석 플러그인 개발 성능 튜�, 멘토르New 홍마리오의워드프레스 초급 5.x 최신 버전, 앤써북



일부 글에 제휴 링크가 포함될 수 있으며 파트너스 활동으로 일정액의 수수료를 받을 수 있습니다.



추천 글



















스쿼트스타: 스쿼트 카운터

스쿼트하면 자동으로 횟수 측정, 횟수를 음성으로 세주고 스쿼트 속도 등의 분석, 일별/월별/연도별 운동 기록 관리












Add a Comment

이메일 주소는 공개되지 않습니다.

































채널추가 버튼을 누르면 카카오톡 뷰에서 볼 수 있습니다.