PHPでデータベースから取得した英単語表を、複数ワードで検索し、赤文字に変換して表示する

PHPでデータベースから英単語とその意味を表示するページを下記のように作成しています。
小学校のWord一覧
中学校のWord一覧
SimpleWikipediaの1500_Word一覧
LongmanDictionaryWord一覧
NGSL_Word一覧を見る
Oxford-3000_Word一覧
Oxford-5000_Word一覧
英単語集(14万語)
ANC30000英単語集

これらのページで、単語の一部(複数でも)を検索し、それに当てはまる部分を赤文字で表示しようとしました。
PHPでもプログラムの仕方がわからないので、AIに尋ねました。

「Perplexity」https://www.perplexity.ai/)、「ChatGPT」(https://chat.openai.com/)を利用しました。

そこで示されたのが、次のような記述でした。

foreach ($keywords as $keyword) {
$text = preg_replace("/$keyword/i", "$0", $text);
}
echo $text;

この中で、$keywordsは検索した複数のwordの配列。$textは検索する文章。
一度に検索して赤文字で示すことができるので大変良かった。
しかし、英単語(あるいは英語の文章)と意味の表で行っているときに、少し不具合を感じることがあった。
「an sp」というような短い文字で複数検索すると、赤い文字を設定するための記述「<span 」などが、2つ目のwordで引っかかってしまうのです。
AIをいろいろ試してみたのですが、うまくいきませんでした。
そこで思いついたのが、文字を赤く変えるのは最後だけにして、それまでは記号で置き換えるというものです。PHPにそれほど詳しくないので、自分の知識の範囲での対処法です。
そこで、上記を、回りくどく

foreach ($word_array as $keys) {
//タグのspanの文字がワードの文字に検索されないように一旦記号に置き換える
$word_s = preg_replace("/$keys/i", "★$0●", $word_s);//$word_sは検索用 文字列の$wordと同じもの
}
//記号を赤文字に設定するタグに置き換える
$kigou = ['★','●'];
$replaces = ["",""];
echo ""; echo str_replace($kigou, $replaces, $word_s); echo "";

と書き換えることによって、「span 」などの文字を置き換えるタグを拾わないようにしたものです。

Jetpackのメール投稿で写真が表示でき始めてホッとする

WordPressのプラグインJetpackをインストールしてからそれまでのKtaientryより反応も早いし、昨日も多いということで期待したのだが、写真が掲載されず、悪戦苦闘。
他のプラグインとの相性が悪いと書いてあると一つずつ外してみた。でもため。
最終的にはほとんど外した。
サーバーのフィルタの設定と聞けばそれも設定し直す。
最後はphpの記述を1行追加。
長い期間かかった。これでダメならJetpackを外そうと思っていたのだが、これでなんとか続けていけそうだ。
やはり写真も掲載できないと面白くない。
スマートフォンで気軽にブログの更新ができるのがいい。