Wordpress' te 2 adet Custom Type var. Arama formunda All, Custom1, Custom2 şeklinde Select input var. Bunlardan biri seçilince yalnızca o custom type ları listeletmek istiyorum.
Arama Fonksiyonu şu şekilde:
function include_cpt_search( $query ) {
if ( $query->is_search ) {
$query->set( 'post_type', array('custom1','custom2') );
}
return $query;
}Ben bu fonksiyona arama formundaki Select inputunun verisini POST edip if ile kontrol ettirip listetebilir miyim? Böyle bir şey denedim fakat o fonksiyona POST ettiremedim galiba çalışmadı. Teşekkürler
--R10.NET; Flood Engellendi -->-> Yeni yazılan mesaj 18:33:28 -->-> Daha önceki mesaj 17:40:06 --
Wordpress' te 2 adet Custom Type var. Arama formunda All, Custom1, Custom2 şeklinde Select input var. Bunlardan biri seçilince yalnızca o custom type ları listeletmek istiyorum.
Arama Fonksiyonu şu şekilde:
function include_cpt_search( $query ) {
if ( $query->is_search ) {
$query->set( 'post_type', array('custom1','custom2') );
}
return $query;
}Ben bu fonksiyona arama formundaki Select inputunun verisini POST edip if ile kontrol ettirip listetebilir miyim? Böyle bir şey denedim fakat o fonksiyona POST ettiremedim galiba çalışmadı. Teşekkürler
function include_cpt_search( $query ) {
$var = $_GET['filter'];
if ( $query->is_search ) {
if($var='custom1'){
$query->set( 'post_type', array('custom1') ); echo $var;}
else if($var='custom2'){
$query->set( 'post_type', array('custom2') ); echo $var;}
else if($var='all'){
$query->set( 'post_type', array('custom1','custom2') ); echo $var;}
return $query;
}
}Şöyle bir şey yaptım fakat yalnızca ilk if e giriyor diğerlerine girmiyor, Bunu test etmek için select option' u ekrana yazdırdım. custom1 ve custom2 nin yerini değiştirdim. Hangisi ilk ise ona giriyor.
Çözüm:
Switch Case kullanarak yapınca oldu
function include_cpt_search( $query ) {
$var = $_GET['filter'];
if ( $query->is_search ) {
switch ($var) {
case 'custom1':
$query->set( 'post_type', array('custom1') ); echo $var;
break;
case 'custom2':
$query->set( 'post_type', array('custom2') ); echo $var;
break;
case 'all':
$query->set( 'post_type', array('custom1','custom2') ); echo $var;
break;
}
return $query;
}
}