💻 آخرین فرصت یادگیری برنامه‌نویسی با آفر ویژه قبل از افزایش قیمت در ۵ آذر ماه (🎁 به همراه یک هدیه ارزشمند )
۰ ثانیه
۰ دقیقه
۰ ساعت
۴ امیرحسین سلطانی
عدم نمایش صفحه gateway و checkout
بهنام مرادی حل شده توسط بهنام مرادی

سلام وقت بخیر

دوصفحه بالا در قالب نمایش داده نمی‌شود. چند قالب دیگه هم تست کردم بازهم نمایش داده نمی‌شود.

در صورتی که تا جلسه قبلی بدون مشکل نمایش داده می‌شد.

ممنون میشم راهنمایی کنید مشکل از چه قسمتی می‌تونه باشه.

با سلام 

متاسفانه سوالتون گنگ هست و متوجه مشکلتون نشدم!

ولی اگر منظورت شما صفحه تسویه حساب ووکامرس یا صفحه پرداخت بفرمایید چه خطایی دارید یا چه مشکلی که نمیتوانید به این دو صفحه دسترسی داشته باشید.

بهنام مرادی ۱۹ آذر ۱۴۰۲، ۱۵:۱۷

این سوال مربوط به قسمت‌های درگاه پرداخت پلاگین vip هست. برای پرداخت دو صفحه ساخته شد با آدرس‌های gateway و checkout که داخل آن‌ها شورت کدهای [vip-gateway] و [vip-checkout] قرار داده شد. که برای پرداخت این موارد نوشته شدند. تمام موارد رو طبق آموزش انجام دادم و مشکلی نبود اما در جلسات بعدی که ارتباطی با پرداخت هم نداشت، متاسفانه این صفحات نمایش داده نمی‌شوند و فقط قسمت فوتر سایت نمایش داده می‌شود. که احتمالا مشکل از شورت کدها هست. بررسی کردم ولی متوجه نشدم از کدام قسمت این مشکل به وجود آمده و خطایی هم در صفحه یا کنسول کروم نمایش داده نمی‌شود.

ممنون میشم راهنمایی کنید.

امیرحسین سلطانی ۲۰ آذر ۱۴۰۲، ۰۳:۰۷

فایل قالب و پلاگین را در پیوست ارسال می‌کنم.

لطفا بررسی کنید. اگر هم جایی مبهم بود بفرمایید تا دقیق‌تر منظورم رو شرح بدم.

باتشکر

لینک فایل ها: (در گوگل درایو آپلود شده)

https://drive.google.com/file/d/1vYv5j7GgJwNjpM4yZN_kdhbPXCVMzPm1/view?usp=sharing

امیرحسین سلطانی ۲۸ آذر ۱۴۰۲، ۱۲:۴۴

با سلام

سورس کد شمارو بررسی کردم، فایل filter-vip-content.php داخل پوشه _inc حاوی کد اشتباهی است
شما داخل این فایل برروی فیلتر the_content تابع خودتان را اعمال کرده اید و به اشتباه زمانی محتوا را برمیگردانید که شرط شما صحیح باشد در غیراینصورت اجازه نمیدهد وردپرس محتوایی نمایش دهد » در اینصورت شورتکد‌های شما سالم هستند ولی کد خودتان اجازه نمیدهد وردپرس هیچ محتوایی در هیچ برگه ای را نمایش دهد مگر اینکه با شرط شما سازگار باشد.
کد شما هست :

function filter_vip_content($content)
{
    if (metadata_exists('post', get_the_ID(), '_vip_post_type') && get_post_meta(get_the_ID(), '_vip_post_type', true) == 2) {
        if (User::is_user_vip(get_current_user_id())) {
            return $content;
        } else {
            return mb_substr($content, 0, 500, 'UTF-8') . '...' . '<div class="vip-alert">برای مشاهده ادامه این مطلب باید اکانت ویژه (VIP) تهیه نمایید.</div>';
        }
        return $content;
    }
}
add_filter('the_content', 'filter_vip_content');

جایی که return $content; را قرار داده اید باید بیرون از شرط شما باشد یا اینکه شرط شما منطقی بوده و برروی همه صفحات اعمال شده باشد.

موفق باشید

بهترین پاسخ
بهنام مرادی ۲۹ آذر ۱۴۰۲، ۱۶:۱۸