我使用自定义帖子类型在我的wordpress网站上创建用户。我正在向用户集成预先搜索列表。在这种情况下,我需要按年龄范围搜索用户,例如21 - 30
31 - 40
,但我只有DB中用户的出生日期。正如您在wordpress帖子中所知,它在meta_key
表格中存储为meta_value
和wp_postmeta
。
我正在将自己的自定义查询编写到搜索部分:
$queryStr = "SELECT DISTINCT ID, wposts.* FROM $wpdb->posts wposts, $wpdb->postmeta wpostmeta WHERE wposts.ID = wpostmeta.post_id";
//if nationality is not empty check it in the DB
if($sltNationality != '' && $sltNationality != 'Any') :
$queryStr .= " AND wpostmeta.meta_key = 'nationality' AND wpostmeta.meta_value = '$sltNationality'";
endif;
//if age range is not empty check it
if($age != '' && $age != 'Any') :
$queryStr .= " check age between condition ";
endif;
//execute
$pageposts = $wpdb->get_results($queryStr, OBJECT);
现在我被困在年龄段。从互联网上搜索,很高兴我从stackoverflow找到了一个代码。 get age from DOB
但不知道如何在我的自定义查询中使用它。请帮帮我们。感谢
答案 0 :(得分:1)
您应该让Wordpress为您构建该元查询 - 您可以使用get_posts来实现此目标。
这是一个建议:
post_type
您应检查CREATE OR REPLACE PROCEDURE PROCEDURE1
IS
BEGIN
DBMS_OUTPUT.PUT_LINE('Hello World!');
END;
名称是否正常,以及选择值是否始终与" YY - YY"格式 - 如果不是,你将不得不做一些特殊的条件。