2010-06-22 26 views
5

में wp_get_attachment_image() का उपयोग करने का सही तरीका मैं wp_get_attachment_image() का उपयोग करने का सही तरीका ढूंढ रहा हूं।वर्डप्रेस

निम्नलिखित कोड:

<?php 
    $args = array(
     'type' => 'attachment', 
     'category_name' => 'portfolio' 
     ); 
    $attachments = get_posts($args); 
    print_r($attachments); 
?> 

निम्नलिखित परिणाम उत्पन्न करता है:

Array 
(
    [0] => stdClass Object 
     (
      [ID] => 54 
      [post_author] => 1 
      [post_date] => 2010-06-22 00:32:46 
      [post_date_gmt] => 2010-06-22 00:32:46 
      [post_content] => <a href="http://localhost/wordpress/wp-content/uploads/2010/06/Capture.jpg"><img class="alignnone size-medium wp-image-55" title="Capture" src="http://localhost/wordpress/wp-content/uploads/2010/06/Capture-300x114.jpg" alt="" width="300" height="114" /></a> 
      [post_title] => Our Own Site 
      [post_excerpt] => 
      [post_status] => publish 
      [comment_status] => open 
      [ping_status] => open 
      [post_password] => 
      [post_name] => our-own-site 
      [to_ping] => 
      [pinged] => 
      [post_modified] => 2010-06-22 00:40:22 
      [post_modified_gmt] => 2010-06-22 00:40:22 
      [post_content_filtered] => 
      [post_parent] => 0 
      [guid] => http://localhost/wordpress/?p=54 
      [menu_order] => 0 
      [post_type] => post 
      [post_mime_type] => 
      [comment_count] => 0 
      [filter] => raw 
     ) 
) 

निम्नलिखित, हालांकि, कुछ भी वापस नहीं करता है।

<?php 
    echo wp_get_attachment_image(54, array('300', '300')); 
?> 

मैं यहां क्या गलत कर रहा हूं?

उत्तर

0

फ़ंक्शन wp_get_attachment_image केवल एक छवि है जो वर्डप्रेस पर अपलोड की गई थी, यह पोस्ट की सामग्री में कोई छवि आउटपुट नहीं करती है।

आपको अपनी उदाहरण छवि के लिए पोस्ट की सामग्री आउटपुट करना होगा।

तरह: echo $attachments['post_content'];

+0

तो वर्डप्रेस में एक विशिष्ट आकार पर अपलोड की गई छवि प्राप्त करने के लिए आंतरिक कार्य नहीं है? –

+0

नहीं, आपके द्वारा दिया गया कार्य सही है, लेकिन आपको इसे अटैचमेंट का विचार स्वयं पोस्ट नहीं करना होगा। –

+0

आह ठीक है धन्यवाद। लेकिन इसे अभी भी निर्दिष्ट आकार के नजदीक छवि के साथ छवि वापस करनी चाहिए, है ना? –

4

वास्तव में, मुझे नहीं लगता कि स्वीकार किए जाते हैं जवाब वास्तव में सवाल का जवाब है। wp_get_attachment_image() के लिए, (WP भाषा में आम तौर पर $post->ID अपने उदाहरण में 54)

आपकी समस्या यह है कि आप पोस्ट आईडी में गुजर रहे हैं। (नीचे $attachment_id देखें) codex में देखा जा सकता है, तो आप लगाव आईडी का उपयोग करने वाले रहे हैं:

$image_attr = wp_get_attachment_image_src(get_post_thumbnail_id($post->ID), 'medium'); 
:

wp_get_attachment_image($attachment_id, $size, $icon); 

दूसरे शब्दों में, अगर आप इस तरह कुछ करने के लिए मिल गया है जैसा कि आप देख सकते हैं

+0

डाउनवॉटर - विचार? – rinogo

0

wp_get_attachment_image समारोह चार मूल्यों को स्वीकार कर सकते हैं:

wp_get_attachment_image (int $attachment_id, string|array $size = 'thumbnail', bool $icon = false, string|array $attr = '') 

तो मैं हमेशा का उपयोग करें:

<?php echo wp_get_attachment_image(get_the_ID(), array('700', '600'), "", array("class" => "img-responsive")); ?> 

नोट: हम बस का उपयोग कर सकते get_the_ID() सक्रिय पद का आईडी पारित करने के लिए। और यहां 700 चौड़ाई और 600 संलग्नक छवि की ऊंचाई है। हम सरणी ("कक्षा" => "आईएमजी-उत्तरदायी") के रूप में हमारी कक्षा को भी पास कर सकते हैं