থিম সেটআপ পাঠে add_theme_support( 'post-thumbnails' ) কলটাই ফিচার্ড ইমেজ আদৌ চালু করে — এই পাঠ কাভার করে আসলে সেগুলো ব্যবহার করা।
<?php if ( has_post_thumbnail() ) : ?>
<?php the_post_thumbnail( 'large' ); ?>
<?php endif; ?>has_post_thumbnail() চেক করে একটি কখনো সেট হয়েছিল কিনা — কখনো ধরে নেবেন না হয়েছে, একজন এডিটর সবসময় এটি এড়িয়ে যেতে পারেন। the_post_thumbnail() একটি ঐচ্ছিক সাইজ নাম নেয়; এটি বাদ দিলে 'thumbnail' ব্যবহার হয়, যা প্রায় কখনোই আপনি আসলে চান না।
| সাইজ | ডিফল্ট মাপ |
|---|---|
| thumbnail | 150×150, ক্রপ করা |
| medium | সর্বোচ্চ 300×300, ক্রপ করা নয় (অ্যাসপেক্ট রেশিও রাখে) |
| large | সর্বোচ্চ 1024×1024, ক্রপ করা নয় |
| full | মূল আপলোড করা ছবি, আকার পরিবর্তন না করা |
বিল্ট-ইন সাইজ কালেভদ্রেই একটি নির্দিষ্ট ডিজাইনের সাথে ঠিক মেলে — উদাহরণস্বরূপ, একটি কার্ড গ্রিডে একটি সামঞ্জস্যপূর্ণ 400×300 ক্রপ দরকার হতে পারে। add_image_size() functions.php-এ একটি নতুন রেজিস্টার করে:
<?php
function mytheme_image_sizes() {
add_image_size( 'card-thumb', 400, 300, true );
}
add_action( 'after_setup_theme', 'mytheme_image_sizes' );চতুর্থ আর্গুমেন্ট (true) মানে hard crop — ঠিক 400×300, যা মেলে না তা ক্রপ করে, মূল অ্যাসপেক্ট রেশিও রেখে সেই মাপের মধ্যে ফিট করার জন্য সংকুচিত করার বদলে।
<?php the_post_thumbnail( 'card-thumb' ); ?>নতুন সাইজ পূর্ববর্তীভাবে প্রযোজ্য হয় না
ছবি ইতিমধ্যে থাকার পরে রেজিস্টার করা একটি কাস্টম সাইজ শুধু নতুন-আপলোড করা ছবিতে প্রযোজ্য হয় — WordPress আপলোডের সময় প্রতিটি রেজিস্টার করা সাইজ তৈরি করে, চাহিদা অনুযায়ী নয়। বিদ্যমান কন্টেন্টসহ একটি বিদ্যমান সাইটে একটি সাইজ যোগ করার মানে সাধারণত একবার ফ্রি Regenerate Thumbnails প্লাগইন চালানো, প্রতিটি আগে-আপলোড করা ছবির জন্য নতুন ক্রপ ব্যাকফিল করতে।
ছবি সঠিকভাবে সামলানো হয়ে যাওয়ার পর, পরের পাঠ এমন কিছু কাভার করে যা এখন পর্যন্ত বানানো সবকিছুতে প্রযোজ্য, শুধু ছবিতে নয় — একটি টেমপ্লেট আউটপুট করা যেকোনো ডেটা escape আর sanitize করা।