web-dev-qa-db-ja.com

フロントエンドに「Set Featured Image」リンクのある画像アップローダー

ユーザーが投稿に画像をアップロードできるフロントエンドでthickboxを使用してupload-media.phpファイルをロードしています。

質問:upload-media.phpを起動する方法を教えてください特集画像 "バックエンドのリンク".

Featured image

これはthickboxのコードです:

jQuery('.upload_media_button').live('click', function() {
            current_item = jQuery(this);
             container = "."+current_item.attr('rel');
             var request = url.media_upload+'?type=image&TB_iframe=true';
             //alert(request);
             tb_show('Image Manager', request);
             return false;
        });

        window.send_to_editor = function(html) {
             var img_tag = jQuery('img',html);
             //var attachment_id = jQuery('img',html).attr('class').replace(/[^0-9]/g, '');
             current_item.siblings(container).prepend(img_tag).css("height: auto");
             tb_remove();
        }

添付ファイルIDを取得してフォームの送信後に注目の画像を設定できることはわかっていますが、それはプランB;)です。

4
Sisir

"Use as featured Image"リンクを取得するには、URLを指定してpost_idmedia-upload.phpファイルに渡す必要があります。これにより、リクエストは次のように変更されます。

var post_id = 234 // retrive the post id via php
var request = url.media_upload+'?post_id='+post_id+'type=image&TB_iframe=true';

必ずURLの最初にpost_idを追加してください。私がURLの最後にpost_idを追加したとき、私にとってはうまくいきませんでした。

更新:ajaxレスポンスにはJavaScriptの処理が必要になります。まだその部分を理解するために取り組んでいます。私はそれを理解することができれば私は私の答えを更新します。

3
Sisir