کلاس Initializer برای وردپرس – مقدمه:

در هشتمین قسمت از چک لیست طراحی قالب وردپرس ، می خواهیم تا با ساخت یک کلاس Initializer برای وردپرس ، کلیه تنظیمات اولیه قالب که با هوک after_setup_theme انجام می پذیرد را، بصورت شی گرا در قالب وردپرس تعریف نماییم.

همچنین می خواهیم در این کلاس Initializer برای وردپرس ، enqueue کردن فایل های های استایل و اسکریپت خود را در آن انجام داده و به وسیله آن، این فایل ها را در قالب وردپرس خود فراخوانی کنیم. استفاده از کلاس Initializer برای وردپرس به صورت مجزا، باعث خواهد شد فایل functions.php موجود در قالب وردپرس ما، شکل منظم تر و ساخت یافته تری داشته باشد.

کلاس Initializer برای وردپرس

بخش اول:  ساخت کلاس Initializer برای وردپرس

  • ساخت کلاس class-initializer.php در دایرکتوری app/classes

  • تعریف یک متد استاتیک با نام setup در داخل کلاس Initializer

  • قرار دادن کلیه کدهای مربوط به هوک after_setup_theme در داخل این متد، همانند register کردن منوها، اضافه کردن title tag ، اضافه کردن خاصیت post thumbnail برای پست ها و همین طور اضافه کردن سایز عکس ها در وردپرس

  • ساخت یک متد استاتیک با نام enqueue در داخل کلاس Initializer

  • فراخوانی کلیه تابع های مربوط به register کردن استایل های قالب وردپرس و اسکریپت های قالب وردپرس در متد enqueue در داخل کلاس Initializer

class Initializer
{
    public static function setup()
    {
        //Register main menus
        $menus = array(
            'top-menu' => 'Top menu for theme',
            'header-menu' => 'Header menu for theme',
            'footer-menu' => 'Footer menu for theme'
        );
        register_nav_menus($menus);

        //Add title tag
        add_theme_support('title-tag');

        // Add post thumbnail
        add_theme_support('post-thumbnails');

        //add custom image size
        add_image_size('main-thumbnail', 500, 375);
        add_image_size('smaller-thumbnail', 300, 225);

    }

    public static function enqueue()
    {

    if (!is_admin()) {
        wp_deregister_script('jquery');
        wp_register_script('jquery', 'https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js', false);
        wp_enqueue_script('jquery');
    }

    //Register your styles for slider
    wp_register_style('responsiveslider.style',get_template_directory_uri().'/css/msn.css');
    wp_enqueue_style('responsiveslider.style');

    //Register your script for slider
    wp_register_script('responsiveSlider.script', get_template_directory_uri() . '/js/slider.js', array('jquery'), null, true);
    wp_enqueue_script('responsiveSlider.script');
    wp_register_script('responsiveslides.script', get_template_directory_uri() . '/js/responsiveslides.min.js', array('jquery'), null, true);
    wp_enqueue_script('responsiveslides.script');
    wp_register_script('main-js', get_template_directory_uri() . '/js/main.js', array('jquery')
        , false, true);
    wp_enqueue_script('main-js');
    }
}

پس از ساخت کلاس Initializer ، شما می باید دو متد آن را در فایل functions.php قالب خود و به صورت زیر فراخوانی کنید

//Enqueue your styles and scripts
add_action('wp_enqueue_scripts', 'Initializer::enqueue');

//Setup your theme
add_action('after_setup_theme','Initializer::setup');

نکته مهم:

مطالب فوق از فیلم های آموزشی طراحی قالب وردپرس گروه آموزشی سون لرن، برداشت شده و با تغییراتی در آن، به عنوان چک لیست در اینجا قرار داده شده است.

هدف ما، مرتب سازی این مطالب و داشتن چک لیست برای انجام تکراری کارهایی است که به طور روزمره، برای پروژه های طراحی قالب وردپرس انجام می دهیم. برای دسترسی به فیلم این آموزش ها به صورت کامل، می توانید به سایت سون لرن مراجعه فرمایید.

راهنما برای چک لیست طراحی قالب وردپرس:

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

راهنما برای خواندن سایر مقالات سایت به صورت دسته بندی شده:

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