我在自定义 Joomla 组件上设置了分页。为了避免冗长的解释,我们做了一些复杂的 iframe 嵌入和前向掩码。这是组件前端的分页。
在我的 iframe 中,我有一个小狗列表(来自自定义组件)。它是分页的。为了让小狗在 iframe 中正确显示,它必须具有 URL:
但是,当我实际单击第 2 页的分页链接时,它会删除导致问题的 view=microsite。我该如何调整它以使其不会删除 view=microsite?
这个分页的代码很长,在模型、视图和 view.html.php 之间,所以我似乎很难发布所有相关代码。这里有一些我一直在寻找的地方。
关于在哪里/如何做到这一点的任何想法或提示?
谢谢扎克
// Get the pagination request variables
$limit = $app->input->get('limit', $params->get('display_num', 20), 'uint');
$limitstart = $app->input->get('limitstart', 0, 'uint');
$this->setState('puppies.limit', $limit);
$this->setState('puppies.limitstart', $limitstart);
// Load the parameters.
$this->setState('params', $params);
}
/** Method to get a store id based on the model configuration state. **/
protected function getStoreId($id = '')
{
// Compile the store id.
$id .= ':' . $this->getState('puppies.breed_alias');
$id .= ':' . $this->getState('puppies.limit');
$id .= ':' . $this->getState('puppies.limitstart');
$id .= ':' . serialize($this->getState('puppies.filter'));
$id .= ':' . $this->getState('puppies.featured');
return parent::getStoreId($id);
}
/** Method to get a JPagination object for the data set. **/
public function getPagination()
{
// Create the pagination object.
$limit = (int) $this->getState('puppies.limit');
$page = new JPagination($this->getTotal(), $this->getStart(), $limit);
return $page;
}
/** Method to get the total number of items for the data set. **/
public function getTotal()
{
return $this->items_total;
}
/** Method to get the starting number of items for the data set. **/
public function getStart()
{
$start = $this->getState('puppies.limitstart');
$limit = $this->getState('puppies.limit');
$total = $this->getTotal();
if ($start > $total - $limit)
{
$start = max(0, (int) (ceil($total / $limit) - 1) * $limit);
}
return $start;
}
同样,这里有一部分代码,但我不知道要开始发布什么来回答这个问题,所以请我发布任何代码,但指向正确的方向,谢谢。