スタッフのきまぐれブログ

スタッフブログ

「FE Advanced Search」でカスタム投稿のカテゴリ検索結果にタイトルが表示されなかったので

とっても使える「FE Advanced Search」でカスタム投稿のカテゴリ検索結果にカテゴリタイトルが表示されなかった。。

バージョンアップによるものか、他のプラグインによるものか、はたまたwordpressバージョンとの互換性なのか原因不明。

個人的メモ

search-controller.php 604行目 下記部分を

    if ( $get_ids ) {
        $cnt_ids = count( $get_ids );
        
        for ( $i_ids = 0; $i_ids < $cnt_ids; $i_ids++ ) {
            if ( 0 == $i_ids ) {
                $ret .= " ( ";
            } else {
                $ret .= " OR ";
            }
            $ret .= $wpdb->posts . ".ID = " . esc_sql( $get_ids[$i_ids]->object_id );
    
            if ( ( $i_ids + 1 ) == $cnt_ids )
                $ret .= " ) ";




        }
        
    } else {
        $ret = " ( " . $wpdb->posts . ".ID = -9999 ) ";
    }
        




    //  検索条件を収納
    for( $i_ck =0 , $cnt_ck = count( $c_keys ); $i_ck < $cnt_ck; $i_ck++ ){
    // 検索条件を収納
    $term_data = get_term_by( 'id', $data['cat'], 'category' );
    $cat_names = $term_data->name;
    insert_result( $cat_names );
    
    return $ret;
}

とりあえず下記に変更したら表示される。とりあえず様子見

    $get_ids = $wpdb->get_results( $sql );

    $cat_names = array();

    if( $get_ids ){
        
        for( $i_ids = 0, $cnt_ids =count( $get_ids ); $i_ids < $cnt_ids; $i_ids++){
            if( $i_ids == 0 )
                $ret .= "( ";
            else
                $ret .=" OR ";
    
            $ret .= "id = " . $get_ids[ $i_ids ]->object_id;
    
            if( ($i_ids +1) ==$cnt_ids)
                $ret .=" )";
    
            //  検索条件としてテンプレートに表示させるためにカテゴリ名を取得
            $cat_names[] = $get_ids[$i_ids]->name;
        }
        
    } else {
        $ret = "( id = -9999 )";
    }

    //  重複を消去
    $cat_names = array_unique( $cat_names );
    //  キー取得
    $c_keys = array_keys( $cat_names );

    //  検索条件を収納
    for( $i_ck =0 , $cnt_ck = count( $c_keys ); $i_ck < $cnt_ck; $i_ck++ ){
        insert_result( $cat_names[ $c_keys[ $i_ck ] ] );
    }

    return $ret;
}

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

滋賀県でホームページ制作ならウェブフォーアート ページトップへ
MENU