【问题标题】:Joomla Custom error page doesn't work wellJoomla 自定义错误页面无法正常工作
【发布时间】:2015-11-17 01:01:39
【问题描述】:

长期以来,我一直在尝试为我的 joomla 2.5 网站启用自定义 404 页面,因为默认的红色错误页面不是一个选项。

我启用了它,但是,它仅在用户输入 site.com/wrong_page 并且如果用户输入以下结构 site.com/wrong_page/wrong_page 的 url 时它不显示任何内容,只是空白页。

因此,如果用户转到“商品”页面,然后转到不存在的项目 site.com/goods/wrong_itemid,它不会显示自定义错误,它什么也不显示,但如果用户打开 site.com/wrong_link 他会查看自定义错误页面。

请帮我解决这个问题。

我在error.php中使用了以下内容:

switch ($this->error->code) {
   case '404':
      header('location: /404-page');
      break;
   case '500':
      include('500.php');
      break;
   case '403':
      include('403.php');
      break;
   default:
      header('location: /404-page');
    }

【问题讨论】:

  • 向我们展示你们中的一些编码 sn-ps
  • 我添加了一些我使用的代码

标签: php joomla custom-error-pages


【解决方案1】:

这就是我在 Joomla 2.5 中所做的

  • 创建您的自定义“404”文章

  • 创建一个新的未发布菜单项,该菜单项链接到此新的 404 文章并“应用”您的更改。复制此页面的 URL (index.php?optio...)

  • 在您的 Joomla 安装中,将 error.php 文件从模板/系统目录复制到您的模板目录。

  • 编辑 error.php 文件并在“restricted access”行下添加以下代码:

    如果 (($this->error->getCode()) == '404') {
    header('位置:/index.php?option=com_content&view=article&id=xx');
    退出;
    }

更新
上述技术旨在作为制作自定义页面的简单方法。您可以使用内置的 Joomla 文本编辑器,页面将匹配您的网站样式。 @Flimm 在下面正确指出该页面将不再提供 404 HTTP 标头。如果您对此感到担忧,另一种选择是: - 在您的 Joomla 安装中,将 error.php 文件从模板/系统目录复制到您的模板目录。

  • 使用任何文本编辑器在模板目录中打开 error.php 的副本,然后根据需要编辑 <body> 标记中的 HTML。

祝你好运!

【讨论】:

  • 我觉得自己像个傻瓜,因为,我想我试过了,但上次没用))但现在效果很好!非常感谢!
  • 谢谢@user1584043,我很高兴这能让你摆脱困境!
  • @Flimm ,感谢您指出这一点,我已经更新了我的建议
【解决方案2】:

尝试使用 htaccess 进行设置。

ErrorDocument 404 /page404.php
ErrorDocument 500 /page500.php

希望对你有帮助..

【讨论】:

    猜你喜欢
    • 2017-02-10
    • 2019-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-26
    • 1970-01-01
    • 2016-07-28
    相关资源
    最近更新 更多