سرفصل ها
اگر قصد دارید وارد دنیای توسعه حرفهای وردپرس شوید، یادگیری آموزش ساخت افزونه وردپرس یکی از بهترین و ضروریترین قدمهاست. افزونهها این امکان را به شما میدهند که هر قابلیت دلخواهی را به سایت اضافه کنید، بدون اینکه به هسته وردپرس دست بزنید یا نگران بهروزرسانیهای بعدی باشید.
برخلاف تصور بسیاری از افراد، آموزش افزونهنویسی وردپرس قرار نیست پیچیده و ترسناک باشد! با یادگیری مفاهیم پایه و کمی تمرین، خیلی زود میتوانید امکانات اختصاصی برای سایت خود توسعه دهید یا حتی افزونههایی بسازید که قابلیت انتشار و فروش داشته باشند. این مهارت نهتنها قدرت فنی شما را بالا میبرد، بلکه میتواند به یک مسیر درآمدی جذاب هم تبدیل شود.
در این مقاله تصمیم داریم آموزش رایگان پلاگیننویسی وردپرس را بهصورت مرحلهبهمرحله ارائه دهیم تا بدون پیشنیازهای سنگین و با زبان ساده، وارد دنیای توسعه افزونههای وردپرسی شوید و اولین پلاگین خود را با اطمینان بسازید.
روش ساخت افزونه وردپرس
برای ساخت یک افزونه در وردپرس، لازم نیست از همان ابتدا با ساختارهای پیچیده روبهرو شوید. در سادهترین حالت، هر افزونه وردپرس فقط به یک پوشه اختصاصی و یک فایل PHP نیاز دارد؛ فایلی که هسته اصلی افزونه محسوب میشود و تمام منطق عملکرد پلاگین در آن نوشته میشود. با بزرگتر شدن پروژه و اضافه شدن قابلیتهای جدید، تعداد فایلها و پوشهها هم بیشتر میشود و ساختار افزونه حرفهایتر خواهد شد.
در این بخش قصد داریم با یک مثال عملی، فرآیند افزونهنویسی وردپرس را به شکل ساده و قابل فهم آموزش دهیم. افزونهای که قرار است بسازیم، زمان تقریبی مطالعه هر نوشته را محاسبه کرده و بهصورت خودکار در ابتدای پست نمایش میدهد. این نمونه آموزشی هم کاربردی است و هم کمک میکند با اصول اولیه توسعه افزونه در وردپرس، نحوه کار با فایلهای PHP و اتصال آنها به محتوای سایت آشنا شوید.
مراحل پلاگین نویسی وردپرس
۱- انتخاب نام اولین گام ساخت افزونه
۲- ایجاد پوشه افزونه
اولین مرحله برای ساخت افزونه وردپرس باید یک نام برای افزونه خود انتخاب کنید . ما قصد داریم یک افزونه با نام (زمان مطالعه) ایجاد کنیم. که کار ان محاسبه زمان مورد نیاز جهت مطالعه مقاله است. و عنوان انگلیسی آن را (time study) در نظر میگیرم.
۳- ایجاد اطلاعات شناسه افزونه
در داخل پوشه wp-content/plugins/ یک پوشه با نام time-study ایجاد میکنیم که پوشه اصلی افزونه است و داخل این پوشه یک فایل php با نام time-sutudy.php میسازیم. و در ان اطلاعات زیر را قرار میدهیم که اطلاعات اصلی افزونه است ، در ادامه تک تک این موارد را بررسی میکنیم.
4- توسعه کدهای افزونه
نکته مهم قبل از ادامه کار
در فرآیند ساخت افزونه وردپرس، بخشی وجود دارد که فقط برای معرفی افزونه به وردپرس استفاده میشود و هیچ تأثیری در اجرای کدها ندارد. این اطلاعات باید حتماً بهصورت کامنت PHP در ابتدای فایل اصلی افزونه نوشته شوند. اگر این بخش بهدرستی درج نشود، وردپرس افزونه شما را شناسایی نمیکند و عملاً انگار افزونهای وجود ندارد!
شناسنامه افزونه وردپرس چیست؟
شناسنامه افزونه مجموعهای از اطلاعات پایه است که وردپرس از آن برای نمایش افزونه در پیشخوان استفاده میکند؛ اطلاعاتی مثل نام افزونه، توضیح کوتاه، نویسنده و نسخه. مهمترین بخشهای این شناسنامه عبارتاند از:
Plugin Name
نام افزونه را مشخص میکند و میتواند فارسی یا انگلیسی باشد. این بخش حیاتیترین قسمت شناسنامه است؛ چون اگر وجود نداشته باشد یا اشتباه نوشته شود، افزونه در لیست افزونهها نمایش داده نخواهد شد.
Plugin URI
آدرس صفحه معرفی افزونه است. این لینک میتواند به سایت شخصی شما، صفحه محصول یا حتی صفحه افزونه در مخزن وردپرس اشاره کند.
Description
توضیح مختصری درباره کاری که افزونه انجام میدهد. این متن در پنل مدیریت وردپرس نمایش داده میشود و حتی میتوانید داخل آن از تگهای HTML مثل لینک استفاده کنید.
Author
نام توسعهدهنده یا تیم سازنده افزونه در این قسمت نوشته میشود؛ فرقی نمیکند شخص باشید یا شرکت.
Author URI
در این بخش لینک صفحه نویسنده افزونه قرار میگیرد تا کاربران بتوانند با شما آشنا شوند یا به سایتتان مراجعه کنند.
Version
شماره نسخه افزونه را مشخص میکند. هر بار که افزونه را بهروزرسانی میکنید، بهتر است این عدد هم تغییر کند تا مدیریت نسخهها سادهتر باشد.
License
نوع مجوز افزونه در این بخش تعریف میشود. افزونههای وردپرس باید با مجوز GPL سازگار باشند و معمولاً استفاده از GPLv2 or later یک انتخاب استاندارد و پیشنهادی است.
یک نکته
پارامترهای بیشتری هم برای شناسنامه افزونه وجود دارد، اما برای شروع یادگیری پلاگیننویسی وردپرس، همین موارد کاملاً کافی هستند. در مراحل بعدی و با حرفهایتر شدن افزونه، میتوانید اطلاعات تکمیلی را هم به آن اضافه کنید.
توجه مهم
پس از اینکه اطلاعات مورد نیاز افزونه را وارد کردید، پوشه افزونه را بهصورت فایل فشرده (ZIP) آماده کنید. سپس وارد پیشخوان وردپرس شوید و از مسیر افزونهها > افزودن، فایل افزونه را آپلود نمایید.
بعد از نصب، کافی است به بخش پیشخوان وردپرس > افزونهها > افزونههای نصبشده بروید تا افزونهای که ساختهاید را ببینید. حالا میتوانید آن را فعال کنید و نتیجه زحمات خود را مستقیماً در سایت وردپرسیتان مشاهده کنید.
این افزونه هیچ کاری انجام نمیدهد تا کد های اصلی آنرا بنویسیم و توسعه دهیم.
حالا به مهمترین بخش آموزش رایگان افزونهنویسی وردپرس میرسیم؛ یعنی جایی که وارد مرحله کدنویسی افزونه میشویم. در این مرحله قرار است با اضافه کردن چند خط کد به فایلtime-study.php
قابلیتی ایجاد کنیم که مدت زمان تقریبی مطالعه هر نوشته را محاسبه کرده و بهصورت خودکار در ابتدای پستها نمایش دهد.
برای ویرایش این فایل میتوانید از هر ویرایشگر کدی که با آن راحت هستید استفاده کنید؛ ابزارهایی مثل Notepad++ یا VS Code گزینههای مناسبی هستند. در ادامه، کد کامل افزونه را مشاهده میکنید که تمام بخشهای لازم برای انجام این کار را در بر میگیرد.
';
$output .= 'زمان تقریبی مطالعه: ';
$output .= $reading_time . ' دقیقه';
$output .= '';
return $output . $content;
}
// افزودن فیلتر به محتوای نوشتهها
add_filter( 'the_content', 'study_time_function' );
۵- فشرده سازی فایل افزونه
در نتیجه که پلاگین نویسی به اتمام رسید. کل پوشه اصلی افزونه را میتوانیم zip کنیم و به عنوان افزونه در هر سایت وردپرسی نصب و استفاده کنیم.
برای توسعه افزونه وردپرس چه چیز هایی یاد بگیریم؟
اگر قصد دارید آموزش برنامهنویسی افزونه وردپرس را بهصورت حرفهای یاد بگیرید، بهتر است مهارتها و دانش پایه زیر را داشته باشید تا مسیر یادگیری برایتان هموار و سریعتر شود:
- آشنایی با وردپرس و امکانات آن
قبل از هر چیز، باید با محیط وردپرس، نحوه کار با پیشخوان، مدیریت محتوا و ساختار قالبها آشنا باشید. این دانش پایه به شما کمک میکند تا درک بهتری از نحوه عملکرد افزونهها داشته باشید. برنامهنویسی PHP
افزونههای وردپرس با PHP نوشته میشوند، پس یادگیری این زبان برای شما ضروری است. دانستن مفاهیم پایهای مثل متغیرها، توابع، شرطها و حلقهها، پایهای محکم برای توسعه افزونهها فراهم میکند.- آشنایی مقدماتی با HTML و CSS
برای طراحی رابط کاربری افزونهها و نمایش دادهها در سایت، نیاز دارید با HTML و CSS آشنا باشید. حتی اگر طراحی حرفهای نباشید، همین دانش پایه برای ایجاد فرمها، دکمهها و استایلهای ساده کافی است. - آشنایی با توابع و هوکهای وردپرس
Codex وردپرس و مستندات آن منبع فوقالعادهای برای یادگیری توابع، اکشنها و فیلترهای وردپرس هستند. یادگیری این توابع به شما کمک میکند افزونهها را بهصورت استاندارد و بهینه توسعه دهید. - آشنایی با mysql
- دیتابیس وردپرس بر پایه MySQL است، پس داشتن دانش اولیه درباره ساختار جداول، کوئریها و نحوه ذخیره و بازیابی دادهها ضروری است. این مهارت برای مدیریت دادههای افزونه و ذخیره اطلاعات کاربران بسیار مهم خواهد بود.
- آشنایی با وردپرس و امکانات آن
با ترکیب این مهارتها، شما میتوانید افزونههایی کاربردی و حرفهای برای وردپرس توسعه دهید و تجربه کاربری سایت خود یا مشتریانتان را به شکل چشمگیری بهبود دهید.
جمع بندی
در این مقاله سعی کردیم بهصورت ساده و گامبهگام مراحل ساخت افزونه وردپرس را توضیح دهیم و با یک مثال عملی، شما را با فرآیند پلاگیننویسی آشنا کنیم. البته باید بدانید که این مثال برای یادگیری اصول اولیه است و افزونههای پیشرفتهتر نیاز به کدنویسی بیشتر و استفاده از توابع و هوکهای حرفهای وردپرس دارند تا امکانات پیچیدهتری را به سایت اضافه کنند.
اگر در طول آموزش با سوال یا ابهامی مواجه شدید، حتماً در بخش نظرات با ما در میان بگذارید. پاسخگویی به سوالات شما نه تنها باعث رفع ابهام میشود، بلکه تجربه یادگیری را برای همه کاربران ارزشمندتر و کاربردیتر میکند. اینطور است که میتوانید قدمبهقدم به یک توسعهدهنده حرفهای وردپرس تبدیل شوید.