WordPress wp_insert_post가 태그를 삽입하지 않음
다음 코드로 투고를 삽입하려고 합니다.
$my_post = array(
'post_type' => "essays",
'post_title' => 'TEST 3',
//'post_content' => $content,
'post_status' => 'draft',
'post_author' => 1,
//'post_category' => $cat,
'tags_input' => 'TQM,tag',
);
$post_id = wp_insert_post($my_post);
태그를 제외한 모든 것이 정상 작동하며 태그는 삽입되지 않습니다.감 잡히는 게 없어요?
를 사용합니다.wp_set_object_terms()
기능:
http://codex.wordpress.org/Function_Reference/wp_set_object_terms
wp_set_object_terms($post_id , $arrayoftags, $name_of_tag_taxonomy, false);
행운을 빌어요
투고 타입은essays
. 커스텀 투고 타입은 기본적으로 태그를 지원하지 않습니다.추가하셔야 합니다.tags
분류학이 필요합니다.
http://codex.wordpress.org/Taxonomies
http://codex.wordpress.org/Function_Reference/register_taxonomy
태그 및 카테고리와 함께 게시물을 삽입하려면 다음과 같이 하십시오.
$pid=wp_insert_post($new_post);
wp_set_post_terms( $pid, $arrayoftags);
wp_set_post_categories( $pid, $arrayofcategories );
$pid는 기본적으로 태그나 카테고리를 사용하지 않고 투고를 먼저 삽입하고, 이 함수는 투고의 ID를 반환합니다.이 ID를 사용하여 태그와 카테고리를 각각의 함수와 함께 삽입할 수 있습니다.wp_insert_post의 소스 코드를 보면 커스텀 투고 타입에 대해 이 함수가 다른 방법으로 동작하는 것을 알 수 있습니다.내장된 기능을 사용하여 더 나은 해결책이 있기 때문에 코드를 해킹하고 싶지 않아 자세히 알아보지 않았습니다.
안녕하세요, 이 답을 어디서 찾았는데 도움이 될 것 같아요.
//first get the term (I used slug, but you can aslo use 'name'), see: http://codex.wordpress.org/Function_Reference/get_term_by
$term = get_term_by( 'slug', 'your custom term slug', 'your custom taxonomy' );
//then get the term_id
$term_id = $term->term_id;
//Use 'tax_input' instead of 'post_category' and provide the term_id:
'tax_input' => array( 'your taxonomy' => $term_id )
도움이 됐으면 좋겠다.
태그와 투고 카테고리는 1개라도 배열로 입력해야 합니다.그렇게'tags_input' => 'TQM,tag'
그래야 한다'tags_input' => array('TQM,tag')
언급URL : https://stackoverflow.com/questions/10434686/wordpress-wp-insert-post-not-inserting-tags
'programing' 카테고리의 다른 글
특정 페이지/게시용 Wordpress 플러그인 비활성화 (0) | 2023.02.07 |
---|---|
WP_Post 객체에서 제목을 얻는 방법 (0) | 2023.02.07 |
WordPress를 사용한 와일드카드 도메인 리디렉션 (0) | 2023.02.07 |
Wordpress 웹 사이트 전체를 내보내려면 어떻게 해야 합니까? (0) | 2023.02.07 |
WP_Query Woocommerce 제품은 여러 카테고리에 속하며 tax_query만 해당됩니다. (0) | 2023.02.07 |