WordPress featured image کا سائز کتنا ہونا چاہیے؟
زیادہ تر لوگ جو نمبر چاہتے ہیں وہ 1200 x 630 pixels ہے — یہی 1.91:1 تناسب Facebook، LinkedIn اور X اپنے link previews کے لیے استعمال کرتے ہیں۔ مگر یہ وہ سائز نہیں جو آپ کی theme
شائع شدہ
زیادہ تر لوگ جو نمبر چاہتے ہیں وہ 1200 x 630 pixels ہے۔ یہی وہ تناسب ہے جو Facebook، LinkedIn اور X اپنے link previews کے لیے استعمال کرتے ہیں (1.91:1)، اور یہی وہ سائز ہے جو ایک Open Graph image کا ہونا چاہیے۔ اگر آپ featured image بنیادی طور پر اس لیے سیٹ کر رہے ہیں کہ شیئر کیے گئے links درست نظر آئیں، تو 1200 x 630 استعمال کریں اور بس یہیں رک جائیں۔
مگر یہ نمبر وہ نہیں جو آپ کی theme دراصل پوسٹ پر دکھاتی ہے۔ WordPress شاذ و نادر ہی آپ کی featured image کو اس کے اصل سائز میں دکھاتا ہے۔ theme ایک مخصوص رجسٹرڈ image size مانگتی ہے، اور WordPress وہی پہلے سے تیار شدہ crop پیش کرتا ہے جو اس سے میل کھاتا ہو۔ یہی وجہ ہے کہ ایک تصویر جو Facebook پر بالکل درست نظر آتی ہے، آپ کے single-post template کے اندر دھندلی، کھنچی ہوئی، یا غلط crop شدہ لگ سکتی ہے۔ “درست” سائز theme پر منحصر ہے، کسی آفاقی اصول پر نہیں۔
theme اس نمبر کو کیوں بدل دیتی ہے
جب آپ کوئی تصویر اپلوڈ کرتے ہیں، WordPress صرف ایک فائل محفوظ نہیں کرتا۔ یہ wp_generate_attachment_metadata() چلاتا ہے اور ہر رجسٹرڈ image size کے لیے ایک derivative بناتا ہے: تین ڈیفالٹس (thumbnail، medium، large)، block-editor کا medium_large (768px چوڑا)، نیز ہر وہ سائز جو theme یا کسی plugin نے add_image_size() کے ساتھ رجسٹر کیا ہو۔
ایک theme جو چوڑا 16:9 hero چاہتی ہو، functions.php میں کچھ اس طرح کرے گی:
add_theme_support( 'post-thumbnails' );
add_image_size( 'hero-featured', 1200, 675, true );
چوتھی argument، true، کا مطلب ہے hard crop۔ WordPress آپ کی تصویر کو بالکل ٹھیک 1200 x 675 پر crop کر دے گا، اور جو کچھ 16:9 باکس میں نہیں سماتا اسے پھینک دے گا۔ اگر آپ کا سبجیکٹ فریم کے اوپر یا نیچے کے قریب ہے، تو وہ کٹ جائے گا۔ اگر اسے false پر سیٹ کیا جائے (یا چھوڑ دیا جائے)، تو یہ متناسب انداز میں scale ہوتا ہے اور حتمی dimensions اُس سے مختلف ہو سکتے ہیں جو آپ نے مانگے تھے۔
پھر template فیصلہ کرتی ہے کہ کون سا سائز کھینچنا ہے:
the_post_thumbnail( 'hero-featured' );
جو نام بھی the_post_thumbnail() کو پاس کیا جائے، وہی crop رینڈر ہوتا ہے۔ چنانچہ آپ کی سائٹ پر اصل featured image کا سائز دو ایسی جگہوں پر متعین ہوتا ہے جو آپ نے نہیں لکھیں: theme میں add_image_size() کی call اور the_post_thumbnail() کی call۔ بڑی فائل اپلوڈ کرنے سے ان دونوں میں سے کوئی نہیں بدلتا۔
ایک اور تہہ بھی ہے۔ WordPress ایک srcset پیش کرتا ہے، چنانچہ چھوٹی سکرینوں پر browser مکمل crop کے بجائے medium یا large derivative لوڈ کر سکتا ہے۔ جو dimension آپ DevTools میں دیکھتے ہیں وہ اکثر وہ نہیں ہوتا جو آپ نے اپلوڈ کیا تھا۔
اسے کیسے ٹھیک کریں، ترتیب کے ساتھ
1. معلوم کریں کہ آپ کی theme دراصل کیا مانگتی ہے۔ اندازہ لگانے سے پہلے، ہر وہ سائز دیکھیں جو WordPress آپ کی تصویر سے تیار کرتا ہے اور یہ کہ کون سا crop شدہ hero ہے۔ اپنی تصویر کو WordPress image sizes ٹول میں ڈالیں — یہ ہر وہ derivative دکھاتا ہے جو WP بنائے گا، بالکل درست pixel dimensions پر، تاکہ آپ اپنے سورس کو فرضی 1200x630 کے بجائے اصل ہدف سے میل کروا سکیں۔
2. اتنا بڑا اپلوڈ کریں کہ سب سے بڑا crop پورا ہو جائے۔ اگر theme کا hero 1200 x 675 ہے، تو کم از کم اتنا ہی اپلوڈ کریں، اور بہتر یہ کہ retina کے لیے 2x (2400 x 1350) اپلوڈ کریں۔ WordPress صفائی سے downscale کرتا ہے؛ یہ کبھی upscale نہیں کرتا۔ چھوٹا سورس دھندلی featured image کی سب سے عام وجہ ہے۔
3. اپنا aspect ratio theme کے crop سے میل کروائیں۔ اگر theme 16:9 پر hard-crop کرتی ہے، تو اسے 16:9 دیں۔ سبجیکٹ کو مرکز میں رکھ کر تصویر ترتیب دیں تاکہ hard crop کسی کا سر نہ کاٹ دے۔
4. اگر رجسٹرڈ سائز غلط ہے، تو اسے بدلیں اور دوبارہ generate کریں۔ ایک child theme میں add_image_size() کی values میں ترمیم کریں، پھر موجودہ thumbnails کو دوبارہ بنائیں — نئے dimensions صرف مستقبل کے اپلوڈز پر لاگو ہوتے ہیں جب تک آپ یہ نہ کریں:
wp media regenerate --yes
WP-CLI نہیں ہے؟ Regenerate Thumbnails plugin یہی کام dashboard سے کر دیتا ہے۔
کیا نہیں کرنا چاہیے
صرف 1200x630 کی تصویر اپلوڈ کر کے یہ فرض نہ کریں کہ سب سنبھال لیا گیا ہے۔ اگر theme کا رجسٹرڈ سائز 16:9 ہے، تو WordPress آپ کی 1.91:1 تصویر کو hard-crop کر دیتا ہے اور آپ اوپر اور نیچے کا حصہ کھو دیتے ہیں۔ Open Graph نمبر اور display نمبر دو الگ الگ کام ہیں۔
“اصل فائل برقرار رکھنے” کے لیے WordPress image sizes کو غیر فعال نہ کریں۔ لوگوں کو یہ مشورہ ملتا ہے کہ intermediate sizes کو 0 پر سیٹ کر دیں یا the_post_thumbnail کو unhook کر دیں۔ پھر theme browser میں مکمل سائز کی فائل کو scale کر کے پیش کرنے پر واپس آ جاتی ہے — ایک 4000px کی JPEG فون پر بھیجی جاتی ہے۔ اس سے آپ کا load time اور Core Web Vitals تباہ ہو جاتے ہیں۔ derivatives ایک وجہ سے موجود ہیں۔
کسی plugin کے “recommended size” پر اپنی theme کے اصل رجسٹرڈ سائز سے زیادہ بھروسہ نہ کریں۔ SEO plugins OG tag کے لیے 1200x630 تجویز کرتے ہیں، جو اُس tag کے لیے درست ہے۔ یہ اس بارے میں کچھ نہیں کہتا کہ آپ کا single-post template کس سائز پر crop کرتا ہے۔
سائز بدلنے کے بعد wp media regenerate کو نظرانداز نہ کریں۔ add_image_size() میں ترمیم پہلے سے اپلوڈ شدہ تصاویر پر کچھ اثر نہیں کرتی۔ یہی وہ قدم ہے جسے لوگ بھول جاتے ہیں، پھر یہ نتیجہ نکالتے ہیں کہ کوڈ نے کام نہیں کیا۔
اب بھی پھنسے ہوئے ہیں؟
اگر dimensions میل کروانے اور دوبارہ generate کرنے کے بعد بھی تصویر غلط ہے، تو مسئلہ عموماً crop mode (true بمقابلہ false) ہوتا ہے یا کوئی srcset آپ کی توقع سے چھوٹا derivative پیش کر رہا ہوتا ہے۔ فائل کو image sizes ٹول میں ڈالیں تاکہ بالکل واضح ہو جائے کہ آپ کا سیٹ اپ کون سے crops بناتا ہے، پھر اس کا موازنہ اس سے کریں جو browser DevTools میں لوڈ کر رہا ہے۔ ان دونوں کو میل کروا دیں اور اندازوں کا سلسلہ ختم ہو جائے گا۔