PHP 初心者が WordPress の プラグイン 作成 ! part64 ( リンク置き換え部分のデバッグ )

この記事では PHP 初心者 が WordPress プラグイン を 作成 します。 part64 ではプココナラヘルパに実装したリンク置き換え処理をデバッグします。

前回、ココナラヘルパのリンク置き換え処理を確認しました。
残念ながら失敗してしまいました😑

PHP 初心者が WordPress の プラグイン 作成 ! part63 ( ココナラヘルパのリンク置き換え確認 )

今回はデバッグ実行を行い、本文の加工部分を調査します。

調査

該当の箇所はclass.coconara-helper.phpのpostメソッドになります。
ここにブレークポイントを置いて動作の確認を行います。

さてどんな結果になるのか・・・。

 

衝撃の事実

なんとWordPressのコメントや要素まで渡しているではありませんか!
・・・当然ですよね。

リンクの置き換えは正しく行われていました。

 

 

加工された本文詳細

bodyおよびbodyTextには以下の値が入っていました。

body

"<div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- wp:paragraph --></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><p>実装が正しく処理されるか確認を行います。<br>GoogleのURLです。</p></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- /wp:paragraph --></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- wp:paragraph --></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><p><a href="ttps://www.google.co.jp">ttps://www.google.co.jp</a></p></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- /wp:paragraph --></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- wp:paragraph --></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><p>どうでしょうか?</p></div><div data-v-22617325=\"\" class=\"c-blogBody_text\"><!-- /wp:paragraph --></div>"

bodyText

"<!-- wp:paragraph -->\n<p>実装が正しく処理されるか確認を行います。<br>GoogleのURLです。</p>\n<!-- /wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p><a href="ttps://www.google.co.jp">ttps://www.google.co.jp</a></p>\n<!-- /wp:paragraph -->\n\n<!-- wp:paragraph -->\n<p>どうでしょうか?</p>\n<!-- /wp:paragraph -->\n"

なんとなく見えてきました。

  • 本文中のダブルコーテーションをエスケープしていない
  • 不要なタグがくっついている。

というところでしょうか。

まとめ

リンクの置き換え処理を調査しました。

事前にWordPressからプラグインに渡される本文をちゃんと確認しておくべきでした😣

次回は今回の問題点を解消し再度投稿してみたいと思います。

今日はここまで!