【问题标题】:Joomla! display article based on URL in stead of 404 pageJoomla!基于 URL 而非 404 页面显示文章
【发布时间】:2012-01-27 11:18:53
【问题描述】:

我们有一个基于 Joomla! 的网站!在joomla目录中,还有很多其他目录,即:

C:\myjoomlawebsite
  ...joomla directories...
  \myspecialdirectory

在“myspecialdirectory”中,有些资源有时可用,有时不可用,正如人们想象的那样,当资源(php页面)不可用时,会显示404页面。

我想做的是,“不知何故”告诉 joomla,当用户尝试访问位于“myspecialdirectory”中的页面并且该页面不可用时,它应该显示文章页面而不是 404。

  • 如果用户访问 mydomain.com/
  • 如果用户访问 mydomain.com/existingpage.php
  • 如果用户访问 mydomain.com/unavailablepage.php
  • 如果用户访问 mydomain.com/myspecialdirectory/existingpage.php
  • 如果用户访问 mydomain.com/myspecialdirectory/unavilablepage.php

【问题讨论】:

    标签: php joomla joomla1.7


    【解决方案1】:

    查看this

    对于 v1.5

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

    对于 1.6 和 1.7

    if (($this->error->getCode()) == '404') {
    

    【讨论】:

    • 这行不通,因为myspecialdirectory 在 Joomla 框架之外。
    • @Rikesh 谢谢,标头技巧效果很好,但我的条件是基于 JURI getPath(),我根据要求搜索了该实例并将标头位置设置为我需要的位置
    【解决方案2】:

    因为该目录在 Joomla 框架之外,并且您只希望一个目录重定向到 Joomla 页面而不是 404,那么完成此操作的最简单方法是使用在您想要的目录中放置一个自定义 htaccess重定向。您可能只想在 myspecialdirectory 中将其添加到 htaccess

    ErrorDocument 404 /URL TO JOOMLA ARTICLE.php
    

    【讨论】:

      【解决方案3】:

      对于符合标准的解决方案——请在此处阅读:http://magazine.joomla.org/component/k2/item/230

      【讨论】:

        猜你喜欢
        • 2011-05-28
        • 2014-04-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-09-07
        相关资源
        最近更新 更多