wpdc_publish_post_category 필터를 사용하여 이 작업을 수행할 수 있습니다. 다음과 같은 방식으로 구현할 수 있습니다(테스트되지 않은 예제 코드이지만, 그대로 작동할 수도 있습니다):
function wpdc_change_post_category( $category, $post_id ) {
$wp_category_name = get_the_category( $post_id )[0]->name
$discourse_categories = WPDiscourse\Utilities\Utilities::get_discourse_categories();
$discourse_category = array_search( $wp_category_name, array_column( $discourse_categories, 'name' ));
return $discourse_category['id'];
}
add_filter( 'wpdc_publish_post_category', 'wpdc_change_post_category' );
이렇게 하면 어떤 카테고리를 선택하든, 게시물은 항상 WordPress 게시물의 카테고리 이름과 동일한 이름을 가진 카테고리에 게시됩니다. 단, 이름이 정확히 일치해야만 작동하므로 이를 반드시 확인하십시오.
이것을 공식적으로 기능으로 지원하려면 여러 어려움이 따릅니다. 사용자가 정확한 이름이 일치하는 카테고리 목록을 유지해야 하고, 두 플랫폼 간의 카테고리 모델이 동일하게 유지된다는 가정이 필요하며, WordPress의 분류(taxonomy) 시스템이 본질적으로 변경 가능하다는 사실(즉, 플러그인이 설치된 모든 WordPress 인스턴스에서 동일하지 않을 수 있다는 점)을 처리해야 하기 때문입니다.