ホーム > サポート・マニュアル > マニュアル > カスタマイズの方法 > 仕様・特徴 > acmsパス

マニュアル

acmsパス

ドキュメント最終更新日時:2013/05/24 11:26

タグ:インクルード 

ここでは、a-blog cmsで使用する独自のパス「acmsパス」について説明します。

acmsパスとは

acmsパスとは、a-blog cmsのファイルやリンクを独自のパスの形式で指定するものです。URLコンテキストの概念を利用しています。

URLコンテキストと同様に、Webサイト内の場所や状態をパスとして表現しています。パスの頭には「acms://」と記述します。

acmsパスの中で記述できる項目は、リファレンス「acmsパス」を参照してください。

acmsパスの使用場所

バージョン1.2.0現在は、以下の2箇所でacmsパスを使用することができます。

  1. インクルードのファイルパス
  2. ナビゲーションモジュールのURI欄

acmsパスを多用すると、処理の負荷が高くなりサーバの環境によっては表示速度が遅くなる場合があります。

1. インクルードのファイルパス

acmsパスでインクルードすると、システム上のどこからでも任意のコンテンツを表示させることができます。ナビゲーション用のリンクを、カテゴリーコードやエントリーコードの変更に影響されずに組み立てることも可能です。

任意のブログのコンテンツを表示

URLコンテキストの記述を利用して、任意のブログのコンテンツを表示することができます。

例1)ブログ(bid="1")が使用しているテーマフォルダにある「banner.html」をインクルード

<!--#include file="acms://bid/1/tpl/banner.html" -->

「tpl」を使用する場合はacmsパスの最後に記述してください。

例1の記述でインクルードされた場合、banner.html内のファイルは以下のような条件で処理されます。

  • 『bid="1"のブログ』から参照したものとして処理されます
  • モジュールIDが設定されていた場合も、『bid="1"に該当するモジュールIDがあれば適用』されます
  • グローバル変数も『bid="1"のブログ』から参照したものとして処理されます

例2)ブログ(bid="1")でカテゴリー(cid="1")のコンテンツが表示されている場合に適用されているテーマフォルダにある「banner.html」をインクルード

<!--#include file="acms://bid/1/cid/1/tpl/banner.html" -->

例2のように、任意のURLコンテキストを指定すると、任意の場所のコンテンツを、任意の条件で表示させることができます

複数のブログで共通のパーツを表示

例3)ブログ(bid="1")が使用しているテーマフォルダにある「include/header.html」と「include/footer.html」をインクルード

<!--#include file="acms://bid/1/tpl/include/header.html" -->
<!--#include file="acms://bid/1/tpl/include/footer.html" -->

例3では、「include/header.html」と「include/footer.html」が、『bid="1"のブログ』の設定やモジュールIDが反映された状態でインクルードされます。

ヘッダーやフッター、グローバルナビゲーションなど、Webサイト全体で共通するものを表示したいとき、acmsパスで親ブログのものを参照すると、親ブログ上で共通パーツをまとめて管理することが可能になります。

2. ナビゲーションモジュールのURI欄

管理ページの[コンフィグ]にある、ナビゲーションモジュールの設定画面のURI欄でacmsパスを記述することができます。(設定画面の詳細は「ナビゲーション(Navigation)モジュールの設定」参照)

例)

リンク名 URI
%{CATEGORY_NAME} acms://bid/1/cid/1
%{BLOG_NAME} acms://bid/2

上の例のように、リンク名にグローバル変数を指定することも可能です。このように指定することで、サイトのドメイン名やカテゴリー名などを変更した場合でも、リンク名やURIの値を修正する必要がなくなります。



携帯アクセス解析