私が取り組んでいるカスタム プラグインで wordpress のメディア アップロード ポップアップを使用しようとしています。
これまでのところすべてがうまくいき、画像をアップロードしてフィールドに挿入することができましたが、アップロードされた pdf へのリンクを必要とする別のフィールドがあります。
tb_show('', 'media-upload.php?type=image&TB_iframe=true;height=200');
window.send_to_editor = function(html) {
console.log(html);
console.log(jQuery('a', html));
console.log(jQuery('a', html).attr('href'));
console.log(jQuery('img', html));
console.log(jQuery('img', html).attr('src'));
imgurl = jQuery('a', html).attr('href');
current_upload.prev().val(imgurl);
tb_remove();
}
画像の場合、これは私の出力になります。画像ソースを選択できるので、これは正しいです
<a href="http://to.local/wp-content/uploads/2012/07/Screen-Shot-2012-06-20-at-12.15.52-PM.png"><img src="http://to.local/wp-content/uploads/2012/07/Screen-Shot-2012-06-20-at-12.15.52-PM-300x221.png" alt="" title="Screen Shot 2012-06-20 at 12.15.52 PM" width="300" height="221" class="alignnone size-medium wp-image-49" /></a> to.js:54
[]
undefined
[
<img src="http://to.local/wp-content/uploads/2012/07/Screen-Shot-2012-06-20-at-12.15.52-PM-300x221.png" alt title="Screen Shot 2012-06-20 at 12.15.52 PM" width="300" height="221" class="alignnone size-medium wp-image-49">
]
http://to.local/wp-content/uploads/2012/07/Screen-Shot-2012-06-20-at-12.15.52-PM-300x221.png
しかし、PDF を選択すると、次のようになります。
<a href='http://to.local/wp-content/uploads/2012/07/01-Mobile-Characteristics-and-Interaction-Design-Principles-Slides2.pdf'>01 Mobile Characteristics and Interaction Design Principles (Slides)</a> to.js:54
[]
undefined
[]
undefined
そのため、jQuery('img', html) が正常に動作し、jQuery('a', html) が正常に動作しない理由がわかりません。どちらの場合も、返された html にリンクがあります。