فاکس بلاگ

چگونه افزونه وردپرس بسازیم؟‎

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

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

اما چگونه می توانیم یک افزونه وردپرسی بسازیم؟ آیا ساخت افزونه وردپرسی نیاز به دانش و تخصص بالایی دارد و یا اینکه با دانش کامپیوتری و برنامه نویسی متوسط هم می توان یک افزونه وردپرسی ساخت؟

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

چه دلیلی دارد که برای خود افزونه بسازیم؟

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

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

و اما دلیل دوم. تا حالا چند بار پیش آمده که کدی که در فایل functions.php قرار میدهید ایراد داشته باشد؟ یا مثلا شما آن را در محلی اشتباه در functions.php قرار داده باشید؟ و یا مثلا اشکالی در نحوه ی قرار گیری تگ های شروع و پایان php وجود داشته باشد؟ زیاد؟ پس میدانید میخواهم از چه چیزی صحبت کنم. زمان هایی پیش می آید که بخاطر قرار دادن یک کد اشتباه در functions.php باعث میشوید سایت شما به طور کامل از دسترس خارج شود و خودتان هم بیرون بخش مدیریت گیر می افتید. در این حالت باید حتما وارد هاست شده و یا با استفاده از FTP کنترل مسائل را به دست بگیرید. ولی اگر کد جدیدتان را در پلاگینی که مخصوص این کار ایجاد کرده اید قرار دهید، حتی اگر کد شما سراسر ایراد باشد، خود سیستم وردپرس این مسئله را فهمیده و به سادگی پلاگین را غیر فعال میکند. نتیجه می شود اینکه دسترسی شما به مدیریت حفظ میشود و بلایی هم سر سایتتان نخواهد آمد.

و نکته ی آخر هم اینکه هیچ کس از یک فایل functions.php غول پیکر که معلوم نیست در آن هر چیزی در کجا قرار گرفته است خوشش نمی آید.

بنابراین نتیجه ی استفاده از یک Site Specific Plugin (یا مثلا بهش بگوییم پلاگین کوچولو!) این است که سایت شما به پایداری بالاتری خواهد رسید و کارایی آن نیز بهبود خواهد یافت.

آموزش ساخت افزونه

استاندارهای پلاگین نویسی

برای ساخت افزونه وردپرس استاندارهایی وجود دارد که رعایت آنها مهم است.

اسم پلاگین

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

فایل‌های پلاگین

پلاگین در فولدری با نام خودش در شاخه‌ی wp-content/plugins قرار می‌گیرد مثلا اگر نام افزونه شما myplugin باشد، آنگاه تمامی فایل‌های آن در پوشه‌ی wp-content/plugin/myplugin قرار می‌گیرند.

حداقل یک فایل PHP هم اسم با خود پلاگین در پوشه آن وجود دارد. اگر تعداد فایل‌های پلاگین شما زیاد باشد، بهتر است که آن را به فولدرها و بخش‌های مختلف تقسیم کنید. مثلاً همه فایل‌های CSS در یک فولدر، همه فایل‌های PHP در یکجا و … . البته هر نوع تقسیم‌بندی منطقی دیگری که به نظرتان می‌رسد هم می‌توانید اعمال کنید.

فایل readme

فایل readme برای سایر توسعه‌دهندگان و کاربران خیلی مفید است. در این فایل توضیحاتی در مورد کاربرد و نحوه کارکرد پلاگین بنویسید.

هدر فایل‌های پلاگین

در بالای فایل اصلی پلاگین، باید اطلاعاتی در مورد افزونه‌تان ارائه کنید. این اطلاعات برای مصرف خود وردپرس است. یک نمونه هدر به صورت زیر است:

<?php

/**

* Plugin Name: My Plugin Name

* Plugin URI: http://mypluginuri.com/

* Description: A brief description about your plugin.

* Version: 1.0 or whatever version of the plugin (pretty self explanatory)

* Author: Plugin Author’s Name

* Author URI: Author’s website

* License: A “Slug” license name e.g. GPL12

*/

همان طور که می‌بینید، این اطلاعات به صورت کامنت نوشته می‌شوند. این اطلاعات در زیر پلاکین در صفحه افزونه‌های نصب شده درج می‌شوند.

بهتر است در بالای هر فایل PHP پلاگین تکه کد زیر را اضافه کنید:

defined( ‘ABSPATH’ ) or die();

استفاده از این کد برای جلوگیری از دسترسی غیرقانونی و حفظ امنیت پلاگین است.

ابزارهای مورد نیاز برای پلاگین نویسی

بهتر است که نوشتن و تست پلاگین را بر روی وبسایت اصلی انجام ندهید. یک نسخه local وردپرس ایجاد کنید و پس از نهایی شدن عملکرد پلاگین، آن را منتقل سازید. برای ایجاد نسخه local و برنامه نویسی به موارد زیر نیاز دارید:

  • یک نسخه از سرور WAMP یا XAMP که با جستجوی گوگل می‌توانید سایت مربوطه را پیدا کنید.
  • یک نسخه از وردپرس که از سایت آن قابل دانلود است.
  • یک تم وردپرس. حتی تم‌های پیش‌فرض هم مناسب هستند.
  • یک محیط برنامه‌نویسی PHP: می‌توانید از PHPStorm، Netbeans، PHPDesigner، Eclipse یا حتی notepad++ هم استفاده کنید.

مهارت‌های مورد نیاز برای پلاگین نویسی

  • آشنایی با مبانی برنامه نویسی و پایگاه داده
  • آشنایی با زبان PHP
  • آشنایی با امکانات خاص وردپرس (هوک، توابع خاص، فیلتر، نحوه عملکرد و …)
  • آشنایی با جاوا اسکریپت، JQuery و Ajax. (الزامی نیست و بستگی به نیازهای شما دارد)

شروع برنامه‌نویسی پلاگین

پس از اینکه مقدمات را فراهم کردید، می‌توانید شروع به نوشتن پلاگین نمایید. فرض کنید که نام افزونه‌ای که می‌خواهید بنویسید myplugin باشد. در این صورت باید مراحل زیر را انجام دهید:

  1. یک فولدر با نام myplugin در wp-content\plugins ایجاد کنید.
  2. یک فایل درون فولدر myplugin با نام php ایجاد کنید.
  3. پارامترهای لازم برای وردپرس را در بالای فایل PHP به صورت کامنت بنویسید.
  4. حال اگر مرورگر خود را باز کنید. وارد صفحه ادمین سایت local بشوید (localhost/your_wordpress_folder/wp-admin). در صفحه ادمین وردپرس وارد قسمت افزونه‌ها شوید. باید نام افزونه myplugin در لیست آمده باشد. حتی می‌توانید آن را فعال هم کنید. البته اتفاق خاصی نمی‌افتد.

به همین راحتی پلاگین شما ساخته شد. باقی کار بستگی به توان برنامه‌نویسی، نیازها و دانش شما از توابع و امکانات درونی وردپرس دارد.

Sample plugin to test LicenseBox is active, Thank you for purchasing.
  •      
  • ترمه شکوری
  • 07 مارس 2022
  • نظرات: ۰
توجه: پسورد تمامی فایل ها www.foxblog.ir می باشد.
۰ نظر به ثبت رسید ه است
نظری بدهید

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