서로 다른 custom_post_types에 서로 다른 카테고리를 설정하려고 하고 있습니다. 아래 코드는 Wordpress 관리자 화면에서 올바른 카테고리를 선택합니다. 하지만 Discourse에 게시할 때 카테고리가 설정되지 않고(기본값인 '분류되지 않음’으로 설정됩니다)…
아마도 제가 뻔한 것을 놓치고 있는 것일까요?
// WP Discourse set CPT forum categories for CPTS
add_filter( 'wp_discourse_publish_categories', 'radhr_filter_categories_policies', 10, 2 );
function radhr_filter_categories( $categories, $post ) {
if ( 'policy' === get_post_type( $post ) ) {
$output = [];
foreach ( $categories as $category ) {
if ( 'Policies' === $category['name']) {
$output[] = $category;
}
}
return $output;
}
elseif ( 'guide' === get_post_type( $post ) ) {
$output = [];
foreach ( $categories as $category ) {
if ( 'Guides' === $category['name']) {
$output[] = $category;
}
}
return $output;
}
elseif ( 'post' === get_post_type( $post ) ) {
$output = [];
foreach ( $categories as $category ) {
if ( 'Blogs' === $category['name']) {
$output[] = $category;
}
}
return $output;
}
return $categories;
}