با عرض سلام و خسته نباشید در این مقاله قصد داریم نحوه ایجاد یک صفحه اختصاصی از پیغام خطای ۴۰۴ جوملا را آموزش دهیم. در ابتدا لازم است بدانیم صفحه خطای ۴۰۴ چیست؟ در بسیاری از وب سایت ها خصوصا سایت هایی که با استفاده از سیستم های مدیریت محتوا تولید شده اند یک صفحه برای نمایش آدرس های اشتباه تعبیه میگردد. صفحه خطای ۴۰۴ زمانی که یک مطلب یا دسته بندی از حالت انتشار خارج شده یا URL ورودی توسط کاربران صحیح نباشد فراخوانی میگردد.
چهار قدم برای ایجاد صفحه اختصاصی پیغام خطای ۴۰۴

ایجاد یک مطلب دسته بندی نشده ‘۴۰۴’

شما می‌توانید یک مطلب دسته بندی نشده در جوملا به عنوان صفحه خطای ۴۰۴ ایجاد کنید و در داخل آن متن دلخواه تان را بنویسید مانند متاسفانه صفحه مورد نظر شما یافت نشد یا صفحه ای که بدنبال آن می‌گردید حذف شده است. همچنین اگر لازم بدانید می‌توانید لینک‌های دلخوه‌تان در آن قرار دهید. به عنوان مثال لینک به صفحه‌اصلی سایت تان.‌

ایجاد یک آیتم منو از نوع مطلب صفحه ۴۰۴ ای ایجاد کردیم

باید یک آیتم منو از نوع مطلب صفحه ۴۰۴ ای که قبلا ساختیم ایجاد کنیم و سپس گزینه ذخیره و ماندن را بزنیم بعد از ذخیره سازی باید آدرس URL آیتم منو ایجاد شده را برای خودمان کپی کنیم مانند (index.php?optioYYYY) سپس منوی ایجاد شده را در حالت منتشر نشده قرار دهید و گزینه ذخیره و بستن را بزنید. توجه داشته باشید آدرس URL ای که کپی کرده‌اید را می‌توانید با Paste کردن در یک notepad حفظ کنید. در ضمن با Paste کردن این آدرس در مرورگر می‌توانید صفحه پیش فرض خطای ۴۰۴ را مشاهده نمایید.

کپی کردن error.php در فولدر قالب پیش فرض سایت

به روت وب سایت تان بروید و از آدرس templates/system فایل error.php را کپی کنید و به فولدر قالب پیش فرض سایت تان Paste کنید. به عنوان مثال اگر نام قالب پیش فرض سایت‌تان joomlafarsi است فایل مذکور را باید در آدرس templates/joomlafarsi کپی نمایید.

تغییر error.php و ریدارکت به مطلب ۴۰۴ ای که در مراحل قبل ایجاد کردیم

صفحه error.php را باز نمایید و کدهای زیر را بلافاصله در خط پائینی ‘Restricted Access’ قرار دهید.
توجه اگر نسجه جوملا شما ۱٫۶ و ۱٫۷ و ۲٫۵ یا ۳٫X است لطفا از کد زیر استفاده کنید.

if (($this->error->getCode()) == ‘404’) {
header(‘Location: /index.php?optioYYYY ‘);
exit;
}

اگر نسخه جوملا شما ۱٫۵ است لطفا از کد زیر استفاده کنید.

if (($this->error->code) == ‘404’) {
header(‘Location: /index.php?optioYYYY ‘);
exit;
}