使用wp_set_post_terms执行问题

时间:2014-07-14 14:50:16

标签: php wordpress

我想为我的帖子分类设置值。

这是我的功能:

function test( $alan )
{
    global $post;    
    $ozel = get_post_meta( $post->ID, "".$alan."", true );    
    $comp = floatval( get_post_meta( $post->ID, "".$alan."", true ));    

    if ( (float) $comp > 7.0 )
    {    
        return wp_set_post_terms( $post->ID,"MY TITLE DOCUMENTATION", my_taxonomy);
    }

    return false;
}    

此函数将检查自定义字段(文本)的浮动,并在my_taxonomy中插入标记,但我不知道如何执行一次。

ps:代码在single.php文件

1 个答案:

答案 0 :(得分:0)

您可以尝试挂钩wp_insert_post操作,利用$update查看是否正在创建或更新帖子。例如:

function test( $post_ID, $post, $update ) {
    if ( ! $update ) {
        global $post;    
        $ozel = get_post_meta( $post->ID, "".$alan."", true );    
        $comp = floatval( get_post_meta( $post->ID, "".$alan."", true ));    

        if ( (float) $comp > 7.0 )  
            return wp_set_post_terms( $post->ID,"MY TITLE DOCUMENTATION", my_taxonomy);

        return false;
    } else {
        // Do nothing because this is a post update.
    }
}
add_action( 'wp_insert_post', 'test', 10, 3 );

注意:我不确定您是如何获得$alan变量的。您必须将其添加到我上面的代码中才能使用。