워드프레스 강좌 / 플러그인 / WP Super Cache / 캐시를 이용하여 사이트 속도 빠르게 해주는 플러그인

웹사이트 속도는 중요하다. 홈페이지에 접속했을 때 속도가 느리다면 방문자가 금방 떠나고, 검색 엔진에서도 불이익을 받는다. 따라서 속도 개선은 사이트 관리자의 중요 업무 중의 하나이다.

워드프레스는 기본적으로 페이지를 동적으로 만든다. 요청이 있으면 데이터베이스에서 자료를 가져와서 테마의 파일들을 이용해 출력을 하기에, 방문자가 접속할 때마다 페이지를 생성한다. 그래서 정적인 페이지보다 속도가 느리다.

이를 해결해주는 것이 캐시 플러그인이다. 동적인 페이지를 정적인 페이지로 변환하여 저장해두고, 요청이 있으면 그 저장된 페이지를 출력해준다.

워드프레스에는 상당히 많은 캐시 플러그인이 있습니다. 그 중 하나가 Automatic이 만든 WP Super Cache이다.

설치

  • WP Super Cache는 WordPress.ORG에서 공유되고 있으므로, 워드프레스 관리자에서 설치할 수 있다.

기본 설정

  • WP Super Cache를 설치하고 활성화하면 [설정]에 [WP Super Cache] 메뉴가 생긴다.

  • 기본적으로 캐시 기능은 꺼져 있으므로, 사용을 위해서는 켜야 한다.
  • [Easy] 탭에서 [Caching On]을 선택한 후 [Update Status]를 클릭하면 캐싱을 시작한다.

  • [Advanced] 탭에서 상세한 설정을 할 수 있고...

  • [Contents] 탭에서 캐시된 페이지 목록을 볼 수 있다.

작동 방식

  • 로그인 하지 않은 방문자가 있으면 그 페이지에 대한 캐시 파일이 만들어진다.([Advanced - Cache Restrictions]에서 로그인 사용자도 캐시된 파일을 사용하도록 설정할 수 있다.)
  • 그 페이지에 대한 요청이 있으면 캐시된 파일을 출력한다.
  • 1800초(30분)이 지나면 캐시된 파일이 만료(Expire)된다.
  • 만료된 페이지에 대한 요청이 있으면 다시 캐시가 생성됩니다.

따라서 캐시가 생성된 후 30분 동안 접속하는 사람은 빠른 속도로 페이지를 볼 수 있다. 단, 캐시된 파일을 보는 것이므로 그 사이에 발생한 사이트 변경 사항이 반영되지 않는다. 예를 들어 사이드바에 최근 글 위젯이 있다고 할 때, 새 글이 등록되면 그 글도 최근 글 위젯에 나타나야 하지만 캐시된 파일에는 나오지 않는다.

TIP

  • 캐시를 수동으로 삭제하고 싶다면 [Easy] 탭에 있는, 또는 [Contents] 탭에 있는 [Delete Cache] 버튼을 클릭한다.

  • 포스트나 페이지에 변화가 있을 때 캐시가 새로 생성되길 원하다면 [Advanced] 탭에서 [Clear all cache files when a post or page is published or updated.]에 체크한다.

같은 카테고리의 다른 글
워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 / 플러그인 / 자동 업데이트 활성화 비활성화하는 방법

워드프레스 플러그인에는 자동 업데이트 기능이 있다. 새 버전이 나오면 업데이트를 하고 관리자에게 메일을 보내준다. 커스터마이징 없이 그대로 사용하고 있다면 큰 문제가 없으나, 무언가 수정을 하거나 덧붙인 게 있다면 제대로 작동하지 않을 수 있다. 따라서 업데이트를 해도 문제가 없는지 테스트를 해보고 진행하는 것이 좋다. 그러기 위해서는 일단 자동 업데이트를 꺼야 한다. 플러그인 목록에 가면 ...

워드프레스 / 함수 / wp_is_mobile() / 모바일 접속 여부 판단하는 함수

워드프레스 / 함수 / wp_is_mobile() / 모바일 접속 여부 판단하는 함수

wp_is_mobile() wp_is_mobile()은 모바일 기기로 접속하면 true, 모바일 기기가 아니라면 false를 반환하는 함수이다. 모바일인지 아닌지 구분하는 기준은 $_SERVER 이다. wp_is_mobile()은 wp-includes/vars.php에 정의되어 있다. 예제 1 모바일이면 A를 출력한다. <?php if ( wp_is_mobile() ) { echo 'A'; } ?> 예제 2 모바일이 아니면 A를 출력한다. <?php if ( !wp_is_mobile() ) { echo 'A'; ...

워드프레스 / 함수 / has_post_thumbnail() / 썸네일 존재 여부 체크하는 함수

워드프레스 / 함수 / has_post_thumbnail() / 썸네일 존재 여부 체크하는 함수

has_post_thumbnail()은 썸네일이 존재하는지 체크하는 함수이다. 썸네일이 있으면 TRUE를 반환한다. 썸네일이 있으면 A를 실행한다. <?php if ( has_post_thumbnail() ) : ?> A <?php endif; ?>

워드프레스 / Template_Tags

워드프레스 / Template_Tags

Template Tags는 정보를 불러오는 함수 정도로 이해하면 된다. 예를 들어 bloginfo( 'name' )는 블로그 이름을 가져온다. 정보는 DB에 있는 내용일 수도 있고, 파일일 수도 있다. Template tags are used within your blog's Templates to display information dynamically or otherwise customize your blog, providing the tools to make it as individual and ...

워드프레스 / 리비전(Revision)

워드프레스 / 리비전(Revision)

리비전   리비전으로 복구하기   리비전 개수 제한 wp-config.php에 다음 코드를 추가한다. 3은 적절히 설정한다. define('WP_POST_REVISIONS', 3); 리비전 비활성화 wp-config.php에 다음 코드를 추가한다. define('WP_POST_REVISIONS', false); 리비전 삭제 리비전을 삭제하는 것은 플러그인을 이용하는 것이 편하다. revision으로 검색하면 많은 플러그인을 찾을 수 있다.

워드프레스 / 플러그인 / Extended User Search In WP-Amin / 이름으로도 사용자 검색 가능하게 하는 플러그인

워드프레스 / 플러그인 / Extended User Search In WP-Amin / 이름으로도 사용자 검색 가능하게 하는 플러그인

이 Theme Buster인 경우... 사용자 목록에 이름이 AAA가 보여도 AAA로 검색하면... 검색이 되지 않는다. 을 AAA로 설정하면... 검색이 된다. 즉, 검색이 가능한 이름은 으로 검색이 되게 하려면 Extended User Search In WP-Amin 플러그인을 사용하면 된다. 특별한 설정을 필요 없고, 플러그인을 ...

워드프레스 / 테마 만들기 / 등록하고 활성화 하기

워드프레스 / 테마 만들기 / 등록하고 활성화 하기

테마를 등록할 수 있는 최소한의 조건은 style.css와 index.php 두 개의 파일이다. 두 파일만 있으면 테마 목록에 나오고 활성화할 수 있다. style.css에 테마 정보가 들어가고, index.php로 내용을 출력하는데, index.php에 아무런 내용이 없어도 등록과 활성화는 가능하다. 디렉토리 만들기 테마가 저장되는 위치는 /wp-content/themes이다. 그 디렉토리 안에 적당한 이름의 디렉토리를 만든다. 예를 들어 my-theme이라는 디렉토리를 만들었다면 /wp-content/themes/my-theme 안에 ...

워드프레스 / 댓글 핑백 허용 여부 일괄 변경하는 방법

워드프레스 / 댓글 핑백 허용 여부 일괄 변경하는 방법

댓글 핑백 허용 여부 설정 글에 댓글과 핑백을 허용할지 말지는 에서 정한다. 그러나 개별 글의 설정이 우선된다. 즉, 전체 설정에서 댓글을 허용하지 않아도, 글에서 허용하면 그 글에는 댓글을 달 수 있다. 반대로 전체 설정에서 댓글을 허용해도, 글에서 허용하지 않으면 그 글에는 댓글을 달 수 없다. 에서 댓글과 핑백 ...

워드프레스 / 메모

워드프레스 / 메모

functions.php 위젯 제목 출력되지 않게 하는 방법 위젯의 내용은 출력하지만, 위젯 제목은 출력하고 싶지 않다면, 다음 코드를 추가한다. function no_widget_title( $t ) { return null; } add_filter( 'widget_title', 'no_widget_title' ); 이메일 주소 변경 알림 메일 가지 않게 하는 방법 add_filter( 'send_email_change_email', '__return_false' ); 메타 태그 추가하는 방법 function cmsfactory_meta_tags() { echo '<meta ...>'; echo '<meta ...>'; } add_action( ...

워드프레스 / '다른 업데이트가 현재 진행중입니다' 해결 방법

워드프레스 / '다른 업데이트가 현재 진행중입니다' 해결 방법

워드프레스를 업데이트할 때 아래와 같은 메시지가 나올 수 있다. 다른 업데이트가 현재 진행중입니다. 영어로 사용한다면 아래처럼 나온다. Another update is currently in progress. 업데이트를 실행하고 새로 고침 등을 했을 때 발생할 수 있는데, 이를 해결하는 방법은... 첫 번째, 15-20분 기다리는 것이다. 두 번째 방법은 wp_options 테이블에서 option_name이 'core_updater.lock'인 행을 삭제하는 것이다. 15분 이상 기다려보고 계속 문제가 있다면 ...