आप हार्ड कोडित थंबनेल छवि आयामों को कैसे निकालते हैं?


15

जब मैं पोस्टिंग से post_thumbnail से चौड़ाई और ऊंचाई की विशेषताओं को हटा सकता / सकती हूं <?php the_post_thumbnail(); ?>?

<img width="800" height="533" src="http://domain.com/wp-content/uploads/2011/02/image.jpg" class="attachment-post-thumbnail wp-post-image" />

थंबनेल.php फ़ाइल के लिए देखें, निश्चित नहीं है, लेकिन आमतौर पर फाइलों में हार्ड कोडिंग होती है
Niraj Chauhan

यदि आप सोच रहे थे, तो मैं सीएसएस के साथ चौड़ाई और ऊंचाई को संशोधित करने में सक्षम होना चाहता हूं - विशेष रूप से अधिकतम-चौड़ाई सेट करें और हार्ड कोडित डिफ़ॉल्ट के बजाय ऊंचाई को स्वयं निर्धारित करें।
कार्सन

फायरबग का उपयोग सटीक कक्षा या आईडी प्राप्त करने के लिए करें, या मुझे अपना URL दें
नीरज चौहान

2
थीम के बाहर एक फ़ाइल में कुछ भी बदलना (उदाहरण के लिए थंबनेल-टेम्पलेट-पीएचपी) एक बुरा विचार होगा क्योंकि कोई भी वर्डप्रेस अपडेट इसे अधिलेखित कर देगा।
कार्सन

आपको क्या लगता है कि आपको अपनी इच्छानुसार विशेषताओं को हटाने की आवश्यकता है?
t31os

जवाबों:


25

सम्बंधित: छवि आयाम विशेषताओं को हटाने के लिए फ़िल्टर?

post_thumbnail_htmlपृष्ठ पर गूँजने से पहले एक ऐसा फ़िल्टर होता है जिस पर उसके तर्क के रूप में पोस्ट HTML छवि का प्रतिनिधित्व करने वाला पूर्ण HTML तत्व प्राप्त होता है। आप थोड़ा रेगेक्स के साथ आयामों को फ़िल्टर कर सकते हैं:

add_filter( 'post_thumbnail_html', 'remove_thumbnail_dimensions', 10, 3 );

function remove_thumbnail_dimensions( $html, $post_id, $post_image_id ) {
    $html = preg_replace( '/(width|height)=\"\d*\"\s/', "", $html );
    return $html;
}

यह मेरे लिए काम नहीं करता है। add_filter ('post_thumbnail_html', 'remove_thumbnail_dimensions', 10, 3); function remove_thumbnail_dimensions ($ html, $ post_id, $ post_image_id) {if (wp_is_mobile ()) {$ html = preg_replace ('/ (height) = \ "d \" s \ / s "," ", $ html | ); } $ html वापस करें; }
dlopezgonzalez

यह जहां the_post_thumbnail()उपयोग किया जाता है वहां के सभी उदाहरणों से चौड़ाई / ऊंचाई को हटा देगा ।
दारियो ज़ाद्रो

5

आप बस अंगूठे के url को पकड़ सकते हैं और इसे खुद img टैग में डाल सकते हैं:

<?php
$thumbnail = wp_get_attachment_image_src( get_post_thumbnail_id( $post->ID ), 'your_thumb_handle' );
?>
<img src="<?php echo $thumbnail['0']; ?>" />

1
यही एकमात्र समाधान है जो मैंने भी पार किया है, बस उम्मीद कर रहा था कि इसे बिना वर्कअराउंड के करने का एक तरीका था।
कार्सन

लेकिन आपको
ऊंचाई

0
add_filter( 'post_thumbnail_html', 'remove_thumbnail_dimensions', 10 );
add_filter( 'image_send_to_editor', 'remove_thumbnail_dimensions', 10 );
add_filter( 'the_content', 'remove_thumbnail_dimensions', 10 );
function remove_thumbnail_dimensions( $html ) {
    $html = preg_replace( '/(width|height)=\"\d*\"\s/', "", $html );
    return $html;
}

यह काम करेगा, "The_contnet" सभी पोस्ट सामग्री पाठ छवि की चौड़ाई और ऊंचाई को हटा देगा।


कृपया संपादित आपका जवाब है, और एक विवरण जोड़ें: क्यों कि समस्या का समाधान कर सकता है?
FUXIA

0

मैं नीचे दिए गए इस समाधान को पसंद करता हूं क्योंकि मैं एक फ़ंक्शन के साथ एक वैश्विक प्रतिस्थापन नहीं कर रहा हूं। इसे आपकी थीम फ़ाइलों में शामिल किया जाएगा।

<?php echo preg_replace( '/(width|height)="\d*"/', '', get_the_post_thumbnail( get_the_ID(), 'large' ) ); ?>

आप "बड़े" को "थंबनेल", "मध्यम", "पूर्ण", या अपने विषय में घोषित अपने कस्टम छवि आकार के साथ बदल सकते हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.