دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۶
  • مرداد

جلسه ۳۴ : اشیا Customizer وردپرس

  • دسته‌بندی‌ها :
جلسه ۳۴ : اشیا Customizer وردپرس

        با عرض سلام خدمت کاربران محترم سایت پی وی لرن.
        با جلسه ای دیگر از سری جلسات دوره جامع آموزش ساخت قالب وردپرس در خدمت شما هستیم.
        در این جلسه قصد داریم به معرفی اشیا Customizer وردپرس که به عنوان Customizer API نیز شناخته می‌شود.

        اشیا Customizer وردپرس

        Customize API یا Customizer ، یک فریمورک برای نشان دادن پیش‌نمایش تغییرات قالب به صورت زنده است.
        Customizer رابط یکپارچه ای برای سفارشی سازی بخش های مختلف قالب و سایت مانند رنگ ها، ابزارک ها، منو ها و … فراهم کرده است.

        Customizer شئ گراست.
        ۴ نوع شئ اصلی برای آن وجود دارد:

        • پنل ها (Panels)
        • بخش ها (Sections)
        • تنظیمات (Settings)
        • کنترل ها (Controls)

        تنظیمات (Settings)، عناصر UI (کنترل) که با تنظیمات دیگری که در پایگاه داده  ذخیره شده است، مرتبط می‌کند.
        بخش ها نگهدارنده (Container) های UI هستند تا سازمان دهی خودشان را بهبود بخشند.
        پنل ها نیز نگهدارنده هایی برای بخش ها هستند که اجازه می‌دهند چندین بخش با هم گروه بندی شوند.

        هر شئ Customizer توسط یک کلاس PHP نمایش داده و از طریق آن به کار گرفته می‌شود.
        تمام اشیاء نیز توسط شئ WP_Customize_Manager مدیریت می‌شوند.

        اشیا Customizer وردپرس - سفارشی سازی وردپرس

        اشیا Customizer وردپرس

        برای اضافه یا حذف کردن و تغییر هر شئ Customizer و همچنین دسترسی به مدیریت کننده Customizer، از هوک customize_register استفاده می‌کنیم.

        مثال : 

        مدیریت کننده Customizer، برای هر شئ متد های add، get و remove را فراهم می‌کند.

        مثال : 

        تنظیمات (Settings)

        تنظیمات پیش نمایش رنده و ذخیره سازی اشیاء Customizer را مدیریت می‌کنند.
        هر setting توسط یک شئ کنترل، مدیریت می‌شوند.

        مثال : 

        دو نوع اولیه تنظیمات وجود دارند: گزینه ها و تغییرات قالب.
        گزینه ها به صورت مستقیم در جدول wp_options دیتابیس وردپرس ذخیره می‌شوند و بدون توجه به قالب فعال، روی سایت اعمال می‌شوند.
        قالب ها باید به ندرت از این نوع تنظیمات استفاده کنند.
        تنظیمات قالب نیز مخصوص یک قالب خاص هستند. بیشتر تنظیمات قالب باید در این حال باشد.

        woedpress customizer api

        کنترل ها (Controls)

        کنترل ها هدف اصلی Customizer ها برای ایجاد رابط های کاربری هستند.
        به طور خاص، هر کنترل باید به یک تنظیمات (settings) مرتبط شوند و آن تنظیمات داده های وارد شده توسط کاربر را از طریق کنترل گرفته و در دیتابیس ذخیره می‌کند.
        کنترل ها می‌توانند توسط مدیریت کننده Customizer اضافه شوند و مجموعه ای قدرتمند از گزینه های رابط کاربری را ارائه دهند.

        مثال : 

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

        اصلی ترین نوع های رابط کاربری:

        • <input>
        • checkbox
        • textarea
        • radio
        • select
        • dropdown-pages

        بخش ها (Sections)

        بخش ها نگهدارنده (container) رابط کاربری برای کنترل های customizer ها هستند.
        تا وقتی که می‌توانید کنترل های سفارشی را به بخش های اصلی اضافه کنید، اگر بیشتر از یک گزینه داشته باشید، ممکن است بخواهید یک یا بیشتر بخش اضافه کنید.
        برای اضافه کردن یک بخش به از متد add_section شئ WP_Customize_manager استفاده کنید.

        مثال : 

        شما فقط به اضافه کردن فیلد هایی که می‌خواهید جایگزین مقادیر پیش‌فرض شوند، نیاز دارید.
        به طور مثال فیلد priority (اولویت) به صورت پیش‌فرض قابل قبول است و نیازی به تغییر ندارد. (این فیلد مربوط به ترتیب و مکان نمایش است)

        اگر می‌خواهید مکان بخش سفارشی خود را تغییر دهید، اولویت های اصلی بخش ها در جدول زیر قرار داده شده اند.

        PriorityIDعنوان
        ۲۰title_taglineSite Title & Tagline
        ۴۰colorsColors
        ۶۰header_imageHeader Image
        ۸۰background_imageBackground Image
        ۱۰۰nav_menusMenus (Panel)
        ۱۱۰widgetsWidgets (Panel)
        ۱۲۰static_front_pageStatic Front Page
        ۱۶۰default
        ۲۰۰custom_cssAdditional CSS

        پنل ها (Panels)

        پنل ها برای ارائه زمینه های (Context) مشخصی به customizer ها طراحی شده اند.
        مانند سفارشی سازی ابزارک ها، منو ها و … . یک تفاوت فنی مهم بین اشیاء پنل ها و بخش ها وجود دارد.

        قالب ها در بیشتر مواقع نباید پنل هایشان را فعال کنند.
        بخش ها نیازی به تو در تو شدن در پنل ها ندارند و هر بخش معمولا باید دارای چندین کنترل باشند.
        کنترل ها باید به بخش هایی که هسته ارائه می‌کند، اضافه شوند. مانند اضافه کردن گزینه های color به بخش colors.
        همانطور که گفتیم، پنل ها به عنوان زمینه هایی برای اضافه شدن ویژگی هایی مانند ابزارک ها، منو ها و یا پست ها طراحی شده اند نه به عنوان بسته بندی برای بخش های عمومی.

        مثال : 

        پنل ها برای اینکه نمایش داده شوند، حداقل باید دارای یک بخش باشند که ان بخش نیز باید دارای حداقل یک کنترل باشد.

         

        جلسه معرفی اشیا customizer وردپرس نیز به پایان رسید.

        در جلسه بعد به آموزش API جاوا اسکریپت customizer خواهیم پرداخت.

        QR:  جلسه ۳۴ : اشیا Customizer وردپرس
        به اشتراک بگذارید