gpt4 book ai didi

跨不同组件的 Joomla 分页

转载 作者:行者123 更新时间:2023-12-04 21:20:29 25 4
gpt4 key购买 nike

因为分页正在使用 getUserStateFromRequest获取 limit 的方法和 limitstart变量,我遇到了一个问题,当我从一个组件导航到另一个组件时,我看到一条未找到项目的消息。

澄清一下,我有一个产品组件,其中列出了 3 页的产品。然后我有一个分支组件,其中包含 2 页的分支信息。因此,如果我导航到产品列表中的第三页,然后转到分支组件,则不会显示任何内容。

有谁知道如何阻止这种情况发生?有什么办法可以清除 session 数据?

最佳答案

我最终做的是这个,
在libraries/joomla/application/application.php文件的第624行中,我添加了以下几行

$this->setUserState('option','default');

$curr_comp = JRequest::getCmd( 'option' );;


if($this->getUserState('option') != $curr_comp)
{
$this->setUserState($option . 'limitstart',0);
$this->setUserState('option',$curr_comp);

}

所以整个函数读取这个,
public function getUserStateFromRequest($key, $request, $default = null, $type = 'none')
{

$this->setUserState('option','default');

$curr_comp = JRequest::getCmd( 'option' );


if($this->getUserState('option') != $curr_comp)
{
$this->setUserState($option . 'limitstart',0);
$this->setUserState('option',$curr_comp);

}
$cur_state = $this->getUserState($key, $default);
$new_state = JRequest::getVar($request, null, 'default', $type);


// Save the new value only if it was set in this request.
if ($new_state !== null)
{
$this->setUserState($key, $new_state);
}
else
{
$new_state = $cur_state;
}

return $new_state;
}

目前这似乎工作正常。但请在实际网站上实现之前进行测试

关于跨不同组件的 Joomla 分页,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12778349/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com