কীভাবে ক্রিয়া / হুক ব্যবহার করে এই সীমাবদ্ধতাটি বাইপাস করবেন তার একটি উদাহরণ এখানে রয়েছে:
function new_attachment( $att_id ){
// the post this was sideloaded into is the attachments parent!
// fetch the attachment post
$att = get_post( $att_id );
// grab it's parent
$post_id = $att->post_parent;
// set the featured post
set_post_thumbnail( $post_id, $att_id );
}
// add the function above to catch the attachments creation
add_action('add_attachment','new_attachment');
// load the attachment from the URL
media_sideload_image($image_url, $post_id, $post_id);
// we have the image now, and the function above will have fired too setting the thumbnail ID in the process, so lets remove the hook so we don't cause any more trouble
remove_action('add_attachment','new_attachment');
ধারণাটি হ'ল কখন চালানো media_sideload_image
হয় এটি:
- ইমেজ ডাউনলোড
- এটি সংযুক্তি হিসাবে যুক্ত করে (ধরণের একটি পোস্ট
attachment
)
- তারপরে সেই সংযুক্তিটি পোস্টের সাথে সংযুক্ত করে যার আইডি আপনি সরবরাহ করেছেন ($ post_id)
আপনার সমস্যাটি হ'ল এটি সদ্য নির্মিত সংযুক্তি পোস্ট আইডি সরবরাহ করে না।
তবে , যখন একটি সংযুক্তি তৈরি করা হয়, তখন একটি ক্রিয়া তার আইডি সহ বহিস্কার হয়। আমরা সংযুক্তি তৈরি করার আগে এটিতে ঝুঁকতে পারি, এবং আমাদের দেওয়া পোস্ট আইডি সহ বৈশিষ্ট্যযুক্ত থাম্বনেইল সংরক্ষণ করতে পারি, তারপরে আনহুক করা উচিত।