从Joomla模块中的文章中获取自定义高级参数

时间:2011-05-03 06:13:10

标签: php joomla

我的网站主页上有一个小新闻模块。它显示了Joomla管理员添加的新闻文章。

它显示模块部分中的文章标题。

但我不想在主页上的新闻模块中显示文章标题。我需要在新闻模块中显示一些其他文本而不是新闻标题。

为此,我在文章管理器中添加了一个名为“新闻标题”的新自定义参数。

此新的自定义参数将与其他文章内容一起正确保存和更新。

但是我在新闻模块中检索此自定义参数的值时遇到了问题。

以下是用于获取模块中文章标题的代码。

        // getting content
    $this->content = $newsClass->getNewsStandardMode($categories, $sql_where, $this->config, $this->config['news_amount']);
    //
    $this->SIDTab = $this->content['SID'];
    $this->titleTab = $this->content['title']; 
    $this->textTab = $this->content['text']; 
    $this->idTab = $this->content['ID'];
    $this->cidTab = $this->content['CID'];

enter image description here

以下是用于显示文章标题的代码。

function render(&$params)
{
    $content = array();
    //
    for($i = 0; $i < count($this->idTab); $i++)
    {
        $content[$i] = '';
        //
        if($this->config['links'] == 1)
        {
            $url = $this->idTab[$i].'&Itemid='.$this->config['item_id'];

            if ($this->config['url'] != ""){
                $content[$i] .= '<a href="'.$this->config['url'] .'">';
            } else {
                $content[$i] .= '<a href="'.JRoute::_(ContentHelperRoute::getArticleRoute($url, $this->cidTab[$i], $this->SIDTab[$i])).'">';

            }

        }
// some more code }

请帮忙。

感谢。

1 个答案:

答案 0 :(得分:1)

当模块获取参数时,它是拉模块参数,而不是文章中的参数。该文章的参数存储在jos_content表的attributes字段中。你需要从那里得到你的文字。

在不破解核心的情况下,有一种更简单的方法可以做到这一点。我注意到你的文章中没有任何介绍文字。在文章内容的开头放置您想要使用的文本并在其后插入读取更多中断要容易得多。现在,您想要的文本将被Joomla作为介绍文本处理。您可以将其设置为在模块中显示并隐藏在文章视图中。这可以防止你不得不破解核心,这样你就可以轻松更新,并且可以更容易地显示你想要的内容。