워드프레스에서 특정 카테고리만 게시하는 것이 가능한가요?

우리는 Discourse를 WordPress 사이트에 통합했으며, 수동 게시는 정상적으로 작동합니다. 다만, 특정 카테고리에 해당하는 게시물만 Discourse에 자동 게시하도록 설정하고 싶습니다. 태그를 기준으로 제외하는 기능은 확인했지만, 이 사용 사례에는 도움이 되지 않습니다. 카테고리 기준으로 포함할 수 있는 기능이 있는지 궁금합니다. 만약 불가능하다면, 이 기능이 추가될 수 있을까요? 매우 유용하고 중요한 옵션이라고 생각되며, 이미 존재하지 않는다는 사실에 다소 놀랐습니다. 감사합니다.

Hey @vanclute,

이를 위해 wpdc_publish_after_save 필터를 사용할 수 있습니다. Wordpress의 functions.php 파일에 다음 내용을 추가하세요:

function publish_to_discourse( $force_publish, $post_id, $post ) {
  return has_term( TERM, TAXONOMY, $post );
}
add_filter( 'wpdc_publish_after_save', 'publish_to_discourse', 10, 3 );

TERM과 TAXONOMY는 Wordpress에서 "categories"로 사용하는 것으로 교체해야 합니다. TERM은 배열일 수도 있으며, 예를 들어 다음과 같습니다:

array( 'category name 1', 'category name 2')

예시

function publish_to_discourse( $force_publish, $post_id, $post ) {
  return has_term( array( 'news', 'blog' ), 'category', $post );
}
add_filter( 'wpdc_publish_after_save', 'publish_to_discourse', 10, 3 );

감사합니다. WP 파일을 수정하지 않아도 되는 방법을 정말로 선호하지만, 조언해 주셔서 감사합니다.

아무것도 수정할 필요가 없어요 :wink: 원래 해야 하는 방식으로 하면 됩니다…

Code Snippet 또는 유사한 플러그인을 설치해서 그걸 통해 처리하세요 (원하시면 별도의 플러그인으로 설치해도 됩니다. 차이는 없어요). 디스코스에 테마 컴포넌트나 플러그인을 설치하는 것과 완전히 같은 개념입니다.

그리고 테마에 종속적인 수정이 필요한 경우에만 자식 테마의 functions.php 파일을 사용하세요. 이번 경우에는 해당되지 않습니다.