wp-members検索結果数を得ると検索結果が不具合
-
wp-members検索結果のヒット数、というスレでアドバイス頂き、検索結果のヒット数は解決しました。
しかし、そのコードでは検索結果数が常に100/100になってしまします。検索条件を
<?php
$s = $_GET[‘s’];
$shizuoka= $_GET[‘shizuoka’];
$yamanashi= $_GET[‘yamanashi’];
if($shizuoka){
foreach($shizuoka as $val){
$metaquerysp[] = array(
‘key’=>’shizuoka’,
‘value’=> $val,
);
}
}
if($yamanashi){
foreach($yamanashi as $val){
$metaquerysp[] = array(
‘key’=>’yamanashi’,
‘value’=> $val,
);
}
}$metaquerysp[‘relation’] = ‘OR’;
?>
のように設定し
<?phpquery_posts( array(
‘tax_query’ => $taxquerysp,
‘meta_query’ => $metaquerysp,
‘s’ => $s,
‘posts_per_page’ => 12,
‘paged’ => $paged,
‘order’ => ‘ASC’,
)
);
?>
<?php $test1 = post_custom(‘members’); ?><!–もしメンバーがチェックされていたら–>
<?php if ($test1 == “member”): ?><!–もしメンバーがチェックされていたら–>
<?php if (is_user_logged_in()) : ?><!–ログインしている人だけ–>メンバー用ループ
<?php endif; ?><!–ログインしている人だけEND–>
<?php endif; ?> <!–もしメンバーがチェックされていたらEND–><?php if ( ! is_user_logged_in()) : ?><!–ログインしていない人はこっち(memberのも見れる)–>
一般用ループ
<?php endif; ?> <!–ログインしていない人はこっちEND–>
<?php endwhile; ?>
<?php else : ?>
物件が見つかりませんでした。<?php endif; ?>
<?php wp_reset_query(); ?>これだと検索結果数やページャーがカウントする数が100%になり、メンバー用の数がでません。それで
<?php
$metaquerysp = array();
if ( is_user_logged_in() ) {
$metaquerysp[] = array( ‘key’ => ‘members’, ‘value’ => ‘member’ );
} else {
$metaquerysp[] = array( ‘key’ => ‘members’, ‘compare’ => ‘NOT EXISTS’ );
}
query_posts( array(
’tax_query’ => $taxquerysp,
‘meta_query’ => $metaquerysp,
‘s’ => $s,
’posts_per_page’ => 12,
‘paged’ => $paged,
‘order’ => ‘ASC’,
)
);
?>を教えていただきました
これでメンバーメージと一般ページのヒット数が得られるのでヒット件数とページャーは正常です。
しかし、検索結果が、どんな条件で検索するかに関わらず、全部(100登録してたら100件)が出てきてしまいますおそらく
‘meta_query’ => $metaquerysp,
を設定したために
$metaquerysp[‘relation’] = ‘OR’;
がリセットされてしまったのではないかと思っています。よろしくお願いします。
ヘルプの必要なページ: [リンクを見るにはログイン]
- トピック「wp-members検索結果数を得ると検索結果が不具合」には新たに返信することはできません。