解決したいこと
WordPress5.8.1のテーマで、結合代入演算子で代入した順に並んでほしい。
※PHP7.4(CGI版)です。
発生している問題・エラー
テーマ内で、$retHTMLという変数を宣言して、ここにHTMLタグや the_title() ・ the_post_thumbnail() の出力結果を「.=」で追加して、ページ内に出力しています。
ところが、出力結果のHTMLソースを見ると、 the_title() ・ the_post_thumbnail() の出力結果が、先に代入したはずのHTMLタグの前に表示されます。
例)
または、問題・エラーが起きている画像をここにドラッグアンドドロップ
該当するソースコード
$retHTML.='<li>';
$retHTML.=the_title( '<h4><a href="' . esc_url( get_permalink() ) . '">', '</a></h4>' );
$retHTML.='<div>';
$retHTML.=the_post_thumbnail('medium');
$retHTML.='</div></li>';
自分で試したこと
変数 $retHTML を配列に替えて、最後に implode で結合してみたのですが、同じく the_title() ・ the_post_thumbnail() の出力結果が
タグより前に表示されてしまいました。
the_title() ・ the_post_thumbnail() を通常のHTMLタグに書き換えてみたら、ちゃんと タグの後ろに出力されたので、 the_title() ・ the_post_thumbnail() が何かしているのは間違いなさそうです。