خلاصه پروژه
این پروژه یک افزونه اختصاصی وردپرس برای تبدیل و مدیریت تصاویر WebP است. افزونه می تواند تصاویر کتابخانه رسانه، تصاویر شاخص و گالری محصولات ووکامرس و تصاویر بارگذاری شده در نظرات مشتریان را به WebP تبدیل کند. پیش از تبدیل، نسخه اصلی تصویر نگهداری می شود و مدیر سایت می تواند کیفیت، حداکثر عرض و ارتفاع، نحوه مدیریت متادیتا و روش تبدیل را از پنل تنظیمات مشخص کند. جایگزینی تصاویر براساس آدرس فایل انجام می شود؛ بنابراین نسخه WebP بدون ویرایش دستی صفحات محصول، در خروجی سایت نمایش داده می شود.
نکات برجسته پروژه
- تبدیل تصاویر وردپرس به WebP با ImageMagick و PHP
- تنظیم کیفیت، عرض و ارتفاع تصاویر پیش از تبدیل
- تبدیل تصاویر شاخص و گالری محصولات با استفاده از شناسه محصول
- نگهداری نسخه اصلی و امکان غیرفعال کردن جایگزینی WebP
- تبدیل تصاویر بارگذاری شده در نظرات ووکامرس
- جایگزینی خودکار تصاویر و اندازه های برش خورده بدون ویرایش صفحات
تصویر کامل صفحه پروژه
تصاویر بیشتر از بخشهای پروژه
توضیحات پروژه
تبدیل قابل تنظیم تصاویر به WebP
مدیر سایت می تواند کیفیت خروجی، حداکثر عرض و ارتفاع، حذف متادیتا و حالت فشرده سازی تصاویر PNG را از پنل افزونه تعیین کند. عملیات تبدیل با ImageMagick و از طریق PHP انجام می شود.
مدیریت تصاویر محصولات ووکامرس
با وارد کردن شناسه محصول، تصاویر شاخص و گالری آن همراه با مسیر فایل، نوع تصویر، وضعیت فایل و نسخه WebP نمایش داده می شوند. هر تصویر را می توان به صورت جداگانه یا تمام تصاویر محصول را به صورت گروهی تبدیل کرد.
نگهداری نسخه اصلی و بازیابی تصویر
افزونه پیش از انجام تغییرات، نسخه اصلی فایل را نگهداری می کند و برای وضعیت جایگزینی یک فلگ اختصاصی ثبت می شود. مدیر سایت می تواند نمایش WebP را غیرفعال کند یا فایل های اصلی را برای نگهداری به پوشه پشتیبان منتقل کند.
هماهنگی با رسانه و نظرات ووکامرس
گزینه تبدیل مستقیم در صفحه جزئیات فایل کتابخانه رسانه قرار گرفته و امکان تغییر اندازه یا Crop نیز وجود دارد. افزونه همچنین تصاویر پیوست شده به نظرات محصولات را شناسایی و در پردازش های گروهی به WebP تبدیل می کند
ابزارها و تکنولوژیها
توسعه افزونه تبدیل تصاویر به WebP در وردپرس
افزونه تبدیل تصاویر به WebP در وردپرس برای مدیریت و بهینه سازی تصاویر یک فروشگاه ووکامرسی توسعه داده شد. این سایت علاوه بر تصاویر شاخص و گالری محصولات، به مشتریان اجازه می داد تصاویر خود را هنگام ثبت نظر بارگذاری کنند. در نتیجه تعداد زیادی فایل JPEG و PNG در بخش های مختلف سایت ذخیره می شد که مدیریت و تبدیل دستی آن ها زمان زیادی نیاز داشت.
هدف پروژه ساخت یک ابزار متمرکز بود که تصاویر موجود را با استفاده از ImageMagick به WebP تبدیل کند، نسخه اصلی فایل را نگه دارد و بدون تغییر دستی صفحات، آدرس نسخه بهینه شده را در خروجی سایت جایگزین کند. افزونه علاوه بر تبدیل تکی، امکان پردازش تصاویر یک محصول و تصاویر نظرات را به صورت گروهی فراهم می کند.
چالش اصلی پروژه
تصاویر وردپرس فقط شامل فایل اصلی نیستند. هنگام بارگذاری هر تصویر، وردپرس اندازه های مختلفی مانند بندانگشتی، متوسط، بزرگ و برش های مورد نیاز قالب یا ووکامرس تولید می کند. تبدیل تنها فایل اصلی باعث می شد برخی بخش های سایت همچنان از نسخه JPEG یا PNG استفاده کنند.
از طرف دیگر، جایگزینی مستقیم فایل اصلی می توانست بازیابی تصاویر را دشوار کند. افزونه باید قبل از تبدیل، نسخه اولیه را حفظ می کرد و وضعیت هر تصویر را ثبت می کرد تا مدیر سایت بتواند جایگزینی WebP را فعال یا غیرفعال کند.
تنظیمات تبدیل تصاویر
پنل تنظیمات افزونه امکان کنترل کیفیت خروجی، حداکثر عرض، حداکثر ارتفاع و روش تبدیل را در اختیار مدیر سایت قرار می دهد. اگر مقدار عرض یا ارتفاع صفر باشد، اندازه اصلی در همان جهت حفظ می شود. مدیر همچنین می تواند حذف متادیتای تصاویر یا فشرده سازی بدون افت فایل های PNG را فعال کند.
در همین بخش فیلدهایی برای ثبت نام نویسنده و آدرس سایت وجود دارد. این اطلاعات می توانند به عنوان مشخصات مالکیت یا اعتبار فایل به تصویر اضافه شوند تا تصاویر تولید شده برای مجموعه دارای اطلاعات قابل پیگیری باشند.
قابلیت های پیاده سازی شده
- تبدیل تصاویر JPEG و PNG به WebP با ImageMagick
- تنظیم کیفیت خروجی در بازه تعریف شده
- تعیین حداکثر عرض و ارتفاع پیش از تبدیل
- حذف اختیاری متادیتای تصاویر
- پشتیبانی از حالت بدون افت برای تصاویر PNG
- تبدیل مستقیم تصاویر از کتابخانه رسانه وردپرس
- تبدیل تصویر با تنظیم عرض، ارتفاع و نوع Crop
- نمایش تصاویر شاخص و گالری با استفاده از شناسه محصول
- تبدیل تکی یا گروهی تمام تصاویر یک محصول
- تبدیل گروهی تصاویر بارگذاری شده در نظرات ووکامرس
مدیریت تصاویر محصولات ووکامرس
مدیر سایت می تواند شناسه یک نوشته یا محصول را وارد کند تا افزونه تمام تصاویر مرتبط با آن را پیدا کند. در جدول نتایج، نوع تصویر، شناسه فایل، مسیر ذخیره سازی، آدرس، نوع MIME، وجود فایل و وضعیت نسخه WebP نمایش داده می شود.
تصاویر شاخص و گالری را می توان به صورت جداگانه تبدیل کرد یا با یک عملیات گروهی تمام تصاویر محصول را پردازش کرد. افزونه وضعیت جایگزینی هر فایل را نیز نمایش می دهد و امکان غیرفعال کردن Swap یا انتقال نسخه اصلی به پوشه پشتیبان را فراهم می کند.
جایگزینی خودکار آدرس تصاویر
پس از تبدیل، لازم نیست تصاویر محصول دوباره انتخاب یا صفحات سایت ویرایش شوند. افزونه براساس آدرس فایل، نسخه WebP را جایگزین نسخه اولیه می کند. این منطق برای فایل اصلی و اندازه های تولید شده وردپرس اجرا می شود؛ بنابراین تصویر شاخص، گالری، کارت محصول و سایر برش های تصویر می توانند از نسخه WebP استفاده کنند.
برای هر تصویر یک وضعیت اختصاصی ذخیره می شود تا سیستم تشخیص دهد جایگزینی فعال است یا خیر. مدیر سایت می تواند بدون حذف فایل تبدیل شده، Swap را غیرفعال کند و سایت را دوباره به نسخه اصلی تصویر برگرداند.
تبدیل تصاویر نظرات ووکامرس
بخش نظرات فروشگاه امکان بارگذاری تصویر توسط مشتریان را داشت. این تصاویر در متادیتای نظر ذخیره می شدند و بخشی از کتابخانه عادی محصولات نبودند. افزونه نظرات دارای تصویر را شناسایی می کند و فایل های پیوست شده به آن ها را به صورت گروهی تبدیل می کند.
مدیر می تواند اندازه هر Batch را مشخص کند، پردازش را فقط به نظرات محصولات ووکامرس محدود کند و در صورت نیاز تنها تصاویر نظرات تایید شده را تبدیل کند. این ساختار از پردازش تعداد زیادی فایل در یک درخواست جلوگیری می کند.
نتیجه اجرا و ارزش پروژه
خروجی پروژه یک سیستم اختصاصی برای تبدیل، جایگزینی، پشتیبان گیری و مدیریت تصاویر WebP در وردپرس است. مدیر سایت می تواند تصاویر محصولات، رسانه ها و نظرات مشتریان را از یک پنل کنترل کند و برای هر فایل از وضعیت نسخه اصلی و WebP مطلع باشد.
حفظ نسخه اولیه، امکان غیرفعال کردن جایگزینی و پردازش اندازه های مختلف وردپرس باعث شده فرایند بهینه سازی تصاویر بدون تغییر دائمی فایل های اصلی و بدون ویرایش دستی صفحات انجام شود.
سوالات متداول
تبدیل تصاویر با چه ابزاری انجام می شود؟
پردازش تصاویر با ImageMagick و افزونه Imagick در PHP انجام می شود. کیفیت، ابعاد و برخی تنظیمات خروجی از پنل افزونه قابل کنترل هستند.
آیا تصاویر اصلی پس از تبدیل حذف می شوند؟
خیر. پیش از تبدیل، نسخه اصلی نگهداری می شود و مدیر سایت می تواند آن را به پوشه پشتیبان منتقل کند یا جایگزینی WebP را غیرفعال کند.
آیا تصاویر گالری و اندازه های برش خورده نیز تبدیل می شوند؟
بله. افزونه تصاویر اصلی و اندازه های تولید شده توسط وردپرس و ووکامرس را شناسایی می کند تا بخش های مختلف سایت از نسخه WebP استفاده کنند.
آیا امکان تبدیل تمام تصاویر یک محصول وجود دارد؟
بله. با وارد کردن شناسه محصول، تصاویر شاخص و گالری نمایش داده می شوند و می توان آن ها را به صورت تکی یا گروهی تبدیل کرد.
آیا تصاویر بارگذاری شده در نظرات نیز پشتیبانی می شوند؟
بله. تصاویر متصل به نظرات محصولات شناسایی می شوند و امکان تبدیل گروهی آن ها با تعیین اندازه Batch و وضعیت تایید نظر وجود دارد.