2012年9月19日水曜日

Concrete5のベースURLについて。




先日、久しぶりにConcrete5での仕事を頂きました。
ただし、少々特殊な作業内容だったので、覚書として記憶の片隅&Concrete5ユーザーの助けになればと思います。


Concrete5のベースURLは、日本サイトでは具体的な使い方は、phpを使った方法しか書いていません。



phpでの記述方法

<?php echo BASE_URL . DIR_REL ?>


この記述方法では、実際のサイト内での使用はほぼ出来ません。
しかし、海外では下記のコマンドが一般的に使われています。

{CCM:BASE_URL}


これを、サイト制作の際にHOMEボタン等のリンクURL等に使うと、便利なので覚えておいて損はありません。
ただし使い方が限定されるので、注意が必要です。

使い方としては、

<a href="{CCM:BASE_URL}">HOME</a>


とすれば、自動的にHOMEへのリンクになります。
httpから始まるドメインを記述しなくて済むだけではなく、ドメイン変更やサーバー移管等の事態が起きても、ソースコードの修正が必要無いので、非常に便利です。

しかし、使い方にコツ?があります。
通常であれば、HTMLブロックを選択して、記述したいところですが、HTMLブロックで記述すると、リンク表示がおかしくなります。

どうやら、これはバグ?なのでしょうか。
HTMLブロックで上記のタグを記述すると、ベースURLを認識しません。
(詳しくは説明しませんが、とにかくHTMLブロックでは上手く表示しません)
※2012/9/20修正。
HTMLブロックでのバグでは無く、HTMLブロックには、純粋にHTMLしか表示されないようです。



ではどうするか?

記事ブロックで追加してください。記事ブロックでのHTML表示にて、ソースコードを入力すれば、問題無く表示されます。
ベースURLの考え方はCMSを使う上で非常に重要になるので、他のCMSでも可能な限り使う事をおすすめします。
まぁ、サーバー移転はよくある事ですが、ドメイン変更はあまり無い?かもしれません。
しかし、もしもの時に備える事も、web屋の腕の見せ所です。

こういった見えないところで、ちょっとした気遣いを忍ばせておく事が出来るのが、プロだと思いますよ。





神奈川県を中心として主に横浜・川崎・東京23区西部の中小企業・個人事業主向けホームページを制作しております。 横浜本田WEB


横浜本田WEB Facebookページ
http://www.facebook.com/hondaweb?fref=ts

  • このエントリーをはてなブックマークに追加


3 件のコメント:

  1. HTMLブロックのはバグじゃないです。
    と言うかコンテンツブロックでしか{xxx}系は使えないんです。

    返信削除
    返信
    1. このコメントは投稿者によって削除されました。

      削除
    2. tao_sさん
      ありがとうございます。

      やはりそうでしたか。
      吐き出される、URLを見ると、UTF-8で{が置換表示されていたので、もしや?と思っていました。

      とするとHTMLブロックには、純粋にHTMLコードしか記述出来ないという事ですね。

      せっかく優れたUIを使っているので、もう少し柔軟性があると、いいのですけど。

      削除