دوره مجازی پلاگین نویسی وردپرس (جلسه 23) : پلاگین آمار بازدید کاربران (جلسه پایانی) - کدهای نصب پلاگین

- visibility ١٣ mode_comment

به نام خدا و سلام. اگه یه پلاگین رو با موفقیت کدنویسی کردین حالا وقته بتونید این پلاگین رو سیستم کاربر نهایی تست کنید و برای این منظور باید کاربر نهایی بتونه به صورت کامل پلاگین شما رو روی سیستم خودش نصب کنه. در نظر بگیرید برای نصب پلاگین که کاربر نهایی بخواد خودش دیتابیس رو نصب کنه و مواردی از این قبیل که مطمئنا امکان پذیر نیست. به همین خاطر ما در این جلسه قصد داریم این مورد رو کاملا آموزش بدیم. در ابتدا کدهای ایجاد جدول های دیتابیس رو با استفاده از phpmyadmin مشخص می کنیم و بعدشم این کدها در فایل upgrade.php در داخل افزونه قرار میدیم. مواردی رو برای ست کردن نسخه دیتابیس هم به فایل اصلی افزونه اضافه می کنیم و در نهایت فایل uninstall.php رو برای حذف کردن افزونه ایجاد می کنیم.

 

در این جلسه خواهیم دید :

  • ایجاد کدهای SQL نصب جدول ها با استفاده از phpmyadmin
  • ایجاد فایل upgrade.php
  • ایجاد کدهای نسخه گذاری دیتابیس
  • ایجاد کدهای حذف کردن پلاگین
info توجه

این مطلب یک جلسه از دوره پلاگین نویسی وردپرس می باشد و برای مشاهده آن باید در دوره ثبت نام کنید.

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

comment دیدگاه کاربران

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

کیوان علی محمدی

سلام پلاگین های دیگه سایت رو بررسی کنید ببیند این پلاگین ها مشکلی ایجاد نمیکنن. تعداد کل بازدید یعنی تعدادی که صغحات شما بازدید شده و تکراری هم میتونه باشه ولی تعداد کل یکتا یعنی برای هر ip یکبار ثبت میشه.

حامد نجاری

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

کیوان علی محمدی

خوب این یعنی کوئری به روز رسانی دیابیس برای تعداد بازدید ها به درستی اجرا نمیشه. شما باید این خیلی دقیق تر بررسی کنید. ما این کد ها در اکشن init قرار دادیم شما در اون قسمت که کوئری داره اجرا میشه لاگ کوئری رو با دستور wpdb->last_query بگیرید و بررسی کنید ببینید اطلاعات داره به درستی ست میشه در کوئری یا نه.

alireza azami

با سلام و خسته نباشید
میخواستم بدانم جریان register_setting و add_settings_section چی هست؟
در کل اصلا برای چه کاری استفاده میشه و برای آپشن های بخش تنظیمات پلاگین به این ها نیازی هست یا خیر
و مورد بعدی اینکه در مورد قرار دادن settings_fields و do_settings_sections در فرم ها صحبتی نکردین و یا من متوجه نشدم.
آیا قرار دادن این توابع لزومی ندارد یا در موارد خاص لزوم پیدا میکنند؟
با تشکر فراوان

کیوان علی محمدی

سلام این توابعی که گفتین کلا مربوط به settings api وردپرس هستش که میشه برای ایجاد تنظیمات در صفحات مدیریتی وردپرس ازش استفاده کرد. استفاده از این ها الزامی نیست ولی میتونه حجم کد های مارو در بخش تنطیمات کاهش بده.

بله متوجه شدم ،
ممنون از راهنماییتون .

Mehdi Zeynali

سلام این فایل اپگرید انگار بعد نصب پلاگین جدولارو نمیتونه اضاف کنه

کیوان علی محمدی

سلامو خطایی نشون میده؟

Mehdi Zeynali

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

کیوان علی محمدی

کدهای mysql رو در phpmyadmin به صورت جداگانه اجرا کنید ببینید اونجا خطایی میده یا نه.

iranimij

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

کیوان علی محمدی

سلام دوست عزیز. احتمالا کدهای sql ساخت جدول ها رو کامل ارسال نکردیم. شما باید فیلد های اصلی جدول ها قابلیت auto increment و primary key رو براشون فعال کنید.از بخش ویرایش فیلد می تونید اینکارو انجام بدین.

نیاز به لاگین

برای ارسال دیدگاه و یا پرسیدن سوال خود در این قسمت، باید در سایت لاگین شوید.