무료 플러그인으로 WordPress 카테고리를 충전하세요
게시 됨: 2022-02-16최근에 나는 여행 웹 사이트를 만드는 과정에 대해 생각하고 있습니다. 특정 리조트에 대한 블로그 게시물을 작성한 다음 "하와이" 및 "카나리아 제도"와 같은 항목을 포함하는 목적지라는 사용자 지정 분류 체계를 갖게 됩니다. WordPress는 이러한 종류의 작업을 위해 구축되었으므로 이러한 대상별로 게시물을 빠르고 쉽게 정렬하고 구성할 수 있습니다.
문제는 예를 들어 하와이에 대한 게시물의 아카이브 페이지로 이동하면 하와이에 대한 정보 옵션이 상당히 제한된다는 것입니다. 기본적으로 용어에는 이름, 일반 텍스트 설명, 슬러그 및 관련 상위 항목만 있을 수 있습니다.
내가 정말로 원하는 것은 추천 이미지, 사용자 정의 필드 및 동적 설명 필드입니다. Destinations를 Custom Post Type으로 만들면 이 모든 것을 얻을 수 있지만 그렇게 하면 기본 제공되는 멋진 관계, 사용자 인터페이스 및 분류 체계의 속도에서 벗어날 수 있습니다.
다행히도 우리는 분류 용어에 대해 이러한 모든 것을 얻을 수 있으며 무료 플러그인으로 이를 수행할 수 있습니다. 방법은 다음과 같습니다.
나타난 그림
내 용어 페이지 상단에 렌더링할 수 있도록 추천 이미지를 원합니다. 하와이 용어가 포함된 게시물은 상단에 아름다운 해변 풍경이 표시됩니다.
이를 위해 "Simple Featured Image" 플러그인을 사용할 것입니다. 한동안 업데이트되지 않았지만 여전히 훌륭하게 작동합니다.
SFI는 설정 메뉴 아래에 설정 페이지를 만들고 거기에서 표시할 분류를 설정합니다. 이것을 잊지 마십시오. 그렇지 않으면 사용 방법에 대해 매우 혼란스러울 것입니다!
설치 및 활성화되면 새 약관 및 기존 약관 양식에 다음과 같은 필드가 표시됩니다.
업로드/추가 버튼을 클릭하면 일반 WordPress 미디어 라이브러리 사용자 인터페이스가 열리고 게시물과 마찬가지로 추천 이미지가 설정됩니다.
이미지를 선택하면 다음과 같이 표시됩니다.
그런 다음 용어 목록 관리 페이지에서 다음과 같은 내용을 볼 수 있습니다.
그리고 우리는 추천 이미지를 가지고 있습니다!
동적 설명
용어의 설명 필드는 더 흥미로운 것을 원하지 않는 한 나쁘지 않은 일반 텍스트입니다. WordPress의 기본값이었던 TinyMCE 편집기를 추가하는 것을 좋아합니다. 이를 위해 "Visual Term Description Editor" 플러그인을 사용할 것입니다.
중요: Yoast SEO 플러그인도 이 기능을 활성화합니다. 이미 Yoast를 사용하고 있다면 필요하지 않습니다. Yoast를 사용하지 않는 경우 이 기능을 위해서만 설치하지 마십시오.
이 플러그인에 대한 설정은 없으며 모든 분류의 모든 용어 설명에 TinyMCE 편집기가 있습니다. 다음과 같이 보입니다.
그런 다음 기본 용어 목록 관리 페이지는 다음과 같습니다.
이제 우리는 주요 이미지와 더 나은 설명을 갖게 되었지만 일부 사용자 정의 필드도 필요합니다. 방법은 다음과 같습니다.
사용자 정의 필드
메타라는 용어는 이제 워드프레스의 기능으로 꽤 오랫동안 존재했지만, 그것들을 사용하는 것은 여전히 약간의 귀찮은 일입니다. 코드로 직접 구축하는 방법에 대한 멋진 기사가 Smashing Magazine에 있습니다.
MetaBox.io 및 CMB2와 같은 대부분의 일반적인 사용자 정의 필드 라이브러리를 사용하여 여전히 코드로 수행할 수 있지만 매끄럽고 표준화된 방식으로 수행할 수 있습니다.
이 게시물에서는 가장 쉬운 방법인 고급 사용자 정의 필드를 선택하겠습니다. WordPress.org에 있는 무료 버전을 사용하고 있습니다. 프로 버전도 분명히 작동합니다.
ACF에 이미 익숙한 경우 용어에 대한 사용자 정의 필드를 얻으려면 위치가 다음과 같아야 합니다.
다음과 같이 표준 "URL" 유형 필드가 있는 Destination Details라는 필드 그룹을 추가했습니다.
그리고 Term 편집기에서는 다음과 같이 보입니다.
더 많은 사용자 정의 필드
내 예를 위해 더 이상 추가하지 않았지만 ACF 또는 다른 사용자 지정 필드 관리자에 대해 잘 알고 있다면 그 위력을 상상할 수 있을 것입니다. 다음은 추가할 수 있는 사용자 정의 필드의 다른 예입니다.
- Google 지도를 렌더링할 수 있도록 좌표 필드
- 클릭하기만 하면 좌표를 얻을 수 있는 실제 지도 필드
- 인구, 도로 품질, 국제 공항 접근성, 중요한 문화적 세부 사항 등과 같은 목적지에 대한 메타 정보
목록은 상상할 수 있는 한 계속됩니다.

이 정보 사용
분류 용어가 정보의 집이 되었으므로 웹사이트에서 해당 정보를 어떻게 볼 수 있습니까?
템플릿 파일 만들기
이를 위해 템플릿 파일을 만들고 편집할 것입니다. 대부분의 최신 테마에는 archive.php 라는 파일이 있으며 이것이 Post 아카이브를 렌더링하는 파일입니다. 일부 테마에는 category.php 라는 파일도 있으며 이 파일은 특정 카테고리의 게시물 아카이브를 표시하는 데 사용됩니다.
위의 모든 필드를 Posts와 연결된 기본 카테고리 분류에 추가했다면 category.php 의 다음 부분에서 이 작업을 수행하고 싶을 것입니다. 존재하지 않는 경우 archive.php 를 category.php 로 복사할 수 있습니다.
나처럼 사용자 정의 분류를 사용하는 경우 category.php 또는 archive.php 를 taxonomy-{taxonomy}.php 에 복사하고 싶을 것입니다. 여기서 {taxonomy}는 분류의 슬러그입니다. 분류 관리 페이지로 이동하여 URL을 보면 슬러그를 찾을 수 있습니다. 목적지 분류법을 만들었지만 내 슬러그는 travel_destination 이고 다음과 같습니다.
그래서 내 템플릿 파일의 이름은 taxonomy-travel_destination.php 입니다.
정보 얻기
나타난 그림
우리가 사용한 플러그인에는 이미지를 가져오는 사용자 지정 기능이 있습니다. 이 PHP 기능을 사용하여 프론트 엔드에 분류 기능 이미지를 표시할 수 있습니다.
wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );
wpsfi_display_image( $termID, $size = 'medium', $class = '', $width = '', $height = '' );
매개변수:
- $termID – (정수) 분류 용어 ID
- $size – (문자열) 이미지 크기
- $class – (문자열) 사용자 정의 클래스 추가
- $width – (정수) 너비(px)
- $height – (정수) 높이(px)
설명
설명이 작동하는 방식은 변경하지 않고 양식에 입력할 수 있는 내용만 변경했습니다. 따라서 기본 WordPress 기능은 설명을 인쇄하도록 작동합니다.
get_the_archive_description()은 설명을 가져와 변수에 넣거나 살균 기능 등으로 처리할 수 있도록 합니다. 그런 다음 해당 변수를 다음과 같이 인쇄합니다.
$description = get_the_archive_description(); print wp_kses_post( $description );
$description = get_the_archive_description(); print wp_kses_post( $description );
또는 단순히 내용을 반영하는 _archive_description() 을 사용할 수 있습니다.
사용자 정의 필드
사용자 정의 필드를 얻는 방법은 생성 방법에 따라 다릅니다. Smashing Magazine 기사의 지침에 따라 자신만의 플러그인을 만들었다면 get_post_meta ( ) 와 똑같이 작동하는 get_term_meta() 라는 WordPress 함수를 사용하고 싶을 것입니다. TermID, 원하는 필드의 키, 단수인지 복수인지 표시하는 플래그를 전달합니다.
ACF, Metabox.io 또는 CMB2와 같은 라이브러리를 사용한 경우 데이터를 가져오기 위해 사용자 정의 함수를 사용하고 싶을 것입니다.
예를 들어 ACF를 사용하여 more_information이라는 필드를 만들었습니다. 해당 필드의 내용을 얻으려면 다음과 같이 사용합니다.
// get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';
// get the current taxonomy term $term = get_queried_object(); // var $term_url = get_field( 'more_information', $term ); // make a link echo '<a href="' . esc_url( $term_url ) . '">More Information</a>';
CMB2와 Metabox.io에는 각각 고유한 방법이 있으므로 해당 문서에서 해당 방법을 조사하고 싶을 것입니다.
요약
이제 상상의 여행 웹사이트에서 하와이와 같은 각 위치에는 상단에 아름다운 배너가 표시되고 목적지에 대한 정보가 표시되며 추가 정보를 얻을 수 있는 링크와 같은 추가 정보가 표시됩니다. 에.
이렇게 하면 아카이브 페이지가 단순한 게시물 목록에서 잘 설계된 웹 페이지처럼 보이는 것으로 바뀝니다.