如何将网站标题附加到除首页以外的所有页面上?


8

在SEO下的Joomla 2.5全局配置中,可以选择“在页面标题中包含网站名称”,并选择“之后”,“之前”或“否”。但是,如何在首页以外的所有页面上包含站点名称(“之后”)?(也许还有其他页面?)

这是在Joomla 2.5上,但是,我也想知道Joomla 3中的过程是否有所不同。

首选核心功能或手动代码解决方案。但是,如果有合适的扩展程序可以提供此功能,则也请提出建议。


1
我不确定,但我怀疑答案是您不能没有扩展(或模板的mod)。我很想知道自己的答案:)
Brian Peat

Answers:


7

若要将首页的标题与其他页面的标题设置为不同,请将以下代码添加到模板index.php文件中靠近标题信息的位置。

$menu = $app->getMenu();
    if ($menu->getActive() == $menu->getDefault()) {
    $this->setTitle( 'Whatever You Want Title' );
    }

此代码将独立于Joomla设置其余页面的方式来设置首页标题。这可以在Joomla 2.5上使用,我相信它也可以在3.x系列中使用。


谢谢,这实际上是我最终使用的方法-效果很好。
MrWhite 2014年

4

RS SEO可以立即执行此操作。在配置中,您可以设置要添加网站标题的方式,然后可以在添加任何页面后对其进行编辑。这对于标题较长的页面尤其重要,如果您将站点名称添加到标题中,标题将太长。


3

这里有四个选项:A)在Joomla的本机之前,之后或不使用。然后进入主菜单项并添加浏览器标题。它将仍然使用之前,之后或否,但是至少您会得到一个自定义名称。因此,它看起来像:

提供100年服务-公司名称

B)将此代码添加到您的开放标签下面:

 <?php 
 $app = JFactory::getApplication();
 $this->setTitle($this->getTitle().' | '.$app->getCfg('sitename'));
 ?>

这使您可以选择使用分行符代替破折号或您选择的其他字符。您还可以代替使用站点名称,而可以在其中放置其他内容,并将其附加到所有浏览器标题中。

提供100年服务| 公司名

C)将您的Joomla设置为no。手动编写所有菜单项浏览器标题。对于较小的站点来说并不可怕。对于较大的网站确实很糟糕。

D)我还没有尝试过,但是我认为它会起作用。从理论上讲。在您的首页上添加一个ID。

这超出了文档类型:

<?php
  $app = JFactory::getApplication();
  $menu = $app->getMenu()->getActive();
  $pageclass = '';

  if (is_object($menu))
    $pageclass = $menu->params->get('pageclass_sfx');
?>

这代替身体

<body id="<?php echo $pageclass ? htmlspecialchars($pageclass) : 'default'; ?>">

现在将一个类添加到您的菜单项。它将显示为正文ID。现在,使用选项D中提供的代码,并在其周围加上一个php函数,以防止其在您的首页的主体ID上运行(对不起,我不知道如何编写php,否则我会为您做)然后在主菜单项中填写浏览器标题。其他所有内容都将附加您的网站名称,但添加首页。


感谢所有的建议。老实说,我不确定如何D运作?我可以看到,这也许可以用来更改CSS的页内标题,但是我实际上需要写TITLE元素。最后,我最终使用了您B和您的D建议的混合体,首先检查当前活动菜单是否为“默认”菜单(即,我们位于首页),然后调用setTitle()以手动覆盖标题的标题。页。
MrWhite 2014年

我的意思是将id用作php语句中的元素,该语句表示“如果此主体具有此id,请不要包括添加站点标题的代码”。但是,嘿,如果我的杂谈给你一个主意,那就顺其自然吧!
Faye 2014年


1

据我所知,单个页面没有这种选择。

我从未在核心的joomla上尝试过此操作,但过去我使用了名为“ SEO generator ” 的插件,该插件具有通过添加站点名称(类似于joomla核心选项)来自定义页面标题的选项,其中包括一些额外的功能自定义首页标题的设置。

但是,如果您想对更多页面执行相同操作,则该插件将不会执行此操作,除非您修改其代码并使其通过ID来检查要应用额外网站名称的特定菜单项。

可能还有其他扩展可以为您希望对页面标题进行特殊设置的菜单项提供管理员管理,但我不知道要说的是什么。

当然,总是有手动方式可以在每页上编写所需的标题。

但是,关于SEO的问题,在所有这些页面中使用站点名称并不总是最好的主意。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.