田舎の風見鶏

モジュールでURL・サイトIDを取得してみた

soycms

byぱくたそ

タイトルの通りsoy cmsのモジュール管理でURLとサイトIDを取得してみました。

というのも、よく使うデザインテンプレートのCSS参照が相対参照で標準ページとブログページでは階層が違うのでコピペで使い回すことが出来ないんです。

絶対参照だと、テスト環境でsoy cmsのサイトを作って本番のサーバーへ移したりするときに、イチイチ書き直しが必要なので動的に絶対参照出来きる方法は無いかと考えてたどり着いたので「モジュール管理」「モジュール」です。

やり方は至って簡単。

モジュール管理でモジュールの新規作成をクリックしPHPを記述。今回は

<?php
//ここにモジュールとして読み込むHTML・PHPを記述してください。
//使用可能な変数
// $html テンプレートに記述されたHTML
// $htmlObj ページオブジェクト($htmlObj->createAdd()が使えます)
$host = $_SERVER["HTTP_HOST"];
$siteId = basename(_SITE_ROOT_);
echo "http://" . $host ."/" .$siteId;
?>

として保存

ページ編集でCSSのmetaタグに

<!-- cms:module="site.urlid" -->サイトURL+IDのモジュールを読み込みます。<!-- /cms:module="site.urlid" -->

と書いて以降はcssファイルの指定を書いて保存。

無事に動的に絶対参照が出来ました。

短く書きたい場合は

<!-- cms:module="site.urlid" /-->

とすればOKです。

もしかしたらsoy cms自体にcmsタグや@@で始まるタグがあるかもしてませんが、見つけられなかったのでモジュール化してみました。

他にも自前で設置しているアクセス解析CGIのアクセス解析用タグもモジュール化しました。

モジュールがあれば同じスクリプトを一つ書いてあとはタグで設置できるので修正が楽ちんですね。

ますますsoy cmsが使いやすくなりました。



タイトル :
名前 :
URL :
コメント:

お手数ですが、下記入力項目に「確認」と入力して下さい。

トラックバックURL