اضافه کردن یک سایز خاص به تصاویر وردپرس

- visibility ۱۷ mode_comment

به نام خدا

با سلام.

به طور پیشفرض تصاویری که در وردپرس آپلود میکنید به سه سایز بند انگشتی، متوسط و بزرگ آپلود میشه که میتونید اندازه ی اون‌هارو از قسمت تنظیمات  > رسانه تغییر بدید.

sizes

گاهی پیش میاد که یک پوسته ای طراحی میکنید و در صفحه ی اصلی برای هر پست تصور بندانگشتی فراخوانی میکنید. در بیشتر مواقع اندازه ی تصویر بندانگشتی اون اندازه ای نیست که شما میخواهید. وردپرس برای حل این مشکل تابع add_image_size را در اختیار ما گذاشته است. میتونیم به سادگی توسط این تابع یک سایز تصویر جدید تعریف کنیم و از این پس تصاویر آپلود شده به این سایز هم ذخیره بشه.

اضافه کردن سایز جدید به تصاویر وردپرس

این تابع چهار پارامتر میگیرد که به ترتیب نام، عرض، ارتفاع و اجازه‌ی بریدن تصاویر را تعیین میکند. پارامتر $crop بولین است و مقدار true یا false میگیرد که به صورت پیشفرض false است.(پارامتر $crop از نسخه ی 3.9 به وردپرس اضافه شده است)

برای مثال میخواهیم تصاویری که آپلود میکنیم به سایز 170 در 200 هم ذخیره شود و در صورت بزرگ بودن تصویر، قسمت اضافه بریده شود:

کافیست کدهای بالا را در فایل functions.php پوسته اضافه کنید تا سایز جدید به تصاویر اضافه شود.

info نکته :

تصاویری که از این پس آپلود میکنید به سایز جدید هم ذخیره می‌شوند.

مانند مثال بالا به سادگی میتوانید اندازه ی دلخواهتون رو به تصاویر وردپرس اضافه کنید و سپس به روش زیر از اونها استفاده کنید.

همونطور که دیدید نامی که هنگام اضافه کردن سایز جدید تعریف کردیم در پارامتر تابع the_post_thumbnail قرار میدیم.

 حذف کردن سایز تصویر

در صورتی که از سایز تصویر های پیشفرض استفاده نمیکنید، میتونید برای جلوگیری از حجیم شدن هاستتون اونهارو حذف کنید. فیلتر intermediate_image_sizes_advanced تمامی سایز تصویر های تعریف شده رو درون یک آرایه برمیگردونه که ما میتونیم توسط تابع unset() پی‌اچ‌پی، سایزهایی رو که میخواهیم حذف کنیم.

امیدوارم این مطلب براتون مفید باشه.

موفق باشید.

comment دیدگاه کاربران

به مورد خوبی اشاره کردید…
ممنون

Mahmood Dabestani

درود بر شما.
مطلب واقعا مفیدی بود.
اما در قسمتی از سایتتون به چشمم خورده بود که در مورد آنالیز وبسایت توسط Gtmetrix صحبت کرده بودید.
تو این سایت تصاویری که دارای اندازه نباشند رو مشخص میکنه و میخواد که برای اون تصاویر اندازه تعریف کنیم.
سوالی که بنده دارم اینه که من از یک تصویر بارها به عنوان تصویر شاخص تو سایتم استفاده کردم که متاسفانه اندازه براش تعریف نشده.
http://www.arize.ir
کدی نیست که بشه بوسیله ی اون همه ی تصاویر سایت رو دارای اندازه ی دلخواه کرد؟
منظور بنده برای سئو شدن تصاویر هستش نه اندازه ی تصاویری که قراره از این به بعد آپلود کنیم.
خیلی ممنون و سپاس.
😯

لقمان آوند

در خود تابع the_post_thumbnail می تونی عرض و ارتفاع رو تعین کنی .

علی امینی

جواب آقا لقمان هم صحیحه ولی اگه تصویری به اون اندازه وجود نداشته باشه، تصویر به همون اندازه ی کاملش قرار میگیره.

ugd

مرسی برای کد حالا ما بخوایم مطالب تصادفی داشته باشیم چه کنیم
حالا اگه ما بخوایم یه ستون مطالب تصادفی همراه با توضیحات و تصویر شاخص داشته باشیم چه کنیم؟

وحید صالحی

توابع زیادی موجود هست در گوگل عبارت کد نمایش مطالب تصاوفی همراه با تصویر شاخص برای وردپرس رو جستجو کنید کدهای زیادی پیدا می کنید…

علی امینی

اگه منظورتون اینه که تصاویر شاخص قبلی رو هم به سایز جدید که تعریف می کنید تغییر سایز بدید باید از افزونه ی Regenerate Thumbnails استفاده کنید. ابتدا اندازه‌های مورد نیازتونو تعریف کنید و بعد از نصب و فعالسازی افزونه، گزینه ی جدیدی در قسمت ابزارها (Regen. Thumbnails) اضافه میشه. به اون قسمت برید و بعد روی دکمه ی Regenerate All Thumbnails کلیک کنید؛ صبر کنید تا همه ی تصاویر به سایز جدید تغییر اندازه بدن. کار تمومه

Mahmood Dabestani

درود بر شما.
ولی منظور بنده یه چیزی مثل کاری هست که افزونه ی seo friendly image انجام میده. یعنی به صورت خودکار ویژگی alt و title رو به تصاویر سایت اضافه می کنه.
بنده کدی یا افزونه ای میخوام که ویژگی width و height رو به تصاویر سایتم اضافه کنه.

علی امینی

اگه برای تصاویر شاخص میخواید میتونید از این آموزش استفاده کنید ولی اگه برای همه‌ی تصاویر سایتتون میخواید به این صفحه برید.

دوست

داداش دستت در د نکنه

Mohsen

دوست عزیز اگه من میخوام از تصویر شاخص در یک حلقه مطلب استفاده کنم
و مشکل اینجاست که در حلقه من از روش masonry برای کنار هم قرار گرفتن مطالب استفاده شده و این یعنی طول و عرض های مختلف برای هر تصویر از هر مطلب
برای رفع این مشکل چه راهی پیشنهاد میکنید؟

امیر

سلام
بنده تو قالبم از 6 سایز مختلف بهره می گیرم که به اینصورت تو قالب فانکشن تعریف شده:

add_theme_support( ‘post-thumbnails’ );
add_image_size( ‘thumb200’, 200, 170, true );
add_image_size( ‘thumb120’, 120, 60, true );
add_image_size( ‘thumb60’, 60, 30, true );
add_image_size( ‘thumb50’, 50, 50, true );
add_image_size( ‘thumb180’, 180, 90, true );

وقتی تاپیکی رو ارسال می کنم که محتوی 10 تا عکس هست

برای هر کدوم از عکس ها اندازه هارو اعمال می کنه یعنی میشه جمعا 50 تا عکس که این خوب نیست

چطوری می تونم این مشکل رو برطرف کنم

اصولا فقط باید وقتی تصویر شاخص روموقه ارسال انتخاب می کنم برا اون اندازه هارو درست کنه نه بقیه عکس های موجود داخل پست رو

وحید صالحی

دوست عزیز سوالتون رو در انجمن مطرح کنید

رضا

سلام خسته نباشید امیدوارم پس از تایید نظر و پاسخ به ایمیل م خبر بده 😀
من یک سوال بنظر ساده دارم !
من میخوام همه عکس هایی که توی سایتم آپلود میکنم ( همه همه همه) تبدیل به یک اندازه مثل ۷۵۰در۳۰۰ پیکسل بشوند!‌
میهوام از هر عکس فقط یه دونه باشه اون یه دونه هم همون سایزی باشه که گفتم
*****مهم مهم مهم مهم *** میخوام موقع آپلود عکس اگر عکس بزرگ بود به من اجازه بده که بگم کدوم قسمت رو برش دهد
باید چکار کنم ؟ لطفا راهنماییم کنید 🙁 🙁
خیلی ممنون میشم

وحید صالحی

دوست عزیز سوالتون رو در انجمن مطرح کنید

رضا

فکر کردم مرتبط با موضوع هست
چشم دوست عزیز

وحید صالحی

بحث ارتباط مطرح نیست ممکنه یک مطلبی خیلی موارد بهش مرتبط(مثل کدهاش) باشه از جهات مختلف… نظرات یک مطلب صرفا مختص مطالب و موارد همون مطلبه و موارد مشابه باید در انجمن مطرح بشه که به نفع خودتونه اونجا سوالاتون رو تمام کاربران سایت می بینن و درصد پاسخ گویی بهش خیلی بالاتره ولی در نظرات فقط مدیران می بینند و اگر نویسنده مطلب نباشه قطعا پاسخی نخواهید گرفت

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.