programing

WordPress wp_insert_post가 태그를 삽입하지 않음

megabox 2023. 2. 7. 19:42
반응형

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

반응형