|
Joomla!1.5ではデフォルトでダイナミックページタイトルが導入され、開いているページタイトル名のみがウィンドウタイトルバーに表示されます。サイト名は表示されません。
テンプレートでタイトルに常にサイト名も表示させるには? 相応のプラグインエクステンションを導入してもOKですが、どうせテンプレート自作するならってことでテンプレートの中に記述する便利な記述例です。
為になったサイトはです。
JFactoryとJDocumentを使います。
ページタイトルを取得するために
<?php
$mydoc =& JFactory::getDocument();
$mytitle = $mydoc->getTitle();
?>
とテンプレート“index.php”に書くだけです。
出力のために
と書きます。以上で終わり。
次にHTMLタイトルの編集。
$conf =& JFactory::getConfig();
$sitename = $conf->getValue('config.sitename');
$mydoc->setTitle($mytitle.' - '.$sitename);
これを全部まとめて
<?php
$mydoc =& JFactory::getDocument();
$mytitle = $mydoc->getTitle();
$conf =& JFactory::getConfig();
$sitename = $conf->getValue('config.sitename');
$mydoc->setTitle($mytitle.' - '.$sitename);
?>
で完成。ウィンドウタイトルバーには 【ページタイトル - サイト名】という表示になります。
これを逆にするには "$sitename.' - '.$mytitle" とするだけ。
実験的に自作テンプレートに↑のコードをheadタグ内に挿入してうまくサイト名も取得できました。
お気に入りに追加されたり、履歴から探すときにはタイトル名が最初に来ていた方がわかりやすいですかね。
↓以下は未実験です。
★あと参考サイトのコメント欄に寄せられていたコメントでこのテクニックで成功したという他のメタタグ
$mydoc =& JFactory::getDocument();
$description = $mydoc->getDescription();
$generator = $mydoc->getGenerator();
$keywords = $mydoc->getMetaData( 'keywords' );
$author = $mydoc->getMetaData( 'author' );
$mytitle = $mydoc->getTitle();
$conf =& JFactory::getConfig();
$sitename = $conf->getValue('config.sitename');
しかし“更新日”は動作しなかったそうです。
ヽ(´ー`)ノ
 |