nayuta3510さん
投稿のテキストエディターから下記のようにしたいといことでしょうか?
<img src="<?php echo get_stylesheet_directory_uri() ?>/images/ファイル名.png" alt="" title="" width="" height="" />
そうそう!そうです。
現在ローカルのxamppでwordpressを編集していて、メディアにアップロードしている画像等のパスがローカル用のアドレスになっているからサーバーにあげるとき修正するのがかなり大変になるのでテーマフォルダ内に画像を置いて相対パスで作りたいと思いました。
あと、function replaceImagePath($arg) {
$content = str_replace(‘”img/’, ‘”‘
. get_bloginfo(‘template_directory’) . ‘/img/’, $arg);
return $content;
}
add_action(‘the_content’, ‘replaceImagePath’);
をfunction.phpに記載しても効果がなかったんですよね。imgをimagesに変更したりとかはやってみたんですが…。
phpの関数を入れるタイミングで真っ白になるからphpが悪さをしていると思うのですが…。
通常、投稿のテキストエディターではPHP関数は使用できないので、「Exec-PHP」などのプラグインを入れれば使用できるようです。
もう一つの方法としては、ローカル環境からサーバーに移した際、ローカル環境のメディアアップロード先のフォルダ内に入っている画像データを、サーバーのメディアアップロード先のフォルダ内にアップロードする方法が考えられますが。
おそらく同環境下でWordpressを構築していれば、メディアアップロードの参照先も同じだと思いますので。
Exec-PHPは確かに便利ですがセキュリティ的にあまり使うのは推奨されないプラグインです。特定の関数を本文内で使いたいのであればショートコード化するのが定番です。
ご回答ありがとうございます!
Exec-PHPの使い方を検索してみたところ、「エディタ内でphpを実行できるようにしてしまう=セキュリティホールを自ら大きく広げている」との記述があり、 これを使うことはおすすめしません。との注意書きがあったのでプラグインは断念しました。
かわりに同記事内にショートコードを使ったやりかたがありまして、こちらを実装してみたところ、無事相対パスでテーマフォルダ内の画像を表示させることができました。
また、もう一つの方法もサーバーに上げた時の対処法の一つとして参考にさせていただきます!
教えた頂いたことを実践してはいませんが、活路を開くきっかけをくださったことに大変感謝しております。
こんなに早くご回答いただいたこと嬉しく思います!
本当にありがとうございました!
Hinaloe様 >
ご指摘ありがとうございます。
プラグインは削除してショートコードを実装し、成功しましたので大丈夫です。
Hinaloeさん
たしかに、ショートコード使った方が良いですね(汗)参考になりました。
nayuta3510さん
ショートコードで無事に解決したようでよかったです。お力になれずすみません。
sakuravps様 >
いえいえ、おかげで参考記事を見つけることができましたので。
本当に、本当にありがとうございました!