添加到Joomla的点击计数器

时间:2013-03-01 19:59:06

标签: joomla joomla2.5

我正在为Joomla 2.5创建自定义组件。我想为详细视图添加一个点击计数器(比如Joomla内容等)

所以我做了一些研究,发现我假设的JTable::hit函数是我需要的(Joomla docs page here)。但是我非常不清楚我需要在哪里实现它。当我从数据库中检索行时,它是否在某个模型中 - 或者它在视图中的某个位置?建议将不胜感激!

1 个答案:

答案 0 :(得分:2)

如果您看看他们是如何在Joomla中完成的,您会看到他们在模型中实现了功能,并从视图中调用该方法。

例如,article.php模型有

public function hit($pk = 0)
{
        $hitcount = JRequest::getInt('hitcount', 1);

        if ($hitcount)
        {
            // Initialise variables.
            $pk = (!empty($pk)) ? $pk : (int) $this->getState('article.id');
            $db = $this->getDbo();

            $db->setQuery(
                    'UPDATE #__content' .
                    ' SET hits = hits + 1' .
                    ' WHERE id = '.(int) $pk
            );

            if (!$db->query()) {
                    $this->setError($db->getErrorMsg());
                    return false;
            }
        }

        return true;
}

view.html.php

$model = $this->getModel();
$model->hit();