在joomla组件中传递get变量

fef*_*efe 3 variables joomla components get

我正在尝试构建一个简单的joomla组件,它会根据它的API显示自定义谷歌搜索结果.我如何将get变量传递给joomla组件?让我说我已经有了调用自定义视图的基础知识index.php?option=com_google&view=google,而不是我想将'q' $_GET变量传递给它的url查询字符串应该是什么样子?

Cra*_*aig 6

HTTP请求方法GET,工作原理与URL,所以变量总是在请求的URL中传递.

要添加q到您目前的网址,你只需添加&q=SomeValue其中SomeValue已经适当百分比或URL编码.

Joomla 1.5

如果你正在使用Joomla!1.5你可以用JRequest得到是否提交任何变量的值POST或者GET,看在检索请求变量此文件.

$q = JRequest::getVar('q');
Run Code Online (Sandbox Code Playgroud)

Joomla 1.6+

对于Joomla!1.6+推荐使用JInput检索请求数据JRequest折旧,并为Joomla!你必须使用3.0+,JInput因为JRequest已经删除了funcitonality,并将在接下来的几个版本中继续消失.

要使用JInput您可以获取当前对象或使用当前Joomla应用程序链接来检索变量.

入门 JInput

$jAp = JFactory::getApplication();  // Having the Joomla application around is also useful
$jInput = $jAp->input;  // This is the input object
$q = $jInput->get('q');  // Your variable, of course get() support other option...
Run Code Online (Sandbox Code Playgroud)

使用JInputvia链接

$jAp = JFactory::getApplication();  // Having the Joomla application around is also useful
$q = $jAp->input->get('q');  // Your variable
Run Code Online (Sandbox Code Playgroud)