您好我正在使用Kunena 3.0.4,我想在浏览器页面中更改我的论坛标题。
现在他们是
类别索引 - 论坛名称 - 网站名称 要么 主题名称 - 论坛名称 - 站点名称
我想制作它们
主题名称 - 网站名称
我可以在哪里更改? 提前谢谢
答案 0 :(得分:1)
我试图调试这个完全相同的问题,我发现了你的帖子。幸运的是,我弄清楚如何通过一些头部刮擦,谷歌搜索和搜索Kunena源文件来做到这一点。所以这是一个答案,如果你还没有弄明白的话。
有两件事需要做:编辑setTitle()
功能并编辑Kunena组件的语言文件。该功能可以在Kunena 3.0.5的以下文件夹中的view.php
文件中找到(截至2014年5月21日的最新版本):
YOUR_ROOT_DIR/public_html/libraries/kunena/view.php
然后,根据您的心脏内容编辑功能setTitle()
。玩它来给你你想要的外观和感觉。这是默认函数:
public function setTitle($title) {
if (!$this->state->get('embedded')) {
// Check for empty title and add site name if param is set
$title = strip_tags($title);
if ($this->app->getCfg('sitename_pagetitles', 0) == 1) {
$title = JText::sprintf('JPAGETITLE', $this->app->getCfg('sitename'), $this->config->board_title .' - '. $title);
} elseif ($this->app->getCfg('sitename_pagetitles', 0) == 2) {
$title = JText::sprintf('JPAGETITLE', $title .' - '. $this->config->board_title, $this->app->getCfg('sitename'));
} else {
// TODO: allow translations/overrides (also above)
$title = KunenaFactory::getConfig()->board_title .' :: '. $title;
}
$this->document->setTitle($title);
}
}
现在,需要编辑的行位于if-elseif-else
子句中。注意通过连接添加的' - '。对我来说,我必须编辑elseif
部分。除了'JPAGETITLE'之外,sprintf
函数需要两个参数。这里的第一个参数是$title .' - '. $this->config->board_title
,它是标题变量加上Kunena中设置的论坛标题。第二个参数是$this->app->getCfg('sitename')
,这是您的站点名称。在参数1和2之间会有额外的爆炸。所以如果我们有以下情况:
$title = 'Random Page';
$this->config->board_title = 'Kunena Forums';
$this->app->getCfg('sitename') = 'Joomla Site';
您将根据以下代码获得输出:
Random Page - Kunena Forums - Joomla Site
我已将此功能修改为:
public function setTitle($title) {
if (!$this->state->get('embedded')) {
// Check for empty title and add site name if param is set
$title = strip_tags($title);
if ($this->app->getCfg('sitename_pagetitles', 0) == 1) {
$title = JText::sprintf('JPAGETITLE', $this->app->getCfg('sitename'), $this->config->board_title, $title);
} elseif ($this->app->getCfg('sitename_pagetitles', 0) == 2) {
$title = JText::sprintf('JPAGETITLE', $title, $this->config->board_title);//, $this->app->getCfg('sitename'));
} else {
// TODO: allow translations/overrides (also above)
$title = KunenaFactory::getConfig()->board_title .' :: '. $title;
}
$this->document->setTitle($title);
}
}
所以,同样的例子会给我:
Random Page - Kunena Forums
此外,您可以更改在论坛的“索引”页面上显示的默认文本,即“类别索引”更好的内容。为此,您需要在以下位置编辑语言文件:
YOUR_ROOT_DIR/public_html/components/com_kunena/language/en-GB/en-GB.com_kunena.views.ini
在这里,查找标签:
COM_KUNENA_VIEW_CATEGORY_DEFAULT="Topics in %s"
COM_KUNENA_VIEW_TOPICS_DEFAULT="Topic: %s"
COM_KUNENA_VIEW_CATEGORIES_DEFAULT="Category Index"
将文字更改为更好的内容。例如,我完全删除了“主题:”和“主题”,并将“类别索引”替换为“论坛主页”。所以,现在在我的论坛主页上,我看到了
Forums Home - My Website Forums
根据自己的喜好编辑语言文件中的其他字符串,并使用setTitle
功能。
在您的情况下,由于您要删除论坛名称,请删除sprintf中的$this->config->board_title
部分。
答案 1 :(得分:0)
在Joomla中,您可以使用文档类设置页面标题。
$document = JFactory::getDocument();
$document->setTitle("This is my page title");
了解有关How to set meta details of Joomla page
的更多信息希望它的帮助..