워드프레스 강좌 / 사용자 정의 필드 입력하고 출력하기

사용자 정의 필드

사용자 정의 필드를 이용하여 글에 추가적인 정보를 입력하고 출력할 수 있습니다. 그 정보를 글 본문에 직접 입력할 수도 있지만, DB에 저장하면 출력하는 것 이외에도 여러 가지로 활용 가능하다는 장점이 있습니다.

사용자 정의 필드 입력하기

사용자 정의 필드는 글 쓰는 화면에서 입력합니다. 사용자 정의 필드를 입력하는 폼이 보이지 않는다면, 화면 옵션에서 [사용자 정의 필드]에 체크합니다.

글 입력 폼 밑에 사용자 정의 필드가 있습니다. [새로 입력]을 클릭합니다.

이름과 값을 입력 후 [사용자 정의 필드 추가] 버튼을 클릭하면 필드가 생성됩니다.

사용자 정의 필드는 여러 개 생성할 수 있습니다. 다음은 두 개의 사용자 정의 필드를 추가한 모습입니다.

color는 red, weather는 Cloudy로 정했습니다. 사용자 정의 필드를 만들었다면, 이름이 선택 목록에 추가되어 재사용이 편해집니다.

사용자 정의 필드 출력하기

테마 파일의 적절한 위치에 코드를 넣으면 사용자 정의 필드의 이름 또는 값이 출력됩니다. 적절한 위치는 보통 글(포스트)을 출력하는 루프(loop) 안이고, 글을 출력하는 템플릿 파일은 보통 single.php입니다.

해당 글에 추가된 사용자 정의 필드 전체를 출력하는 코드는

the_meta();

입니다. 예를 들어 Twenty Seventeen의 single.php의

while ( have_posts() ) : the_post();

아래에 the_meta();를 추가하면, 다음과 같이 순서 없는 목록으로 값과 이름이 출력됩니다.

특정 사용자 필드의 값만 출력하고 싶다면 get_post_meta() 함수를 이용합니다.

get_post_meta( $post_id, $key, $single )
  • $post_id : 글의 아이디
  • $key : 사용자 정의 필드 이름
  • $single : true면 문자열로 반환하고, false 또는 설정하지 않으면 배열로 반환

예를 들어

echo get_post_meta( get_the_ID(), 'weather', true );

는 글의 weather의 값만 출력합니다.

출력 이외의 용도로 사용할 수도 있습니다. 예를 들어

if ( get_post_meta( get_the_ID(), 'color', true ) == "red" ) {
  echo ( '<style>p { color: red; }</style>' );
}

는 color의 값이 red일 때 문단의 색을 빨간색으로 만듭니다.

참고

사용자 정의 필드 관련 플러그인을 이용하면 체크박스, 라디오 버튼, 선택 목록 등 다양한 방식으로 값을 입력할 수 있습니다. 대표적인 플러그인은 Advanced Custom Fields입니다.

같은 카테고리의 다른 글

워드프레스 강좌 / 멀웨어 제거, 치료하는 방법

워드프레스 강좌 / 멀웨어 제거, 치료하는 방법

워드프레스와 멀웨어 워드프레스를 사용하는 사이트가 많다보니 공격도 많이 당합니다. 멀웨어에 감염되어서 사이트가 느려지거나, 서버 자원을 필요 이상으로 소비하거나, 다른 사이트로 리다이렉트시키는 등의 문제가 발생합니다. 멀웨어에 감염되면 index.php나 wp-config.php 등 주요 파일이 변형됩니다. 그리고 이상한 파일이 여기저기 잔뜩 생성됩니다. 따라서 치료 방법은 단순합니다. 변형된 파일은 문제 없는 파일로 교체하고, 이상한 파일은 삭제하면 됩니다. 문제는 ...

워드프레스 강좌 / 자동 업데이트와 자동 업데이트 끄는 방법

워드프레스 강좌 / 자동 업데이트와 자동 업데이트 끄는 방법

자동 업데이트 워드프레스는 코어, 플러그인, 테마, 번역 네가지 분류로 업데이트를 하고, 업데이트는 보통 마이너 업데이트, 메이저 업데이트로 구분합니다. (코어는 워드프레스 자체를 의미합니다.) 워드프레스 기본 설정 하에서는 마이너 업데이트와 번역 업데이트는 자동으로 업데이트합니다. 즉, 사용자가 아무런 작업을 하지 않아도 백그라운드에서 업데이트를 해버리는 것이죠. 메이저 업데이트는 알림이 뜨고, 사용자가 직접 업데이트를 합니다. 보안 측면에서는 자동 ...

워드프레스 강좌 / 특성 이미지 설정하는 방법

워드프레스 강좌 / 특성 이미지 설정하는 방법

특성 이미지 워드프레스의 글이나 페이지에는 특성 이미지를 설정하는 옵션이 있습니다. 특성 이미지는 해당 글을 대표하는 이미지로, 글의 내용을 잘 반영하는 이미지로 설정합니다. 특성 이미지는 본문에 삽입되는 것은 아니지만, 테마나 플러그인에서 여러 가지 방식으로 활용하니, 가능하다면 설정하는 것이 좋습니다. 특성 이미지 설정하기 글이나 페이지를 작성하는 화면에 특성 이미지를 설정하는 옵션이 있습니다. 을 클릭합니다. 기존 ...

워드프레스 강좌 / 플러그인 / Responsive Lightbox & Gallery / 이미지 클릭했을 때 확대하는 플러그인

워드프레스 강좌 / 플러그인 / Responsive Lightbox & Gallery / 이미지 클릭했을 때 확대하는 플러그인

워드프레스 테마는 일반적으로, 이미지를 본문에 넣을 때 이미지가 아무리 커도 본문 가로폭을 넘어가지 못하게 만듭니다. 보기에는 좋지만, 그렇게 하면 큰 이미지가 작게 보여서 이미지 안의 내용을 보기 힘들 수가 있습니다. 이를 해결하는 방법은 라이트박스 플러그인을 사용하는 것입니다. 이미지를 클릭하면 원본 이미지로 또는 크게 확대 되는 걸 본 적 있으시죠? 그게 ...

워드프레스 강좌 / 플러그인 / Crayon Syntax Highlighter / 코드 문법 하이라이트 플러그인

워드프레스 강좌 / 플러그인 / Crayon Syntax Highlighter / 코드 문법 하이라이트 플러그인

Crayon Syntax Highlighter 프로그래밍을 주제로 하는 블로그나 사이트라면 수많은 코드를 글에 포함하게 됩니다. 코드는 <pre> 태그나 <code> 태그를 이용하여 고정폭 글꼴로 나타낼 수도 있으나, 단색으로 나타내므로 읽는게 불편합니다. 워드프레스에는 이런 불편을 해소해주는 Syntax Highlighter 플러그인이 많습니다. 그 중 사용하기 편하고 다양한 기능을 가진 플러그인이 Crayon Syntax Highlighter입니다. Crayon Syntax Highlighter는 꽤 오랫동안 업데이트가 되지 않고 있어서 ...

워드프레스 강좌 / 플러그인 설치하기, 삭제하기

워드프레스 강좌 / 플러그인 설치하기, 삭제하기

플러그인을 설치하는 방법 플러그인을 설치하는 방법은 세 가지가 있습니다. 웹에서 바로 설치하기 ZIP 파일 업로드하여 설치하기 FTP로 업로드하여 설치하기 WordPress.ORG에서 공유되는 플러그인은 보통 1번 방식으로 설치합니다. WordPress.ORG에서 공유되지 않는 플러그인은 2번 또는 3번 방식으로 설치합니다. 웹에서 바로 설치하기 에서 설치하려는 플러그인을 찾습니다. 추천, 인기 등에서 널리 쓰이는 플러그인을 볼 수 있고, 검색을 통해서 원하는 ...

워드프레스 강좌 / 플러그인 / Enlighter / 코드 하이라이터(Code Highlighter) 플러그인

워드프레스 강좌 / 플러그인 / Enlighter / 코드 하이라이터(Code Highlighter) 플러그인

Enlighter 워드프레스 코드 하이라이트 플러그인으로 널리 사용되는 것은 Crayon Syntax Highlighter입니다. 그런데 개발이 중단된지 꽤 되었습니다. 그래서 찾은 다른 플러그인이 Enlighter입니다. 어떻게 사용하는지 간단히 알아보겠습니다. 설치와 설정 설치는 워드프레스 관리자 페이지에서 할 수 있습니다. highlighter로 검색 후 설치합니다. 설정은 Enlighter에서 합니다. 다양한 메뉴가 있는데, 기본 설정 그대로 사용해도 큰 불편은 없습니다. 사용법 - 블록 편집기 Enlighter를 ...

워드프레스 강좌 / Crayon Syntax Highlighter / 글 목록에서 코드 제거하는 방법

워드프레스 강좌 / Crayon Syntax Highlighter / 글 목록에서 코드 제거하는 방법

Crayon Syntax Highlighter은 워드프레스에서 사용하는 코드 하이라이트 플러그인입니다. 최근엔 업데이트가 별로 없지만, 사용에는 문제가 없습니다. Crayon Syntax Highlighter를 사용하면 한 가지 문제가 발생합니다. 글 시작 부분에 코드가 있으면 글 목록에서 그 코드가 나온다는 것입니다. 글 목록에 텍스트만 출력되는 상황이라면 그리 보기 싫지는 않지만, 썸네일이 들어가거나 2열로 배열한다면 모양이 이상해질 수 있습니다. CSS로 ...

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

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

WP Super Cache 웹사이트 속도는 중요합니다. 홈페이지에 접속했을 때 속도가 느리다면 방문자가 금방 떠나고, 검색 엔진에서도 불이익을 받습니다. 따라서 속도 개선은 사이트 관리자의 중요 업무 중의 하나입니다. 워드프레스는 기본적으로 페이지를 동적으로 만듭니다. 요청이 있으면 데이터베이스에서 자료를 가져와서 테마의 파일들을 이용해 출력을 하기에, 방문자가 접속할 때마다 페이지를 생성합니다. 그래서 정적인 페이지보다 속도가 느립니다. 이를 ...

워드프레스 강좌 / 자식 테마(Child Theme)의 뜻과 만드는 방법, 장단점

워드프레스 강좌 / 자식 테마(Child Theme)의 뜻과 만드는 방법, 장단점

자식 테마의 뜻 어떤 테마의 디자인과 기능을 그대로 상속 받는 테마를 자식 테마(Child Theme)라 합니다. 이때 상속해주는 테마를 부모 테마(Parent Theme)라 합니다. 자식 테마 만드는 방법 워드프레스의 기본 테마 중 하나인 Twenty Seventeen의 자식 테마를 만들어보겠습니다. 방법 1 wp-content/themes 폴더에 twentyseventeen-child 폴더를 만듭니다. (폴더 이름은 다른 것으로 해도 상관없습니다.) twentyseventeen-child 폴더 안에 다음의 내용을 가진 style.css ...

워드프레스 강좌