Repository navigation
DashWoo 1.4.0
DashWoo 1.4.0 — پنل دوکارتی، قالبها، و المانهای بدون دیزاین خودکار
این نسخه پنج چیزی را که بعد از ۱.۳.۱ گفتید، انجام میدهد: هیچ المانی دیزاین خودکار
ندارد، فقط یک گروه DashWoo در المنتور دیده میشود، هر المان کامل قابل نمایش/پنهانکردن
است، کارت دوم پنل حساب کاربری ساخته شد، و محتوای هر بخش از روی قالب رندر میشود.
هویت برند DashWoo و کارت معرفی محصول (webp) هم اضافه شد.
۱) هیچ دیزاین خودکاری داخل المان نیست
- کلید اصلی: «حساب کاربری → دیزاین» → «CSS خودکار DashWoo». خاموش باشد، بستهٔ استایل
DashWoo (assets/css/account.css) هرگز بارگذاری نمیشود. - کنارِ خاموشکردن، یک ریست خنثی اختیاری (
box-sizingو پاککردن پیشفرضها) هست؛ نه رنگ،
نه فاصله، نه گوشه. - تزریق متغیرهای
--dw-acc-*هم جدا قابل خاموشکردن است. - هر ابزارک یک مود «مارکآپ خام» (
dw-acc--bare) دارد: بدون هیچ کلاس تزئینی، فقط ساختار و
کلاسهای معنایی. هر کلاس و هر متغیر--dw-acc-*را در Elementor «Advanced → CSS Classes»
یا «Custom CSS» خودتان میدهید.
نتیجه: حالا المانها همانطور که خواستید «خام» بیرون میآیند و شما دیزاین را تعیین میکنید.
۲) یک گروه DashWoo در المنتور (بهجای دو گروه)
پنل المنتور قبلاً «dashwoo» و «dashwoo | dashwoo حساب کاربری» را کنار هم نشان میداد. علتش
دو مسیر ثبت مستقل بود. حالا:
- یک فهرست ابزارک در
Account\Elementor_Bridge::widget_classes()تعریف میشود و همان یک
فهرست هم روی قلاب جدید المنتور و هم روی قلاب قدیمی (elementor/widgets/widgets_registered)
ثبت میشود؛ - تنها یک دستهٔ «DashWoo» وجود دارد (۱۲ ابزارک حساب کاربری + آیکون)؛ دستههای اضافی فقط اگر
با فیلترdashwoo_elementor_extra_categoriesخودتان بخواهید ساخته میشوند.
۳) هر المان: چه چیزی نمایش داده شود و چه چیزی نه
هر ابزارک حساب کاربری یک بخش تازهٔ «چه چیزی نمایش داده شود» دارد:
- نمایش/پنهانکردن خودِ المان؛
- تکتک اجزا: آیکونها، عنوان، اطلاعات کنار عنوان (تعداد/تاریخ)، شمارنده، توضیح کوتاه، آواتار،
فلشها، دکمهٔ اقدام؛ - برای چه کسانی: همه / فقط کاربران واردشده / فقط مدیران سایت؛
- پنهان در: دسکتاپ / تبلت / موبایل (کلاسهای
dw-hide-*)؛ - منوی حساب کاربری
dw_icon_position(آیکون قبل یا بعد از متن) دارد.
منو پیشفرض بدون استایل است و کاملاً قابل ویرایش: ردیفهای ریپیتر (id، برچسب، آیکون،
نمایش/پنهان، شمارنده، و نشانی دلخواه — لینکهای بیرونی خودشان target="_blank" میگیرند)،
و شکلهای plain (خام) / menu / tabs / rail.
۴) کارت دوم پنل حساب کاربری
- پنل حالا دو کارت است: کارت منو (
dw-acc__panel-aside) کنار کارت محتوا
(dw-acc__panel-main)؛ اندازه و فاصلهٔ کارت منو با دو متغیر
--dw-acc-panel-asideو--dw-acc-panel-gapکنترل میشود (قابل تنظیم در تنظیمات و ویجت). - کلیک روی «سفارشها» → همان endpoint از طریق مسیر REST خودِ سایت
(dashwoo/v1/account/panel) خوانده میشود و فقط داخل کارت محتوا مینشیند؛ آدرس صفحه
هم همگام میشود (اگر خواسته باشید). دقیقاً همان کارکرد قبلی، این بار بدون رفرش کل صفحه. - کلیک روی هر ردیف سفارش → جزئیات همان سفارش (
view-order/<id>) در همان کارت، با دکمهٔ
«بازگشت به سفارشها». - سه حالت:
swap(پیشفرض)،modal(جزئیات روی صفحه) وstacked. - بدون جاوااسکریپت هم کار میکند: همهٔ لینکها
hrefواقعی دارند؛ اسکریپت فقط آن را
بهبود میدهد. صفحهبندی هم داخل کارت میماند (dw_page). - مهمان: کارت محتوا پیام ورود نشان میدهد، منو مثل فهرست مطالب میماند و هیچ دادهای لو
نمیرود. مالکیت سفارش بررسی میشود: مشتری هرگز سفارش دیگری را نمیبیند.
۵) قالبها (Template)
Account\Templates: ۱۱ بخش (منو، پیشخوان، سفارشها، جزئیات سفارش، دانلودها، آدرسها،
پرداخت، جزئیات حساب، پروفایل، فرمها، خروج) و برای هر بخش دستکم دو شکل
(کارت، جمعوجور، جدول، خط زمانی، شبکه، فهرست، دکمه، خام).- انتخاب قالب در تنظیمات → حساب کاربری → قالبها برای هر بخش، و در خود ویجت
(«پیشفرض تنظیمات» = بازگشت به قالب پیشفرض). - بازنویسی از پوسته: فایلهای شما مقدماند —
wp-content/themes/<پوسته>/dashwoo/account/orders--table.php(و فیلتر
dashwoo_account_template_candidates). - ابزارکهای endpoint دو کلید تازه دارند: منبع محتوا (
auto/native/dashwoo) و
قالب.
هویت DashWoo و کارت معرفی محصول
- لوگو و نشان برند:
logo.svg،logo-dark.svg،logo-mark.svg(هر دو کارت پنل در نشان
دیده میشود)، آیکونهای ۲۵۶ و ۵۱۲، و پالت همراستا با توکنهای دیزاین
(Account\Brand::palette()). - کارت معرفی محصول برای سمت پابلیک/فوتر فروشگاه، با فرمت webp و متن فارسی:
product-card.webp،product-wide.webp،product-square.webp
(همه محلی، بدون هیچ درخواست بیرونی). - تب تازهٔ DashWoo در انتخابگر آیکون المنتور با همان نشان و لوگوها.
کیفیت و آزمون
| قلم | مقدار |
|---|---|
| آزمونها | ۴۵۴ آزمون / ۵۰۵۷ assertion — همه سبز (۳۸ بخش / ۲۲۰ فیلد تنظیمات) |
| آزمون تازهٔ سرور | AccountPanelTemplatesTest + AccountPanelScriptTest (قرارداد اسکریپت ↔ مارکآپ) |
| آزمون مرورگر (اختیاری) | tests/js/panel.js — همان فایل JS داخل DOM واقعی (node + jsdom): ۳۵ بررسی، PASS |
| لینت | PASS — ۲۲۷ بررسی خودکار، ۰ اشکال (سینتکس جاوااسکریپت هم گِیت شده) |
| بسته | dashwoo-1.4.0.zip با BUILD-MANIFEST.txt و تأیید verify-build (۰ خطا) |
سه ایراد واقعی که در همین نسخه پیدا و رفع شد: مقدار CSS بارگذاری (data-dw-loading) با متن
بارگذاری قاطی میشد؛ کلیک روی صفحهبندی داخل کارت میتوانست به «پیشخوان» بپردازد (تطبیق آدرس
کوتاهترین پیشوند را میگرفت)؛ و خاموشکردن «عنوان» در ویجتهای endpoint اثری نداشت، چون
رندرکننده همیشه عنوان پیشفرض endpoint را برمیگرداند.