外部画像をWordPessのメディアライブラリに登録するための、現時点での、最良の方法についての覚書。
WordPressのメディアライブラリからアップロードして投稿記事に画像を張ると、データベースと関連付けがおこなわれてメディアライブラリのメディア一覧に表示されるようになる。
逆に言えば、別のブログからインポートした記事で、画像はFTPでアップロードして、リンクだけを変更した場合には、メディアライブラリに画像は表示されない。
特に支障は無いが、アイキャッチ画像が登録できなくて困る。
ということをAdd From Serverの記事で書いた。
Add From Serverでは、データベースに登録はされるが、未使用の画像としてで、記事との関連付けはされないようだった。
何だか、メディアライブラリがらみでのプラグイン探しの果て無き旅がはじまっちゃった感があるが、今回は、Media Toolsである。
Import External Imagesという機能がある。
直訳すると「外部画像の読み込み」ということで、よさげな感じがする。
Import External Images
This tool goes through your chosen posts or pages and imports external images into the media library The src attribute of any found images are checked against your set uploads dir and will not insert if they match This also changes the img src attribute to reference the new location in your uploads folder You can also choose to make the first image the featured image
つまり、私の訳が間違ってなければ、ライブラリ外へのリンクを記事から探し、リンクされている画像をライブラリ内にコピーして、リンクも直して、メディアライブラリのデータベースにも登録してくれるということのようだ。
既に規定のフォルダにある画像に関しては何も行わないようなので、私のように場所だけは規定のフォルダに入っている場合には、一度ダミーのフォルダへ強制移動して、記事中のリンクも書き直さなければならない。
それにはもうひとつSearch Regexというプラグインが登場するが、これについてはすでに書いているのでこちらを参照していただきたい。
仮に2008年の記事について実行してみることにする。
この記事の画像がすべて
hogehoge.com/wp/wp-content/uploads/2008/
以下に置かれているものとし、当然そこへリンクも張られていると仮定して話を進める。
また、分かりやすく下に示したようなタグがどう変わるのかを例として書いてみる。
<a href=”http://hogehoge.com/wp/wp-content/uploads/2008/03/testimage.jpg”><img src=”http://hogehoge.com/wp/wp-content/uploads/2008/03/testimage.jpg” class=”thumb” alt=”testimage.jpg” title=”testimage.jpg” width=”406″ height=”425″ /></a>
1./2008/を適当な場所へ丸ごとコピーする。ここでは、
hogehoge.com/2008/
となるようにコピーした。
2.Search Regexで記事中の /wp/wp-content/uploads/2008/ をすべて /2008/ に置換する。
一応、もとの記事がちゃんと表示されるか確認しておく。
これによって記事中のリンクが自動的に以下のように書き換えられる。
<a href=”http://hogehoge.com/2008/03/testimage.jpg”><img src=”http://hogehoge.com/2008/03/testimage.jpg” class=”thumb” alt=”testimage.jpg” title=”testimage.jpg” width=”406″ height=”425″ /></a>
3.Media ToolsでImport External Imagesを実行する。
すると、実行前は何も表示されなかったメディアライブラリに、
ちゃんと、画像が表示されるようになり、
先ほど置換したリンクもちゃんと本来の位置に修正されている。
<a href=”http://hogehoge.com/2008/03/testimage.jpg”><img src=”http://hogehoge.com/wp/wp-content/uploads/2008/03/testimage.jpg” class=”thumb” alt=”testimage.jpg” title=”testimage.jpg” width=”406″ height=”425″ /></a>
4.注意する点は、srcは書き換えてくれるが、hrefは一切ノータッチなので、Search Regexでの操作のあとMedia Toolsを実行したら、もう一度Search Regexを実行してhrefの記述として残っているアドレスを書き戻さなければならない。
Search Regexで記事中の hogehoge.com/2008/ をすべて hogehoge.com/wp/wp-content/uploads/2008/ に置換する。
<a href=”http://hogehoge.com/wp/wp-content/uploads/2008/03/testimage.jpg”><img src=”http://hogehoge.com/wp/wp-content/uploads/2008/03/testimage.jpg” class=”thumb” alt=”testimage.jpg” title=”testimage.jpg” width=”406″ height=”425″ /></a>
実は上の画像に灰色の四角になって表示されているものが、目下の悩みの種だ。
アイキャッチ画像を自動で作成してくれるAuto Post Thumbnailというプラグインを実行した結果こういうことになったと思われる。
このプラグイン、メディアライブラリに登録されていない画像でアイキャッチ画像を作ろうとして、こういうことになるようだ。
ここで書いた作業とAuto Post Thumbnailの実行が手順として逆だったと思う。