مقدمه
وردپرس یکی از قدرتمندترین ابزارهای مدیریت محتواست و به طور خودکار برای هر تصویری که در رسانه ها بارگذاری می کنید، چندین نسخه ی مختلف با ابعاد متفاوت می سازد. این نسخه های «کراپ شده» (Cropped) می توانند در برخی موارد مفید باشند؛ اما در پروژه های بزرگ یا سایت های با محدودیت فضای سرور، ایجاد این تصاویر اضافی می تواند باعث مصرف بی مورد دیسک، کاهش سرعت بارگذاری صفحات و در نهایت هزینه های بیشتری شود.
در این مقاله به صورت گام به‑گام و با زبانی ساده، نحوهٔ غیرفعال کردن تولید اندازه های اضافی تصویر در وردپرس را بررسی می کنیم. ابتدا به این می پردازیم که این ویژگی از کجا ناشی می شود و چه تنظیماتی در هستهٔ وردپرس و افزونه ها باعث ایجاد این تصاویر می شود. سپس روش های مختلف برای حذف یا محدود کردن این اندازه ها را با مثال های کد PHP، تنظیمات functions.php و استفاده از فیلترهای داخلی وردپرس به شما نشان می دهیم.
هدف ما این است که با ارائهٔ راهکارهای عملی و توضیحاتی دقیق، به شما کمک کنیم تا کنترل کاملی بر روی پردازش تصاویر داشته باشید، فضای ذخیره سازی را بهینه کنید و عملکرد سایت تان را ارتقا دهید. این راهنمایی ها نه تنها برای توسعه دهندگان حرفه ای، بلکه برای مدیران وب سایت و کاربران عادی که می خواهند سایت خود را بهینه سازی کنند، مناسب و قابل اجرا است. پس با ما همراه باشید و گام های لازم برای توقف تولید تصاویر کراپ شدهٔ اضافی در وردپرس را گام به گام بررسی کنیم.
فهرست مطالب
- چرا وردپرس تصویرهای اضافی می سازد و چه مشکلی ایجاد می کند
- نحوهٔ غیرفعال سازی اندازه های پیش فرض در فایل functions.php
- حذف اندازه های سفارشی تصویر از تنظیمات رسانه
- بهینه سازی سرعت سایت با تنظیمات نهایی اندازه های تصویر

چرا وردپرس تصویرهای اضافی می سازد و چه مشکلی ایجاد می کند
وردپرس به طور پیش فرض برای هر تصویر بارگذاری شده، چندین نسخهٔ مختلف می سازد تا بتواند در قالب های مختلف، دستگاه های مختلف و وضوحهای مختلف به صورت بهینه نمایش داده شود. این نسخه ها شامل thumbnail، medium، large و گاهی full‑size می شوند. علاوه بر این، تم ها و افزونه ها می توانند با استفاده از add_image_size() یا set_post_thumbnail_size() اندازه های دلخواه دیگری تعریف کنند؛ مثلاً برای گالری، اسلایدر یا نمایش در شبکه های اجتماعی. هدف اصلی این کار، ارائهٔ تصویری سریع و مناسب برای هر موقعیت (Responsive Images) و رفع نیاز به پردازش تصویر در لحظه است.
- کاهش زمان بارگذاری صفحه برای کاربران موبایل
- بهینه سازی برای نمایش در Retina Displays
- امکان استفاده از تصویر مناسب در بلوک های گوتنبرگ و ویجت ها
- پشتیبانی از افزونه های سئو که به اندازه های خاصی نیاز دارند
اگرچه این ویژگی به نظر مفید می آید، اما می تواند مشکلاتی جدی ایجاد کند. تولید تعداد زیادی فایل تصویر باعث اشغال فضای سرور می شود؛ به خصوص در سایت های پربازدید که روزانه صدها تصویر بارگذاری می شوند. این امر نه تنها هزینهٔ فضای میزبانی را بالا می برد، بلکه زمان پشتیبان گیری و بازگردانی اطلاعات را به طور قابل ملاحظه ای افزایش می دهد. علاوه بر این، وجود نسخه های غیرضروری می تواند باعث بروز خطاهای لینک شکسته یا نمایش تصویر اشتباه در تم های سفارشی شود.
| نام اندازه | ابعاد پیش فرض | استفاده رایج |
|---|---|---|
| thumbnail | 150×150px | گالری ها و فهرست ها |
| medium | 300×300px | محتواهای متنی همراه تصویر |
| large | 1024×1024px | تصاویر اصلی مقاله |

نحوهٔ غیرفعال سازی اندازه های پیش فرض در فایل functions.php
در اکثر قالب های پیش فرض وردپرس، پس از بارگذاری هر تصویر، به صورت خودکار چندین نسخهٔ کوچک شده (thumbnail) ساخته می شود؛ این کار می تواند فضای دیسک را به سرعت پر کند و سرعت بارگذاری سایت را کاهش دهد. برای جلوگیری از این رفتار، کافیست در فایل functions.php قالب تان، توابع مرتبط با اندازه های پیش فرض را حذف کنید. این کار نه تنها منابع سرور را بهینه می کند، بلکه کنترل کامل بر اندازه های مورد نیاز خودتان را به دست می دهید.
- add_action( ‘after_setup_theme’, ‘disable_default_image_sizes’ );
- function disable_default_image_sizes() {
- remove_image_size( ‘thumbnail’ );
- remove_image_size( ‘medium’ );
- remove_image_size( ‘medium_large’ );
- remove_image_size( ‘large’ );
}
اگر به جای حذف کامل، می خواهید تنها برخی از اندازه ها را غیرفعال کنید، می توانید از فیلتر intermediate_image_sizes_advanced استفاده کنید. به عنوان مثال، کد زیر فقط medium و large را حذف می کند:
add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
unset( $sizes['medium'] );
unset( $sizes['large'] );
return $sizes;
});| نام اندازه | عرض (px) | ارتفاع (px) |
|---|---|---|
| thumbnail | 150 | 150 |
| medium | 300 | 300 |
| medium_large | 768 | 0 |
| large | 1024 | 1024 |

حذف اندازه های سفارشی تصویر از تنظیمات رسانه
وردپرس به صورت پیش فرض برای هر تصویر بارگذاری شده، چندین اندازهٔ دیگر را به صورت خودکار می سازد؛ این کار برای سئو و سرعت لود مفید است، اما وقتی افزونه ها یا قالب های سفارشی به صورت مکرر اندازه های سفارشی اضافه می کنند، فضای دیسک به سرعت پر می شود و مدیریت رسانه ها دشوار می شود. حذف این اندازه های اضافه نه تنها به بهینه سازی ذخیره سازی کمک می کند، بلکه باعث می شود فقط اندازه های مورد نیاز برای نمایش در سایت باقی بمانند.
برای حذف این اندازه ها می توانید از روش های زیر استفاده کنید:
- ویرایش functions.php: در فایل
functions.phpقالب خود، توابعremove_image_size()یاadd_filter('intermediate_image_sizes_advanced', …)را اضافه کنید. - استفاده از افزونه: افزونه هایی مانند Regenerate Thumbnails یا Disable Image Sizes به صورت گرافیکی امکان انتخاب و حذف اندازه های ناخواسته را فراهم می کنند.
- پاک سازی پس از حذف: پس از حذف تنظیمات، برای حذف فایل های قبلی می توانید از افزونه Media Cleaner بهره بگیرید تا فقط تصاویر مورد استفاده باقی بمانند.
| متد | کد/ابزار | نکات کلیدی |
|---|---|---|
| ویرایش دستی | remove_image_size('my-size'); | اطمینان حاصل کنید که نام دقیق اندازه را می دانید. |
| فیلتر پیشرفته | add_filter('intermediate_image_sizes_advanced', function($sizes){ unset($sizes['large']); return $sizes; }); | به روزرسانی خودکار پس از هر بار بارگذاری تصویر. |
| افزونه | Disable Image Sizes | رابط کاربری ساده، مناسب برای کاربران غیر فنی. |

بهینه سازی سرعت سایت با تنظیمات نهایی اندازه های تصویر
در زمان بارگذاری هر تصویر، وردپرس به صورت پیش فرض چندین نسخهٔ برش خورده (cropped) تولید می کند؛ این کار باعث مصرف بیش از حد پهنای باند، فضای ذخیره سازی غیرضروری و در نهایت کاهش سرعت بارگذاری صفحات می شود. برای بهبود عملکرد سایت، اولین گام حذف اندازه های غیر ضروری است. با استفاده از فیلتر intermediate_image_sizes_advanced می توانید به صورت دقیق کنترل کنید که چه اندازه هایی ساخته شوند و چه اندازه هایی حذف گردند. همچنین، پاک سازی تصاویر موجود با پلاگین های مخصوص (مانند Regenerate Thumbnails) یا اسکریپت های سفارشی، تضمین می کند که فضای سرور به درستی آزاد شود.
برای اعمال تنظیمات نهایی به صورت گام به گام، می توانید مراحل زیر را دنبال کنید:
- گام ۱: در فایل
functions.phpقالب فعال، کد زیر را اضافه کنید تا اندازه های پیش فرض حذف شوند:
add_filter( 'intermediate_image_sizes_advanced', function( $sizes ) {
unset( $sizes['medium_large'] );
unset( $sizes['1536x1536'] );
unset( $sizes['2048x2048'] );
return $sizes;
});- گام ۲: اندازه های سفارشی مورد نیاز خود را با
add_image_size()تعریف کنید. - گام ۳: پس از اعمال تغییرات، از Regenerate Thumbnails برای بازتولید تصاویر موجود استفاده کنید.
| اندازه پیش فرض | پیکسل | وضعیت |
|---|---|---|
| thumbnail | 150×150 | حفظ |
| medium | 300×300 | حفظ |
| medium_large | 768×0 | حذف |
| large | 1024×1024 | حفظ |
| 1536×1536 | 1536×1536 | حذف |
| 2048×2048 | 2048×2048 | حذف |
در پایان، امیدواریم با مرور گام های ارائه شده در این مقاله توانسته باشید به سادگی از ایجاد اندازه های تصویری اضافی در وردپرس جلوگیری کنید؛ از افزودن کدهای سفارشی به فایل functions.php یا theme.json تا استفاده از افزونه های مخصوص بهینه سازی رسانه ها. به یاد داشته باشید که هر تغییری که اعمال می کنید، پس از ذخیره سازی و بارگذاری مجدد سایت، می توانید با ابزارهای مرورگر یا افزونه های بررسی گر رسانه، تأیید کنید که فقط اندازه های مورد نیاز باقی مانده اند. اگر در هر مرحله ای به سؤال یا مشکلی برخوردید، خوشحال می شویم که نظرات خود را در قسمت کامنت ها به اشتراک بگذارید؛ تیم ما آماده ی پاسخ گویی و ارائه ی راهنمایی های تکمیلی است. موفق باشید و از بهینه سازی تصاویر در وردپرس لذت ببرید!

