-
ساخت صفحه خطای 404
سلام
من از قالب protostar جوملا 3 (پیشفرض) استفاده میکنم و میخام صفحه 404 رو برای خودم سفارشی کنم . مراحل رو انجام دادم شامل »
ساخت مطلب برای صفحه خطا 404
ساخت منو برای مطلب
اما توی پوشه قالب فایل eror.php رو که باز میکنم خط مربوط به ویرایش آدرس رو پیدا نمیکنم :
منظورم این آدرس هست که توی بعضی آموزش
if ($this->error->code == 404) { header('Location:/my address link'); exit; }
منظورم از my address link لینک منو هست.
با تشکر
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از afshin5 عزیز به خاطر این پست مفید تشکر کرده است:
-
01-12-2016 07:24 PM
# ADS
تبلیغات در جوملا فارسی
-
چهار مرحله برای درست کردن یک صفحه خطای 404 شخصی
- درست کردن یک مطلب 404 دسته بندی نشده
یک مطلب دسته بندی نشده در جوملا درست کنید تا به عنوان صفحه 404 به خدمت بگیرد. شامل متنی همچون:
با عرض پوزش، ما نمی توانیم صفحه ای شما به دنبال آن هستید را پیدا کنیم … و اگر ضروری است، هر پیوند مفیدی برای ناوبری استفاده کنید. برای مثال شما می توانید پیوند برگشت به صفحه اصلی سایت را اضافه کنید. - یک آدرس برای مطلب 404 جدید درست و کپی کنید
یک آیتم منو که به مطلب جدید 404 پیوند شده است را درست کنید و تغییرات را اعمال (apply) کنید. اطلاعات URL حاوی (index.php?option...) را کپی کنید، منو را به عنوان منتشر نشده تنظیم کنید و اط صفحه ویرایش منو خارج شوی. شما می توانید URL کپی شده را جای در یک ویرایشگر دیگر مثل Notpad برای استفاده در ادامه با پیست کردن نگه دارید. - کپی کردن error.php به پوشه قالب خودتان
در جوملای نصب شده ی خودتان فایل error.php را از پوشه templates/system ، به پوشه قالب خودتان کپی کنید. برای مثال اگر شما می خواهید از قالبی که Cleancloud نام دارد فایل error.php را به پوشه templates/cleancloud کپی کنید. - تغییر error.php برای انتقال خطاهای 404 به مطلب خودتان
ویرایش error.php را به صورت زیر دنبال کنید، کدهای زیر را بلافاصله بعد از خط restricted access اضافه کنید.
توجه: restricted access اشاره به این دارد که اغلب فایل های PHP با عبارتی مانند زیر شروع می شود.
کد:
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
اگر شما در حال استفاده از جوملا 1.6، 1.7، 2.5 و نسخه های 3 هستید کد آشکارسازی زیر را استفاده کنید:
کد:
if (($this->error->getCode()) == '404') {
header('Location: /index.php?option=com_content&view=article&id=75');
exit;
}
اطلاعات مکان را با (index.php?option...) را با URL که از آیتم منویی که درست کردید عوض کنید.
اگر شما در حال استفاده از جولا 1.5 هستید این کد آشکارسازی را استفاده کنید:
کد:
if (($this->error->code) == '404') {
header('Location: /index.php?option=com_content&view=article&id=75');
exit;
}
محو کردن صفحه خطای 404 شخصی شما از موتورهای جستجو
- در جوملا 3: در مدیریت محتوا > ویرایش محتوا > تب انتشار > رباتها را بدون پیروی تنظیم کنید.
- در جوملا 2.5: در مدیریت محتوا > ویرایش محتوا >گزینه های متادیتا > رباتها را بدون پیروی تنظیم کنید.
- در نسخه های دیگر، خط زیر را به فایل <code>robots.txt</code> که در پوشه اصلی جوملای نصب شدهی شما قرار دارد، اضافه کنید. عبارت (index.php?option..) را با URL مطلب 404 خوتان عوض کنید.
کد:
Disallow: /index.php?option=com_content&view=article&id=75
ویرایش توسط mediawiki : 01-13-2016 در ساعت 01:33 PM
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از mediawiki عزیز به خاطر این پست مفید تشکر کرده است:
-
ممنون از راهنمایی تون
اما چه طور مطلب بدون مجموعه بسازم ؟
سایت من چند زبانه هست و طبیعتا مجموعه های زیادی داره گزینه بدون مجموعه توی لیست مجموعه ها رو ندارم!!!
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
خوب بگردید اگر نبود یک موضوع جدید ایجاد کنید تا پاسخ بدهم.
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از mediawiki عزیز به خاطر این پست مفید تشکر کرده است:
-
دوست عزیز نیست !!!
[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
سلام
این مطلب در سایت جوملا بصورت انگلیسی بصورت دقیقتری بیان شده
[مهمان/کاربر گرامی برای دیدن لینک ها ابتدا باید عضو سایت شوید و لاگین کنید برای ثبت نام اینجا کلیک کنید]
در واقع منظور از ایجاد کردن محتوای بدون مجموعه این هست که یک مجموعه خاص ایجاد کنید مثل همون مجموعه دیفالت اولیه جوملا که uncategorized هست و مطلبتون اونجا باشه. آیدی مطلب رو ببینید و از لینک مربوطه برای این لینک استفاده کنید!
به همین سادگی
اگر سوالی بود بفرمایید تا راهنمایی کنیم.
موفق باشید
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از مهدی. عزیز به خاطر این پست مفید تشکر کرده است:
-
سلام
من تاپیک جومللای جهانی رو خوندم اما قسمتی که میگه این عبارت restricted access رو پیدا کنید رو توی فایل error.php (که توی پوشه قالبم کپی کردم ) پیدا نمیکنم
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
توجه را مطالعه نمایید.
تشکر یادت نره!
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از mediawiki عزیز به خاطر این پست مفید تشکر کرده است:
-
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
-
افشین خان اذیت می کنی 
بعد عبارت قرمز رنگ زیر در فایل error.php
کد:
<?php
/**
* @package Joomla.Site
* @subpackage Template.system
*
* @copyright Copyright (C) 2005 - 2015 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
defined('_JEXEC') or die;
if (!isset($this->error))
{
$this->error = JError::raiseWarning(404, JText::_('JERROR_ALERTNOAUTHOR'));
$this->debug = false;
}
// Get language and direction
$doc = JFactory::getDocument();
$app = JFactory::getApplication();
$this->language = $doc->language;
$this->direction = $doc->direction;
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language; ?>" lang="<?php echo $this->language; ?>" dir="<?php echo $this->direction; ?>">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title><?php echo $this->error->getCode(); ?> - <?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?></title>
<link rel="stylesheet" href="<?php echo $this->baseurl; ?>/templates/system/css/error.css" type="text/css" />
<?php if ($this->direction == 'rtl') : ?>
<link rel="stylesheet" href="<?php echo $this->baseurl; ?>/templates/system/css/error_rtl.css" type="text/css" />
<?php endif; ?>
<?php if ($app->get('debug_lang', '0') == '1' || $app->get('debug', '0') == '1') : ?>
<link rel="stylesheet" href="<?php echo $this->baseurl ?>/media/cms/css/debug.css" type="text/css" />
<?php endif; ?>
</head>
<body>
<div class="error">
<div id="outline">
<div id="errorboxoutline">
<div id="errorboxheader"><?php echo $this->error->getCode(); ?> - <?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?></div>
<div id="errorboxbody">
<p><strong><?php echo JText::_('JERROR_LAYOUT_NOT_ABLE_TO_VISIT'); ?></strong></p>
<ol>
<li><?php echo JText::_('JERROR_LAYOUT_AN_OUT_OF_DATE_BOOKMARK_FAVOURITE'); ?></li>
<li><?php echo JText::_('JERROR_LAYOUT_SEARCH_ENGINE_OUT_OF_DATE_LISTING'); ?></li>
<li><?php echo JText::_('JERROR_LAYOUT_MIS_TYPED_ADDRESS'); ?></li>
<li><?php echo JText::_('JERROR_LAYOUT_YOU_HAVE_NO_ACCESS_TO_THIS_PAGE'); ?></li>
<li><?php echo JText::_('JERROR_LAYOUT_REQUESTED_RESOURCE_WAS_NOT_FOUND'); ?></li>
<li><?php echo JText::_('JERROR_LAYOUT_ERROR_HAS_OCCURRED_WHILE_PROCESSING_YOUR_REQUEST'); ?></li>
</ol>
<p><strong><?php echo JText::_('JERROR_LAYOUT_PLEASE_TRY_ONE_OF_THE_FOLLOWING_PAGES'); ?></strong></p>
<ul>
<li><a href="<?php echo $this->baseurl; ?>/index.php" title="<?php echo JText::_('JERROR_LAYOUT_GO_TO_THE_HOME_PAGE'); ?>"><?php echo JText::_('JERROR_LAYOUT_HOME_PAGE'); ?></a></li>
</ul>
<p><?php echo JText::_('JERROR_LAYOUT_PLEASE_CONTACT_THE_SYSTEM_ADMINISTRATOR'); ?></p>
<div id="techinfo">
<p><?php echo htmlspecialchars($this->error->getMessage(), ENT_QUOTES, 'UTF-8'); ?></p>
<p>
<?php if ($this->debug) : ?>
<?php echo $this->renderBacktrace(); ?>
<?php endif; ?>
</p>
</div>
</div>
</div>
</div>
</div>
</body>
</html>
جهت مشاهده لینک ها باید ثبت نام کنید یا لاگین کنید.
-
کاربر مقابل از mediawiki عزیز به خاطر این پست مفید تشکر کرده است:
علاقه مندی ها (Bookmarks)