워드프레스 / 메모

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( 'wp_head', 'cmsfactory_meta_tags' );
function cmsfactory_meta_tags() {
?>
  <meta ...>
  <meta ...>
<?php
}
add_action( 'wp_head', 'cmsfactory_meta_tags' );

위젯에서 쇼트 코드 실행되게 하는 방법

add_filter( 'widget_text', 'do_shortcode' );

따옴표

워드프레스는 따옴표를 분석해서 왼쪽 따옴표와 오른쪽 따옴표를 다른 모양으로 바꾼다. 만약 이게 싫다면 다음 코드를 추가한다.

remove_filter ( 'the_content', 'wptexturize' );
remove_filter ( 'the_title', 'wptexturize' );

이미지 사이즈가 줄어든다면...

아주 큰 사이즈의 이미지를 업로드했을 때, 그 크기가 유지되지 않고 줄어드는 경우가 있다. 예를 들어 세로 크기가 6000px인 이미지인데 2560px로 바뀌는 등... 그 제한을 풀고 싶다면 다음 코드를 추가한다.

add_filter( 'big_image_size_threshold', '__return_false' );

2560이 아니라 4000 정도로 정하고 싶다면, 다음 코드를 추가한다.

function mynamespace_big_image_size_threshold( $threshold ) {
    return 4000;
}
add_filter('big_image_size_threshold', 'mynamespace_big_image_size_threshold', 999, 1);

Template

템플릿 안에 쇼트코드(shortcode) 넣는 방법

<?php echo do_shortcode( "[shortcode]" ); ?>

플러그인

UserPro / CSS, JS 버전 보이게 하는 방법

UserPro를 사용하면 CSS와 JS에 버전이 붙지 않는다.

style.css?ver=4.9.5

처럼 나와야 하는데

style.css

만 나온다. 플러그인 성능 향상을 위한 거라는데, 일반적으로 버전 관리를 할 수 없으면 곤란하다. 최신 파일이 아닌 캐시된 파일을 사용하면 제대로 작동하지 않을 수 있기 때문이다.

이를 해결하기 위해서는

/wp-content/plugins/userpro/functions/hooks-actions.php

파일에서

add_filter( 'style_loader_src', 'up_remove_wp_ver_css_js', 9999 );
add_filter( 'script_loader_src','up_remove_wp_ver_css_js', 9999 );

를 주석 처리한다.

Post Views Counter / 테마에 조회수 출력하기

<?php
  echo pvc_get_post_views( $post_id = 0 );
?>

관리자에게만 보이고 싶다면..

<?php
  if ( current_user_can( 'administrator' ) ) {
    echo pvc_get_post_views( $post_id = 0 );
  }
?>

기타

트랙백 허용일 때만 트랙백 주소 나오게 하기

<?php if ('open' == $post->ping_status) { ?>
  <?php trackback_url(); ?>
<?php } ?>

페이지 템플릿, 포스트 타입 저장 위치

페이지는 페이지 템플릿으로, 포스트는 포스트 템플릿으로 디자인을 정한다. 어떤 글이 어떤 형식으로 되어 있는지 일괄적으로 찾는 게 쉽지 않은데... 데이터베이스에 직접 접속해서 쿼리를 실행하면 찾기 편하다. 저장되는 테이블은 wp_postmeta.

SELECT post_id, meta_value
FROM wp_postmeta 
WHERE meta_key = '_wp_page_template'
;

같은 카테고리의 다른 글

워드프레스 강좌 / 플러그인 / Democracy Poll / 설문조사, 투표 플러그인

워드프레스 강좌 / 플러그인 / Democracy Poll / 설문조사, 투표 플러그인

Democracy Poll은 워드프레스 설문조사 플러그인이다. Pro 버전이 없는 무료이고, 꼭 필요한 기능만 있는 간결한 플러그인이다. 무기명 설문조사도 가능하다. 플러그인을 찾을 때 설문조사(Poll)로 검색하는 것이 좋다. 투표(Vote) 플러그인을 찾으면 포스트에 좋아요나 별점을 주는 플러그인이 주로 나온다. 설치 WordPress.ORG에 등록된 것으로, 플러그인 추가에서 Poll로 검색하여 찾고 설치할 수 있다. 설문조사 만들기 을 클릭한 후, ...

워드프레스 강좌 / 플러그인 / HTML Editor Syntax Highlighter / 에디터 텍스트 모드 코드 하이라이트 플러그인

워드프레스 강좌 / 플러그인 / HTML Editor Syntax Highlighter / 에디터 텍스트 모드 코드 하이라이트 플러그인

워드프레스에 글을 작성할 때 보통은 비주얼 모드를 사용하지만, 텍스트 모드로 들어가서 코드를 직접 수정하는 경우도 많다. 그런데, 텍스트 모드에서 코드를 보면 흰색 바탕에 검정 글자여서 읽기가 쉽지 않다. 이 문제를 해결해주는 플러그인이 HTML Editor Syntax Highlighter이다. 플러그인을 설치하고 활성화한 후 텍스트 모드로 들어가면 하이라이트된 코드를 볼 수 있다. 설정 아이콘을 클릭하면... 코드를 보거나 편집할 ...

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

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

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

워드프레스 강좌 / 함수 / 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; ?>

워드프레스 / Ultimate Member

워드프레스 / Ultimate Member

사용자 정의 유효성 검사 만들기 예를 들어 0000-00-00 형식의 날짜를 입력 받고 싶다면, 테마의 functions.php에 다음 코드를 추가한다. function um_custom_validate_jb_date( $key, $array, $args ) { if ( isset( $args) ) { UM()->form()->add_error( $key, __( '0000-00-00 형식으로 입력해주세요.', 'ultimate-member' ) ); } } add_action( 'um_custom_field_validation_jb_date', 'um_custom_validate_jb_date', ...

워드프레스 강좌 / 함수

워드프레스 강좌 / 함수

current_user_can() Returns whether the current user has the specified capability. Administrator라면 123을 출력한다. if ( current_user_can( 'administrator' ) ) { echo '123'; } is_admin()은 백엔드에서만 작동된다고 한다. has_post_thumbnail() 썸네일이 존재하는지 체크한다. wp_is_mobile() 모바일로 접속했는지 체크한다.

워드프레스 강좌 / 샘플 데이터 만드는 방법

워드프레스 강좌 / 샘플 데이터 만드는 방법

워드프레스를 공부하거나, 테마를 만들 때 글, 페이지, 이미지, 댓글 등이 필요하다. 이러한 샘플 데이터를 만드는 방법 중의 하나는 플러그인을 사용하는 것이다. 플러그인 추가 페이지에서 dummy로 검색하면 꽤 많은 결과가 나온다. 하지만, 개인적으로 애용하는 건 Theme Unit Test이다. 다양한 형식의 글과 페이지들을 포함하고 있기 때문이다. 사용하는 방법은... XML 파일 다운로드 Theme Unit Test 사이트에 ...

워드프레스 / 플러그인 / WP Mail SMTP / 메일 발신 서버 변경 플러그인

워드프레스 / 플러그인 / WP Mail SMTP / 메일 발신 서버 변경 플러그인

워드프레스는 여러 가지 메일을 관리자 또는 사용자에게 보낸다. 메일 발송은 기본적으로 워드프레스가 설치된 시스템을 이용하는데, 시스템 설정에 따라 메일이 나가지 않거나, 메일이 발송되더라도 스팸으로 빠지는 경우가 생길 수 있다. 그런 경우 다른 SMTP 서버로 메일을 발송하여 문제를 해결할 수 있다. WP Mail SMTP는 워드프레스가 다른 SMTP로 메일을 발송하게 해주는 플러그인이다. 사용자가 ...

워드프레스 / 업데이트 하는 방법

워드프레스 / 업데이트 하는 방법

업데이트 알림 업데이트가 있으면 여기 저기 알림이 뜬다. 이를 클릭하여 업데이트 페이지로 이동한다. 업데이트는 워드프레스 자체, 플러그인, 테마, 번역 네 가지로 구분된다. 워드프레스 업데이트 워드프레스 자체를 업데이트할 때는 를 클릭한다. 잠시 기다리면 업데이트가 완료되고, 새 버전에 대한 안내가 나온다. 플러그인, 테마 업데이트 플러그인이나 테마는 여러 개를 선택해서 일괄적으로 업데이트할 수 있다. 주의할 점 업데이트를 했을 때 문제가 ...