如何为Joomla 1.6创建自定义错误页面(404)?

时间:2011-02-16 12:55:01

标签: php templates joomla http-status-code-404

如何为Joomla 1.6创建自定义错误页面(404)?

我已经尝试了一个教程(http://docs.joomla.org/Tutorial:Create_a_Custom_404_Error_Page),但它是1.5并且它不起作用。

谢谢。

3 个答案:

答案 0 :(得分:1)

- >代码的调用是对受保护属性的调用,也就是说不再可能。 您必须使用 getCode()。 1.6的固定代码:

  if ($this->error->getCode() == '404') {
          header('Location: /index.php?option=com_content&view=article&id=214');
          exit;
  } ;

现在适用于Yoomla 1.6。 (作为http://docs.joomla.org/Creating_a_Custom_404_Error_Page上的1.5示例的修复 - 此页面上的其余部分是准确的)

答案 1 :(得分:0)

我想我会用更传统的方法解决这个问题,只需编辑.htaccess文件。

我认为这也是一种更加搜索引擎友好的方法。

For some creative

答案 2 :(得分:0)

只需按照以下步骤操作:

  1. 创建一个类别(未分类)(默认情况下查看它是否已存在)
  2. 创建一篇文章
    • 标题:404
    • 类别:未分类
    • 文章内容:Opps,Page not found(或其他)
  3. 创建隐藏菜单
    • 菜单 - >菜单管理员
    • 标题:隐藏,菜单类型:Hiddenmenu
  4. 在此隐藏菜单中创建一个菜单项
    • 菜单类型:单篇文章
    • 标题:找不到页面
    • Alias:page-not-found
    • 模板:您要用于显示未找到该网页的模板
    • 链接文章:您在我们的案例404中创建的文章
    • 机器人:没有索引;没有关注(谷歌为避免索引此页面)
  5. 然后在你的joomla的error.php中添加这段代码你可以在里面找到(root_directory)\ templates \ system \ error.php

    defined( '_JEXEC' ) or die( 'Restricted access');  if ($this->error->getCode() == '404' ) { header('Location: http://www.domain.com/page-not-found'); exit;}