0 دانشجو
99,000 تومان

به دوره آموزش افزونه نویسی وردپرس خوش آمدید!

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

قبل از شروع و معرفی دوره بد نیست با ضرورت یادگیری افزونه نویسی در وردپرس هم آشنا شویم و بهتر است قبل از آن با خود وردپرس و مفهوم افزونه آشنا شویم.

وردپرس چیست؟

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

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

اما کار به همینجا ختم نشد. پس از تولد WP Rest API، حالا وردپرس تبدیل شد به یک Headless CMS یا سیستم مدیریت محتوای بدون سر! و دوباره دریای عظیمی از فرصت ها و ایده ها را به روی توسعه دهندگان باز کرد. حتی آنهایی که از PHP متفر بودند و به همین دلیل هم سراغ وردپرس نمی رفتند!

با همه این توضیحات، یک چیز مهم دیگر هم در مورد وردپرس اثبات شده است: حتی اگر زیباترین پوسته های دنیا را هم برای وردپرس بسازید، وردپرس بدون حضور افزونه هایش حرف زیادی برای گفتن ندارد! پس برویم سراغ افزونه ها .

افزونه ها چیستند و در وردپرس چه می کنند؟

حتما کارتون کاراگاه گجت را دیده اید. کاراگاه گجت پر بود از انواع و اقسام گجت و میشد گفت کاراگاه گجت بدون گجت هایش حرفی برای گفتن نداشت. وردپرس هم دقیقاً مانند کاراگاه گجت است (البته با این تفاوت که بدون افزونه هایش، کاملا دست و پا بسته نیست و باز هم حرفی برای گفتن دارد ولی خوب نه در همه زمینه ها!)

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

به عنوان نمونه، افزونه ووکامرس را در نظر بگیرید. اگر روزی قصد داشتید سایت وردپرسی خود را به فروشگاه تبدیل کنید باید این را در نظر داشته باشید که وردپرس در هسته خودش چنین امکانی را در اختیارتان نمی گذارد و برای تبدیل سایت به فروشگاه باید این قابلیت را به وردپرس اضافه کنید، و خبر خوب اینکه وردپرس عاشق اضافه شدن قابلیت های جدید به خودش است (درست مثل کاراگاه گجت)! شما به راحتی می توانید با استفاده از افزونه ووکامرس، سایت خود را به فروشگاه تبدیل کنید. در اصل، شما با استفاده از مجموعه ای از کدها و تزریق این کدها به وردپرس، قابلیت های جدیدی را به وردپرس اضافه می کنید.

حال این مورد را در نظر بگیرید که حتی می توانید قابلیت های بیشتری به قابلیت های اضافه شده به وردپرس اضافه کنید! به عنوان نمونه، فرم ساز Gravity Forms را در نظر بگیرید. کار این افزونه ساخت فرم های قدرتمند توسط سیستم مدیریت محتوای وردپرس است. به وسیله این فرم ساز قادر خواهید بود انواع و اقسام فرم های مورد نیاز سایت خود را طراحی کنید و حتی سامانه ثبت نام با امکانات متنوع راه اندازی کنید. حالا افزونه ای با نام Gravity Flow وجود داره که یک قابلیت جدید به افزونه Gravity Forms اضافه می کند: قابلیت ایجاد سیستم گردش کار! و جالبتر اینکه برای خود Gravity Flow هم افزونه های دیگری وجود دارد! همین قابلیت بسط پذیری فوق العاده بالای وردپرس، یعنی تبدیل ایده های شما به یک محصول عالی. پس اجازه محبوس ماندن ایده هایتان را به خودتان ندهید. بگذارید پر و بال بگیرند و به لطف سیستم کاملاً بسط پذیر و فوق العاده وردپرس، تبدیل به محصول بعدی فوق العاده بازار وردپرس شوند!

آمار و ارقام جالبی از وردپرس

وردپرس به عنوان یک سیستم مدیریت محتوایی که امروزه از آن یاد می کنیم از بدو تولد تا به امروز دستخوش تغییرات فراوانی بوده و با معرفی هر نسخه عمده، یک ویژگی منحصر به فرد و عالی هم به آن اضافه شده است و نکته جالب در مورد وردپرس این است که همواره یک روند صعودی را به خود دیده و آمار و ارقام هم دقیقا همین مورد را تایید می کنند به طوری که طبق آخرین آمار سال 2019 از مراجع رسمی و معتبر بیش از 34 درصد از کل وب سایت های دنیا از وردپرس قدرت گرفته اند! این رقم، واقعا رقم بزرگیست! این در حالیست که 60 درصد از سهم کل بازار سیستم های مدیریت محتوای دنیا را نیز وردپرس در دست دارد و روزانه بیش از 500 سایت وردپرسی جدید متولد می شوند. بیش از 55000 افزونه در مخزن وردپرس قرار گرفته و جالب است که بدانید که 22 درصد از 1 میلیون فروشگاه اینترنتی برتر دنیا از ووکامرس قدرت گرفته اند!

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

پیش نیاز دوره

حالا قرار است در این راه چه چیزهایی یاد بگیریم و گذراندن این دوره چه پیش نیازهایی لازم دارد؟ بهتر است ابتدا برویم سراغ پیش نیازهای این دوره:

برای گذراندن این دوره لازم است که:

  • با زبان برنامه نویسی PHP آشنا باشید.
  • با محیط کار وردپرس کار کرده باشید و آشنایی لازم با آن را داشته باشید. می توانید از دوره ویدیویی آموزش کامل مدیریت وردپرس استفاده کنید .
  • با زبان نشانه گذاری HTML آشنا باشید .

همین! توسعه افزونه و پوسته در وردپرس به حدی ساده است که برنامه نویسان معمولاً پس از گذراندن دوره های مقدماتی PHP می توانند توانایی خود را در این زمینه محک بزنند. البته ناگفته نماند هرچه بیشتر به زبان برنامه نویسی PHP مسلط تر باشید یادگیری و توسعه افزونه و پوسته در وردپرس برایتان راحت تر خواهد بود. در این مسیر اگر به HTML/CSS و جاوا اسکریپت هم مسلط باشید قطعا نتیجه بهتری می گیرید.

ما در این دوره اصول افزونه نویسی را در کنار هم خواهیم آموخت و توسط همین اصول می توانید هر ایده ای که در سر داشتید را به افزونه تبدیل کنید. حتی می توانید برای افزونه های مطرح و محبوب، افزونه بسازید.

در این دوره چه چیزی خواهیم آموخت؟

اجازه بدهید به صورت مورد به مورد، موارد مطرح شده در این دوره را باهم مرور کنیم:

سرفصل دوره آموزشی افزونه نویسی در وردپرس

قسمت 1 – مقدمات ساخت افزونه

در قسمت اول از دوره آموزش افزونه نویسی وردپرس، با مقدمات ساخت افزونه آشنا می شویم. فایل header افزونه و همچنین header field های مناسب را می نویسیم. با ساختار صحیح پوشه بندی و نامگذاری پوشه ها و فایلهای افزونه آشنا می شویم و در نهایت هم افزونه ساخته شده را در پیشخوان وردپرس فعال می کنیم.

قسمت دوم: آشنایی با هوک ها و نمایش یک متن ثابت در زیر تمامی پست ها

در قسمت دوم با مفهوم هوک یا قلاب در وردپرس آشنا می شویم. انواع هوک یعنی Action Hook و Filter Hook را بررسی می کنیم و در نهایت توسط فیلتر the_content متن ثابتی را در زیر تمامی نوشته ها اضافه می کنیم.

نکته مثبت در این دوره این است که شما به یکباره با مفاهیم و APIهای کار با افزونه ها آشنا نمی شوید بلکه رفته رفته و مرحله به مرحله توسعه افزونه های وردپرسی را می آموزید و به این ترتیب درک صحیحی از تمامی موارد و مراحل توسعه افزونه خواهید داشت. این مورد دقیقاً از قسمت دوم شروع می شود و رفته رفته و قسمت به قسمت، تمامی API های افزونه نویسی به صورت کامل تدریس خواهد شد.

قسمت سوم: تفاوت بین Action ها و Filter ها در وردپرس

در این قسمت از دوره به صورت کامل و با ارائه مثال های مفهومی، با هوک های اکشن و فیلتر در وردپرس آشنا می شوید. این قسمت، مکمل قسمت دوم است و به صورت تفصیلی تمامی مفاهیم در این مورد تدریس خواهد شد به طوریکه کوچکترین مورد ناگفته ای از مفهوم اکشن ها و فیلترها در وردپرس باقی نمی ماند.

قسمت چهارم: آشنایی با APIهای وردپرس جهت پلاگین نویسی

در این قسمت با انواع APIهای وردپرس جهت افزونه نویسی وردپرس آشنا می شویم و تفاوت توسعه افزونه و پوسته را تحت APIهای مختلف بررسی خواهیم کرد و می آموزیم که برای توسعه افزونه های وردپرس باید از Plugins API، Settings API و Options API استفاده کنیم و با استاندارد وردپرس برای توسعه افزونه و پوسته آشنا می شویم.

قسمت پنجم: شروع کار با Options API

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

 قسمت ششم: اضافه کردن آمار بازدید سایت به افزونه

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

قسمت هفتم: اضافه کردن آمار بازدید سایت به افزونه – بخش دوم

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

قسمت هشتم: اضافه کردن آمار بازدید پست ها در زیر هر نوشته

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

قسمت نهم: اضافه کردن آمار بازدید پست ها در زیر هر نوشته – بخش دوم

در این قسمت می آموزیم که چگونه رابط کاربری کنترل نمایش یا عدم نمایش آمار بازدید هر نوشته را توسط Options API به افزونه اضافه کنیم. در این قسمت خواهیم دید که چگونه هوک ها و Options API بدون تداخل در کار یکدیگر، وظیفه خود را به درستی انجام می دهند.

قسمت دهم و یازدهم: کار با Settings API

همانطور که قبلا اشاره شد، این دوره رفته رفته با مباحث پیشرفته تر تکمیل می شود و در قسمت دهم و یازدهم این دوره و آن هم پس از تسلط کامل بر Options API، افزونه ساخته شده را یکبار دیگر و این بار توسط Settings API از نو بازنویسی می کنیم و همانطور که موارد امنیتی را در هنگام کار با Options API رعایت کرده بودیم، اینبار هم توسط Settings API این کار را انجام می دهیم و مقایسه ی کاملی از نظر جنبه های فنی این دو API را خواهیم داشت و می آموزیم که اگر جنبه های امنیتی کار با Options API را رعایت کنیم، پیاده سازی همین جنبه ها توسط Settings API تا چه حد ساده تر خواهد بود و همینطور خواهیم دید که پردازش فرم توسط Settings API تا چه حد نسبت به Options API ساده تر خواهد بود.

در قسمت یازدهم تمرکز ویژه ای روی تابع register_setting خواهیم داشت و بحث option_group و همچنین توابع sanitize کردن را به صورت کاملاً ساده و مفهومی بیان خواهیم کرد به طوریکه شما پس از گذراندن این قسمت، هرگز با یکی از مبهم ترین بخش های Settings API یعنی register_setting و option group و ارتباط آن با بخش های دیگر مشکلی نخواهید داشت و بلکه درک کاملاً درستی از آن کسب خواهید کرد.

قسمت دوازدهم: نحوه کار با تابع add_settings_section

در این قسمت با ساده ترین تابع Settings API یعنی add_settings_section و نحوه کارکرد آن آشنا می شویم.

قسمت سیزدهم: نحوه کار با تابع add_settings_field

در قسمت سیزدهم و ماقبل پایانی این دوره آموزشی با تابع add_settings_field آشنا می شویم و خواهیم دید که به چه شکلی می توان فیلدهای فرم را به صفحه تنظیمات افزونه اضافه کرد. این قسمت، آخرین قسمت از توسعه افزونه ساخته شده در قسمت های قبلی بود و پس از پایان این قسمت، درک کامل و درستی از نحوه افزونه نویسی در وردپرس خواهید داشت.

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

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

شما پس از گذراندن این دوره، آماده نوشتن و توسعه افزونه های مختلف برای وردپرس خواهید بود و اگر API های دیگر وردپرس را با API های افزونه نویسی وردپرس مخلوط کنید و کمی هم چاشنی HTML/CSS و جاوا اسکریپت به آن اضافه کنید قطعا هر ایده ای که داشته باشید را به راحتی می توانید به افزونه های وردپرس تبدیل کنید.

مدرس

User Avatar اسماعیل آجریان

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