$wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE post_title LIKE '%s%%'", '検索ワード' ) );

これでいけるはずなんだけどなぜかだめ・・・

$wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE post_title LIKE '%%%s%%'", '検索ワード' ) );

部分一致ならいける。

$wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE post_title LIKE '%%%s'", '検索ワード' ) );

そして後方一致も・・・

なぜ前方一致だけ?
あーこんなことしてる場合じゃないのに。
今回は部分一致でも大丈夫だからいっかと思いながらもやっぱりもやもや・・・
と、ずいぶん前の下書き記事に解決方法を発見。

$wpdb->get_results( $wpdb->prepare( "SELECT * FROM $wpdb->posts WHERE post_title LIKE %s", '検索ワード%' ) )

そういえばそうだったわ。
ググっても見当たらない方法なので公開します。