استفاده از ایجکس در وردپرس (۱)

برای استفاده از ایجکس در وردپرس اول از همه باید یک فایل جاوااسکریپت و متصل کنیم به ایجکس وردپرس. یعنی چی؟!! به طور مثال شما یک فایل به نام script.js یا custom.js دارید که تمامی کدهای جاوا اسکریپت خودتون و اونجا وارد می کنید. باید اون یا هر فایل دیگه ای که مد نظر دارید […]

برای استفاده از ایجکس در وردپرس اول از همه باید یک فایل جاوااسکریپت و متصل کنیم به ایجکس وردپرس. یعنی چی؟!! به طور مثال شما یک فایل به نام script.js یا custom.js دارید که تمامی کدهای جاوا اسکریپت خودتون و اونجا وارد می کنید. باید اون یا هر فایل دیگه ای که مد نظر دارید و به ایجکس وردپرس متصل کنید. وردپرس می گرده و بر اساس قلاب و اکشنی که تعریف کردید محتویات اون فایل و برای درخواست ایجکسی که فرستادین چک می کنه. من یک نمونه کد برای شما در زیر قرار میدم:

 

wp_enqueue_script('custom', get_template_directory_uri() . '/assets/js/custom.js', array('jquery'), false, true);

در خط بالا اومدیم گفتیم که یه فایلی هست به نام custom.js که در ادرس “www.sitename.com/wp-content/theme-name/assets/js/custom.js”  وجود داره و حتما قبلش فایل jquery و اجرا کن و این فایل custom ورژن خاصی نداره و همچنین این فایل و در فوتر اجرا کن!! خیلی عجیب شد؟!! سینتکس وردپرس و که بخونید متوجه میشید!!!

 

wp_localize_script('custom', 'data' , array('ajax_url' => admin_url('admin-ajax.php')));

 

خط بالا هم میاد میگه اون فایل custom بود که اجراش کردیم، حالا قراره اونجا کد های ایجکس مون و بنویسیم. خود وردپرس یه فایل ایجکس داره که برای اینکه کدهامون و هندل کنیم باید ادرس اون فایل و بدیم. که در اینجا نوشتیم این فایل در “www.sitename.com/wp-admin/admin-ajax.php” وجود داره. اون data هم یک اسم خاص ه. میتونید هر چی دلتون خواست بذارید. البته یادتون باشه دیگه برای درخواست ایجکس باید از اون اسم استفاده کنید. در اخر هم یه خط کد دیگه هست که قلاب وردپرس ه:

 

add_action('wp_enqueue_scripts', 'function_name');

 

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

 

function function_name()
{
    wp_enqueue_script('custom', get_template_directory_uri() . '/assets/js/custom.js', array('jquery'), false, true);
    wp_localize_script('custom', 'data', array('ajax_url' => admin_url('admin-ajax.php')));
}
    add_action('wp_enqueue_scripts', 'function_name');

 

الان فایل custom.js آماده است که کد های ایجکسمون و هندل کنیم.