php 此函数检查是否根据metakey和metavalue在wp数据库中插入了一个帖子,如果它存在则返回其postid

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php 此函数检查是否根据metakey和metavalue在wp数据库中插入了一个帖子,如果它存在则返回其postid相关的知识,希望对你有一定的参考价值。

/*
 * This function checks if a post is inserted in the wp database based on a metakey and a metavalue, and return its postid if it is present
 * $is_meta_value_unique contains true or false. if true is passed then one postid is returned else array of postids is returned
 */
check_if_a_post_is_inserted($meta_key_name, $meta_key_value, $posttype, $is_meta_value_unique);

function check_if_a_post_is_inserted($meta_key_name, $meta_key_value, $posttype, $is_meta_value_unique) {

    if ($is_meta_value_unique) {
        $posts_per_page = 1;
    } else {
        $posts_per_page = -1;
    }

    $result = false;
    $args = array(
        'posts_per_page' => $posts_per_page,
        'meta_key' => $meta_key_name,
        'meta_value' => $meta_key_value,
        'post_type' => $posttype,
        'post_status' => 'publish',
    );
    $posts_array = get_posts($args);

    if (is_array($posts_array) && count($posts_array) > 0) {
        if ($is_meta_value_unique) {
            $result = $posts_array;
            $result = $result[0]->ID;
        } else {
            $result = array();
            foreach ($posts_array as $key1 => $value1) {
                array_push($result, $value1->ID);
            }
        }
    } else {
        $result = false;
    }
    return $result;
}

以上是关于php 此函数检查是否根据metakey和metavalue在wp数据库中插入了一个帖子,如果它存在则返回其postid的主要内容,如果未能解决你的问题,请参考以下文章

php Wordpress内置了条件函数,如is_page()和is_front(),但有时它还不够。此功能检查是否铜

php 基于比较运算符从wordpress db中删除metakey及其值

PHP疑难杂症

SQL for WP 删除具有多个元键和评论的用户

PHP:在构造函数中调用用户定义的函数?

检查自定义字段是否存在