wordpress plugins
wordpress plugins
wordpress plugins

آموزش ساخت پلاگین وردپرس

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

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

wordpress plugins

آموزش ساخت پلاگین وردپرس wordpress plugins

چگونه یک پلاگین وردپرس کار میکند پس از قرار دادن یک پلاگین وردپرس در پوشه”wp-content/plugins /” ، این پلاگین باید به طور خودکار برای نصب در دسترس باشد. هنگامی که یک پلاگین “فعال” می شود، به وردپرس می گوید که کمی از کد شما را بر روی “هر” صفحه بارگذاری کند(از جمله صفحه ادمین). به این دلیل است که اگر تعداد زیادی پلاگین های فعال شده داشته باشید، به علت بالا بودن تعداد کد ها، نصب وردپرس شما ممکن است بسیار آهسته باشد. از آنجا که وردپرس، زمانی که پلاگین فعال می شود به طور خودکار کدهای شما را بارگذاری می کند، می توانید از این فرصت با ضربه زدن به  API پلاگین وردپرس، استفاده کنید. شما همچنین می توانید به تگ های قالب وردپرس دسترسی پیدا کرده و یا یکی مخضوض به خودتان ایجاد نمایید. اگر می خواهید در محتوای پست هاو یا نظرات تغییر ایجاد کنید، پیشنهاد می کنم مقاله ی حلقه ی وردپرس را بخوانید. حلقه ی وردپرس، حلقه ای است که پست های شما را نمایش می دهد. برخی از تگ های قالب در خارج از این حلقه کار خواهند کرد، بنابراین ضروری است که بدانید کد شما دقیقا کجا در حال اجرا است. شما می توانید این کار را با استفاده از اکشن ها و فیلترها، که در پست های بعدی توضیح داده خواهد شد، کنترل کنید. ساختار پوشه پلاگین وردپرس تمامی پلاگین های وردپرس در دایرکتوری نصب خواهند شد. برخی از پلاگین نویسان به سادگی از یک فایل PHP برای پلاگین خود استفاده می کنند، اما من توصیه می کنم که همیشه یک پوشه برای ذخیره پلاگین خود ایجاد کنید. من به طور معمول پلاگین خود را در پوشه ای با این ساختار، ساختاربندی می کنم:

  1. نام پوشه ی پلاگین(نام پلاگین شما بدون هیچ فاصله یا کاراکتر ویژه ای)
  2. فایل PHP پلاگین اصلی
  3. پوشه ی JS (برای فایل های جاوا اسکریپت)
  4. پوشه ی CSS (برای فایل های StyleSheet)
  5. پوشه ی PHP (برای باقی فایل هایی که شامل PHP می شوند)

به عنوان مثال، در اینجا یک ساختار نمونه که خودم ایجاد کرده ام وجود دارد: • devlounge-plugin-series o devlounge-plugin-series.php o js o css o php می خواهم فقط فایل PHP اصلی را در داخل پوشه devlounge-plugin-series گذاشته، و فایل های دیگر را هم در پوشه مربوطه به خودشان قرار دهم. این ساختار میتواند به دیگر پلاگین نویسان، که کدهای شما را می بینند برای تشخیص اینکه کدام فایل، فایل اصلی پلاگین است و فایل های پشتیبانی در کجا قرار دارند، کمک کند. وردپرس همچنین قرار دادن تصاویر در دایرکتوری مربوط به خودشان و اضافه کردن یک فایل “مرا بخوانید” به پلاگینتان را توصیه می کند. فایل اصلی پلاگین وردپرس هنگامی که شما یک فایل پلاگین جدید را شروع می کنید، هفت خط اول خطوطی است که پلاگین را توصیف می کند.

خط ۳ به شما اجازه می دهد که برای پلاگین خود نام انتخاب کنید. خط ۴ به شما اجازه می دهد که محل پلاگین خود را در وب به یک کاربر نشان دهید. خط ۵ اجازه می دهد که نسخه فعلی را مشخص کنید. خط ۶ به شما اجازه می دهد تا نویسنده ی پلاگین را مشخص کنید. خط ۷ به شما اجازه می دهد که پلاگین خود را توصیف کنید. آنچه که در زیر آمده است مثال پر کردن کد است:

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

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

اگر طبقه بندی DevloungePluginSeries ایجاد شده باشد، همه ی کدهای فوق وجود آن را چک خواهند کرد. اگر چنین باشد، یک متغیر به نام $dl_pluginSeriesبا یک مثال از طبقه بندی DevloungePluginSeries ایجاد می شود. راه اندازی عملیات ها و فیلترها پلاگین وردپرس قسمت بعدی کد، جا نگهدارنده ای برای عملیات ها و فیلترها در وردپرس (که من در پست بعد به آن می پردازم) ایجاد می کند.

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

  1. Managing Plugins
  2. Plugins Panel (png)
  3. Add Functionality to your Blog
  4. Writing a Plugin
  5. WordPress Plugin API
  6. WordPress Template Tags
  7. The WordPress Loop
  8. WordPress Actions
  9. WordPress Filters

منبع : hamyarwp.com

Mohammad Pishdar

I have B.A. in Software Engineering and I'M a professional programmer of WordPress software

۶ پاسخ

  1. ROMINA گفت:

    سلام خواهش میکنم پاسخ سوال منو بدید
    برای سایتهایی که دو تا مدیر دارن …امکانش هست که نقش کاربری یکی از مدیرها توسط مدیر دیگه تغییر پیدا کنه(مثلا از مدیر به نویسنده تغییرش بده) و یا اون مدیر حذف بشه
    کاری هست که بشه امکان تغییر نقش کاربری و امکان حذف یکی از کاربرا برداشت؟ (هر چیزی غیر از افزونه)
    تو رو خدا کمکم کنید…:(

  2. ROMINA گفت:

    سلام خواهش میکنم پاسخ سوال منو بدید
    برای سایتهایی که دو تا مدیر دارن …امکانش هست که نقش کاربری یکی از مدیرها توسط مدیر دیگه تغییر پیدا کنه(مثلا از مدیر به نویسنده تغییرش بده) و یا اون مدیر حذف بشه
    کاری هست که بشه امکان تغییر نقش کاربری و امکان حذف یکی از کاربرا برداشت؟ (هر چیزی غیر از افزونه)
    تو رو خدا کمکم کنید……..:(

    • اگه کاربری دسترسی مدیر داشته باشه می تونه مدیر ، مشترک و نویسنده های وب سایت رو حذف و یا ویرایش کنه ، برای جواب این سئوال بهترین راه این بود که یک کاربر با دسترسی مدیر ایجاد می کردید و باهاش سعی می کردید که عملیات حذف و ویرایش رو انجام بدید در این صورت زودتر به جواب سئوالتون می رسیدید

  3. با سلام و تشکر از مطلب بسیار خوبتون ، در جواب کاربر بالا که با اسم رومینا نظر دادن من می تونم بگم که اگه کاربری دسترسی مدیر داشته باشه می تونه مدیر ، مشترک و نویسنده های وب سایت رو حذف و یا ویرایش کنه ، برای جواب این سئوال بهترین راه این بود که یک کاربر با دسترسی مدیر ایجاد می کردید و باهاش سعی می کردید که عملیات حذف و ویرایش رو انجام بدید در این صورت زودتر به جواب سئوالتون می رسیدید

  4. حمید گفت:

    من مدتها بود دنبال چنین آموزشی می گشتم

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دوازده + یازده =