پیش از نصب جم پک، ابتدا مشخص کنید از کدام بخشها استفاده میکنید. نیاز یک سایت محتوایی که فقط تقویم شمسی میخواهد، با فروشگاهی که پرداخت، پیامک و اتصال اپلیکیشن دارد یکسان نیست.
در این راهنما، وضعیت وردپرس و هاست، وابستگی به ووکامرس و چند محدودیت مهم را بررسی میکنیم. مراحل نصب و ثبت لایسنس در راهنمای نصب، فعالسازی و ثبت لایسنس آمدهاند.
۱. حداقلهای اعلامشده را بررسی کنید
حداقلهای زیر در اطلاعات افزونه اعلام شدهاند:
| بخش | حداقل اعلامشده | چه زمانی لازم است؟ |
|---|---|---|
| وردپرس | ۶.۴ | برای نصب جم پک |
| PHP | ۷.۴ | برای اجرای افزونه روی هاست |
| ووکامرس | ۸.۰ | برای بخشهای وابسته به ووکامرس |
داشتن این حداقلها برای بررسی سازگاری کافی نیست. قالب، افزونههای دیگر، نوع تسویهحساب و تنظیمات هاست هم بر عملکرد قابلیتها اثر دارند؛ همه ترکیبهای نسخههای بالاتر آزمایش نشدهاند.
نسخه PHP را از اطلاعات هاست یا بخش اطلاعات سلامت سایت در پیشخوان وردپرس بخوانید. در فروشگاه، گزارش وضعیت ووکامرس نیز برای جمعآوری اطلاعات محیط کاربرد دارد.
اگر نسخهای پایینتر از حداقل است، پیش از نصب با مدیر فنی سایت درباره ارتقای آن هماهنگ کنید.
افزونه به ووکامرس وابسته است؟
ووکامرس برای تمام بخشهای جم پک الزامی نیست. ابزارهای عمومی، مثل تقویم شمسی وردپرس و افزایش سرعت پیشخوان، بدون ووکامرس اجرا میشوند.
در مقابل، بخشهایی مانند قوانین سبد خرید، درگاههای پرداخت، استانها و شهرهای نشانی فروشگاه، روشهای ارسال، فاکتور و تبهای حساب کاربری به ووکامرس وابستهاند.
اگر ووکامرس ندارید، پیشنیاز راهنمای هر قابلیت را بخوانید. نمایش یک بخش در پنل بهتنهایی به معنی قابلاستفادهبودن آن نیست. برای فرم ورود و اتصال اپلیکیشن هم وابستگیها را در راهنمای مربوط بررسی کنید.
۲. نوع فایل افزونه و شرایط هاست را مشخص کنید
فایل معمولی یا رمزگذاریشده
نیاز به ionCube Loader به نوع فایل تحویلی بستگی دارد. اگر بسته افزونه رمزگذاریشده باشد، این افزونه PHP باید روی همان نسخه PHP که سایت با آن اجرا میشود فعال باشد.
فعالبودن ionCube برای یک نسخه دیگر PHP روی هاست کافی نیست. از پشتیبانی هاست بخواهید وضعیت آن را برای PHP فعال دامنه و سازگاری آن با بسته تحویلی بررسی کند.
اگر بسته رمزگذاریشده باشد و Loader روی هاست فعال نباشد، بخشهای افزونه اجرا نمیشوند؛ حتی اگر نام جم پک در فهرست افزونهها دیده شود.
نیاز به ionCube را از مشخصات بسته دریافتی بررسی کنید. بسته معمولیِ بررسیشده این نیاز را ندارد، اما شرایط بسته رمزگذاریشده متفاوت است.
ارتباط با سرویسهای بیرونی
برای امکاناتی مانند پرداخت، ارسال پیامک و اعلان اپلیکیشن، هاست باید بتواند با سرویس مربوط ارتباط برقرار کند. فعالبودن افزونه، جای دسترسی شبکه یا اطلاعات اتصال معتبر را نمیگیرد.
قبل از استفاده از این بخشها، بررسی کنید:
- هاست ارتباط خروجی موردنیاز سرویس را مسدود نکرده باشد.
- دامنههای سرویس از سمت سرور قابل شناسایی باشند و ارتباط امن با آنها برقرار شود.
- اگر سرویس به IP یا دامنه مشخص وابسته است، اطلاعات سایت فعلی در حساب سرویس ثبت شده باشد.
- برای پرداخت، نشانی بازگشت و بررسی تراکنش از سمت بیرون قابلدسترسی باشد؛ صفحه رمزدار یا محدودیت امنیتی نباید مسیر لازم را مسدود کند.
برای این بررسی، کلیدها، گذرواژهها یا اطلاعات حساب سرویس را در تصویر، ویدئو یا پیام عمومی قرار ندهید.
آیا همه افزونههای PHP برای همه قابلیتها لازماند؟
خیر. نیاز هر بخش را جدا بررسی کنید. مثلاً برای امضای درخواست اعلانهای Firebase به OpenSSL نیاز است. این شرط به همان قابلیت مربوط میشود و برای تقویم شمسی لازم نیست.
درگاه بهپرداخت ملت نیز در کد، هم مسیر استفاده از SoapClient دارد و هم مسیر جایگزین از طریق ارتباط HTTP وردپرس. بنابراین نبودن افزونه SOAP را بهتنهایی دلیل قطعی غیرقابلاستفادهبودن این درگاه ندانید. نتیجه اتصال باید طبق راهنمای درگاه بهپرداخت ملت بررسی شود.
۳. سازگاری فروشگاه را برای قابلیت موردنظر بررسی کنید
ذخیرهسازی سفارشها با HPOS
جم پک سازگاری با HPOS را اعلام کرده است. HPOS روش ذخیرهسازی سفارشها در جدولهای اختصاصی ووکامرس است.
این اعلام مربوط به جم پک است؛ سازگاری افزونههای دیگر فروشگاه را تأیید نمیکند. اگر فروشگاه از HPOS استفاده میکند، عملیات مربوط به قابلیتهای انتخابی را در همان حالت بررسی کنید؛ برای نمونه، فاکتور سفارش یا اعلان تغییر وضعیت سفارش باید با سفارش آزمایشی بررسی شود.
برای بررسی اولیه جم پک، حالت ذخیرهسازی سفارشهای فروشگاه فعال را بدون برنامه تغییر ندهید. محیط آزمایشی باید تا حد امکان با تنظیمات فروشگاه اصلی یکسان باشد.
سبد خرید و تسویهحساب کلاسیک یا بلوکی
جم پک سازگاری کلی با سبد خرید و تسویهحساب بلوکی را اعلام کرده و برای نمایش درگاههای پرداخت در این صفحات، کد اتصال دارد.
با این حال، اعلام سازگاری کلی، تضمین عملکرد یکسان تمام ابزارهای فروشگاهی در صفحه بلوکی نیست. هر قابلیتی که فیلد، پیام یا رفتار صفحه را تغییر میدهد باید جدا بررسی شود.
مثلاً فهرست شهرهای وابسته به استان از طریق فیلدهای کلاسیک ووکامرس پیادهسازی شده است. عملکرد آن در تسویهحساب بلوکی هنوز تأیید نشده است. پیش از استفاده، راهنمای استانها و شهرهای ایران را بخوانید و فهرست شهر را در صفحه پرداخت فروشگاه خود آزمایش کنید.
پیش از راهاندازی، این موارد را مشخص کنید:
- صفحه فعلی فروشگاه کلاسیک است یا بلوکی؟
- آیا صفحهساز یا افزونه دیگری فرم تسویهحساب را جایگزین کرده است؟
- آیا راهنمای قابلیت موردنظر همین نوع صفحه را پوشش میدهد؟
- آیا یک سفارش آزمایشی، مسیر انتخاب نشانی، ارسال و پرداخت را تا پایان طی میکند؟
پیش از استفاده عمومی، قابلیت را در سایت خود آزمایش کنید؛ وجود کد اتصال، جای آزمون عملی را نمیگیرد.
۴. نیازمندیهای اختصاصی را جدا آماده کنید
همه این موارد برای همه سایتها لازم نیستند. فقط ردیفهای مرتبط با قابلیتهای انتخابی خود را بررسی کنید.
| کاربرد | چه چیزی باید آماده باشد؟ | راهنمای مرتبط |
|---|---|---|
| پرداخت اینترنتی | حساب پذیرنده، اطلاعات اتصال و مسیر بازگشت قابلدسترسی | تنظیمات مشترک درگاهها |
| اعلان پیامکی سفارش | ووکامرس، مجوز استفاده از قابلیت و پنل پیامکی با روش ارسال پشتیبانیشده | مرکز پیامک ووکامرس |
| ورود با کد پیامکی | فرم ورود جم پک، مجوز استفاده از قابلیت و ارسال کد از پنل موردنظر | ورود و ثبتنام با کد یکبارمصرف |
| ورود بیومتریک | فرم ورود مناسب، HTTPS و مرورگر و دستگاه دارای پشتیبانی لازم | ورود بیومتریک |
| اتصال اپلیکیشن | اپلیکیشن متناسب با مسیرهای ارتباطی جم پک و تنظیمات سرویسهای مورد استفاده | اتصال و مدیریت اپلیکیشن |
HTTPS و ورود بیومتریک
برای استفاده عمومی از ورود بیومتریک، صفحه ورود باید با HTTPS و دامنه درست سایت باز شود. مرورگر و دستگاه نیز باید از روش تأیید مورد استفاده پشتیبانی کنند.
داشتن HTTPS بهتنهایی کافی نیست. فرم ورود، مرحله نمایش دکمه و روش ورود جایگزین هم باید آماده باشند. روشنکردن یک گزینه، دکمه بیومتریک را به تمام فرمهای ورود سایت اضافه نمیکند.
پنل پیامکی و روش ارسال
صرف داشتن حساب پیامکی کافی نیست. روش ارسال موردنظر شما باید هم در پنل و هم در اتصال جم پک پشتیبانی شود. ارسال مستقیم، ارسال الگویی و اطلاعات موردنیاز آنها در همه پنلها یکسان نیستند.
برای انتخاب و آمادهسازی اطلاعات اتصال، راهنمای پنل همان سرویس را بخوانید. ارسال موفق یک پیام آزمایشی نیز جای بررسی رویداد واقعی، مانند تغییر وضعیت سفارش یا ارسال کد ورود، را نمیگیرد.
لایسنس قابلیتهای Pro
لایسنس Pro، پیشنیاز همه ابزارهای جم پک نیست. وضعیت رایگان یا Pro بودن را برای قابلیت موردنظر بررسی کنید.
همچنین فعالبودن لایسنس، حساب درگاه پرداخت یا پنل پیامکی ایجاد نمیکند و اطلاعات اتصال آنها را خودکار تکمیل نمیکند. مجوز افزونه و آمادهبودن سرویس بیرونی دو بررسی جدا هستند.
۵. ابزارهای هموظیفه را بررسی کنید
تداخل فقط به نام افزونه مربوط نیست؛ مهم این است که دو ابزار همزمان روی یک بخش کار کنند. پیش از فعالکردن هر ماژول، ببینید چه افزونه یا کدی همین وظیفه را انجام میدهد.
مواردی که ارزش بررسی دارند:
- چند ابزار تبدیل تاریخ که همزمان خروجی تاریخ را تغییر میدهند؛
- چند ابزار ویرایش شهر و استان که روی یک فیلد نشانی اثر میگذارند؛
- چند ابزار اعلان سفارش که پیامک مشابه میفرستند؛
- چند فرم ورود یا ابزار تغییر نشانی ورود مدیریت؛
- تنظیمات تأخیر اجرای جاوااسکریپت که رفتار فرمها و فهرستهای وابسته را تغییر میدهند.
داشتن ابزار مشابه لزوماً باعث تداخل نمیشود. مثلاً جم پک دو ابزار شناختهشده فهرست شهر را تشخیص میدهد و هنگام فعالبودن آنها، تغییر فیلد شهر را انجام نمیدهد. برای سایر ابزارهای نشانی، نتیجه را جدا بررسی کنید.
در محیط آزمایشی، هر بار فقط یک تغییر انجام دهید و نتیجه را دوباره بررسی کنید. روی فروشگاه فعال، ابزار پرداخت یا ورود قبلی را پیش از آمادهبودن و آزمایش مسیر جایگزین غیرفعال نکنید.
۶. آمادگی سایت را با یک مثال بررسی کنید
فرض کنید فروشگاهی میخواهد از تقویم شمسی، استانها و شهرهای ایران و درگاه زرینپال استفاده کند.
برای این فروشگاه:
- نسخه وردپرس، PHP و ووکامرس را با حداقلهای اعلامشده مقایسه کنید.
- مشخص کنید بسته دریافتی رمزگذاریشده است یا معمولی؛ فقط در صورت نیاز بسته، وضعیت ionCube را بررسی کنید.
- نوع تسویهحساب را ثبت کنید. برای فهرست شهر، صرف اعلام کلی سازگاری بلوکی کافی نیست.
- ابزارهای فعلی تبدیل تاریخ، نشانی و زرینپال را شناسایی کنید تا آزمون با دو تنظیم هموظیفه مبهم نشود.
- آمادهبودن حساب زرینپال، ارتباط خروجی هاست و مسیر بازگشت را بررسی کنید.
- نتیجه را برای هر مورد یکی از این حالتها بنویسید: «آماده»، «نیازمند اقدام» یا «نیازمند آزمون».
یک نتیجه قابلاستفاده میتواند چنین باشد:
| مورد | نتیجه نمونه | اقدام بعدی |
|---|---|---|
| حداقلهای محیط | آماده | ادامه به نصب |
| نوع بسته و Loader موردنیاز | آماده | نگهداشتن مشخصات بسته |
| فهرست شهر در صفحه فعلی | نیازمند آزمون | بررسی راهنمای نشانی و آزمایش صفحه واقعی |
| حساب پذیرنده | نیازمند اقدام | تکمیل اطلاعات درگاه پیش از آزمون پرداخت |
این جدول نمونه است، نه گزارش تأیید سازگاری فروشگاه شما. نتیجه نهایی را بر اساس اطلاعات و آزمون همان سایت بنویسید.
چه مواردی را نباید سازگاری تأییدشده فرض کنیم؟
در این راهنما، سازگاری کامل با همه قالبها، صفحهسازها، افزونههای بهینهسازی، شبکه چندسایتی و فلوئنتکارت تأیید نشده است.
«تأییدنشده» با «پشتیبانینشده» فرق دارد. نبودن آزمون، بهتنهایی ثابت نمیکند یک ترکیب کار نمیکند؛ همانطور که فعالشدن افزونه هم ثابت نمیکند تمام قابلیتها در آن ترکیب درست کار میکنند.
اگر از شبکه چندسایتی استفاده میکنید، پیشنیاز هر سایت، دسترسی مدیران و رفتار لایسنس را جدا بررسی کنید. فعالسازی شبکهای در این راهنما تأیید نشده است.
اگر نتیجه بررسی یک قابلیت برای محیط شما روشن نیست، قبل از استفاده عمومی، سناریوی واقعی را در محیط آزمایشی اجرا کنید یا اطلاعات محیط و کاربرد موردنظر را برای بررسی پشتیبانی آماده کنید. اطلاعات محرمانه اتصال را همراه گزارش عمومی نفرستید.
قدم بعدی
اگر محیط آماده است، با نصب، فعالسازی و ثبت لایسنس جم پک ادامه دهید. سپس در آشنایی با محیط جم پک و مدیریت ماژولها بخشهای موردنیاز را انتخاب کنید.
برای بررسی فروشگاه، راهنمای قابلیت موردنظر را دنبال کنید؛ این صفحه جای آزمون پرداخت، پیامک یا ورود را نمیگیرد.
