0

我正在创建一个自定义插件来搜索提供 4 个元字段参数的自定义帖子类型。我正在使用 wp_Query() 来获取搜索结果。我的查询字符串是。

$args = array(
        'update_post_meta_cache' => false,
        'cache_results' => false,
        'post_type' => 'caravans',
        'meta_query' => array(
            'relation' => 'OR',
            array(
                'key' => 'caravan_used_new',
                'value' => $used,
                'compare'=>'like',
            ),
            array(
                'key' => 'caravan_or_motorhome',
                'value' => $type,
                'compare'=>'like',
            ),
            array(
                'key' => 'caravan_berth',
                'value' => $bearth,
                'compare'=>'like',
            ),
            array(
                'key' => 'caravan_make',
                'value' => $make,
                'compare'=>'like',
            ),
        )
    );
    if(!empty($key)){
        $wp_query = new WP_Query("s=$key", $args);
    }else{
        $wp_query = new WP_Query($args);
    }

现在,如果当我将其设置为 4 时只放置三个 meta_Query 参数,它会运行良好,并且我在 500 内部服务器错误中看到的所有内容。我做错了什么还是 meta_query 有其自身的限制?

4

1 回答 1

1

通过将整个设置复制到本地服务器,我找到了解决问题的方法。一切工作正常查询正常执行。这个错误是为 PHP 执行分配的内存,我通过比较本地和实时服务器来了解。因此,为此我在文件的标题部分声明了两行。

set_time_limit(0);
ini_set("memory_limit", "1024M");
于 2013-07-03T13:01:20.150 回答