【问题标题】:get Joomla non sef url when SEF is on当 SEF 打开时获取 Joomla 非 sef url
【发布时间】:2011-06-15 07:26:47
【问题描述】:

我正在创建一个 joomla 系统插件。 我想检查当前页面是否正在加载任何文章。

为此,我计划检查视图是否为文章并在这种情况下获取 id。 但这在 sef 开启时不起作用。

有没有办法得到这个。或在 SEF 为 ON 的情况下如何获取非 sef url。

【问题讨论】:

    标签: joomla sef


    【解决方案1】:

    回答可能为时已晚。 :) 但是其他有同样问题的人可以使用这个代码- 您应该在 系统插件 中使用 onAfterRoute 事件。 试试这个-

    function onAfterRoute()
    {
       $option = JRequest::getVar('option');
       $view   = JRequest::getVar('view');
    }
    

    无论 SEF 是打开还是关闭,这都应该始终捕获“选项”和“视图”部分。 同样,您可以捕获 url 的其他部分。

    编辑:Joomla 3.x 注意你应该使用 JInput

    $jinput = JFactory::getApplication()->input;
    $option = $jinput->get('option');
    $view   = $jinput->get('view');
    

    【讨论】:

      【解决方案2】:

      您可能还想检查视图变量,因为有更多布局,这意味着您不是专门在文章页面上,例如类别博客布局...

      【讨论】:

        【解决方案3】:

        您可以通过此行获得您的variables

        $yourVariable = JRequest::getVar('yourVariableName');
        

        请确定,在 router.php 函数中的 yourComponentNameBuildRoute 函数中将您的变量传递给 $segment 并在 yourComponentNameParseRoute 函数中当您返回 $var 时放置您的变量。

        欲了解更多详情,请访问: http://docs.joomla.org/Supporting_SEF_URLs_in_your_component

        【讨论】:

          猜你喜欢
          • 2010-11-02
          • 1970-01-01
          • 2011-02-14
          • 1970-01-01
          • 2014-03-26
          • 2010-12-22
          • 2013-03-16
          • 2013-05-30
          • 1970-01-01
          相关资源
          最近更新 更多