روش صحیح استفاده از کدهای جاوا اسکریپت در پوسته های وردپرس

همانطور که احتمالا می دانید ، برای استفاده از کدهای جاوا اسکریپت در پوسته های وردپرس راه پیش بینی شده و استاندارد آن این هست که فایلتون رو توسط توابع وردپرس با یک نام خاص بارگزاری کنید تا به اشتباه اون فایل چندین بار در صفحه لود نشود. اما موضوع این مطلب بررسی این نیست که چگونه فایل ها یا کدها را بارگزاری کنیم . موضوع این مطلب این است که کدهای جاوا اسکریپت رو در وردپرس چگونه بنویسیم.
اولین مساله ی مهم در پوسته ها و پلاگین های وردپرس این است که برای جلوگیری از زجر کشیدن به هنگام کدنویسی بهتر است پیش از شروع کار مساله را تجزیه تحلیل کرده و بعد در اینترنت به دنبال توابع پیش بینی شده برای کارهای موردنیازتان به جستجو بپردازید و پس سپس شروع به کنویسی کنید.
به عنوان مثال در پروژه ی اخیر من افزونه ای نوشتم که اطلاعات زیادی رو از سرور باید در کدهای جاوا اسکریپت چاپ می کردم. در ابتدای کدنویسی افزونه مقادیر را مستقیما در فایل می نوشتم و خروجی را در متغییرهای جاوا اسکریپت چاپ می کردم!. ( شیوه ای غیر وردپرسی )
اما بعد از کمی کدنویسی و جایی که به بخش اجاکس پروژه رسیدم متوجه این موضوع شدم که واقعا وقت خودم رو تلف کرده بودم ! وبا تابع wp_localize_script آشنا شدم که بارها و بارها اون رو دیده بودم اما بدون توجه به کاری که انجام میده از کنارش رد میشدم.
کاری که این تابع برای شما انجام میده این هست که شما آرایه های پی اچ پی خودتون رو به اون میدید و یک کلید برای دسترسی به مقدار اون تعیین می کنید. و به وردپرس میگید که این کدها متعلق به فلان فایل هستند ( اول فایل رو در صف وردپرس می گذارید بعد این مقادیر رو ارائه می کنید ) و وردپرس به صورت خودکار ارایه های شما رو به صورت آبجکت درمیاره و شما توی کدهای جاوا اسکریپتتون به فراخوانی آبجکت ها به راحتی به مقادیر اونها دسترسی پیدا می کنید. اگر توضیحات من رو متوجه نشدید در سایت وردپرس توضیحات این تابع رو مطالعه کنید.
با استفاده از تابع بالا حتی یک خط جاوااسکریپت هم نیازی نیست که در فایل های پی اچ پی نوشته بشه و همه رو می تونید به فایل های مجزا انتقال بدید.
مساله ی بعدی متن های ثابت موجود در اسکریپت های شما هستند که با کمی وقت گذاشتن می تونید اونها رو به صورت قابل ترجمه دربیارید. اگرچه جاوااسکریپت با زبان فارسی مشکلی ندارد اما بهتر هست بتونیم از توابع وردپرس کمک بگیریم نسخه ی ترجمه شده ی اونها رو بارگزاری کنیم. مزیت دیگه ای که این کار داره این هست که اگر بخواهید در متن خودتون تغییراتی هرچند جزئی ایجاد کنید به راحتی می تونید اون متن رو در فایل زبان پوسته یا پلاگین خودتون پیدا کنید.
قابل ترجمه بودن یعنی چی ؟ یعنی در فایل های پی اچ پی برای استرینگ هاتون ارایه ایجاد کنید و با استفاده از توابع ترجمه مثل __ اونها رو قابل ترجمه کنید و بعد با تابعی که در بالا معرفی شد اونها رو توی کدهای جاوای خودتون فراخوانی کنید.
مساله سوم نام گذاری متغییرها و توابع هست. به هیچ عنوان از اسامی کوتاه و خلاصه استفاده نکنید ! اگر فکر می کنید با نام گذاری های تک حرفی یا کوتاه مانع از مفهوم بودن کدهاتون برای جلوگیری از کپی برداری می شوید به شدت در اشتباهید! تصور کنید شما و شخص دیگری دو کد جاوا اسکریپت با نام گذاری های کوتاه در پوسته یا پلاگین خودتون ایجاد می کنید و کاربری محصول هر دوی شما رو در سایت خود استفاده  بکند ! در این صورت به احتمال ۸۰ درصد دچار مساله تداخل خواهید شد. بله تصور نکنید که فقط کدهای پی اچ پی هستند که ممکن هست دچار تداخل بشوند! در یک سیستم مدیریت محتوایی مانند وردپرس که کاربرها به راحتی می توانند افزونه در سایت خود نصب کنند هر نوع کدی حتی سی اس اس ممکن است دچار مساله تداخل بشود.
مساله چهارم پیشگری از بارگزاری بی مورد است. چرا باید کدهای جاوااسکریپت متعلق به فرم تماس با ما که فقط در برگه ی تماس با ما کاربرد دارد ، در تمام صفحات سایت بارگزاری بشود ؟! در حالی که با یک شرط خیلی ساده می توانید مانع از بارگزاری های بی مورد و در نهایت کاهش حجم صفحات بشوید.

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

اگر مفید بود به اشتراک بگذارید ! کلوب فیس نما گوگل پلاس

یک نظر

  1. سلام.وبسایتتون فوق العادس.به کارتون ادامه بدین

جوابی بنویسید

ایمیل شما نشر نخواهد شدخانه های ضروری نشانه گذاری شده است. *

*