期間を使った表示の振り分け方法

ルールでは、期間を使ってコンフィグの設定を振り分けることができます。たとえば、朝には朝のセールのバナーを表示し、夕方には、夕方のセールのバナーを表示することができます。この機能は Ver.2.5 よりご使用できます。

設定方法

一番初めのセレクトメニューでは、「BETWEEN」を選択します。選択することで、指定した期間の間でルールが適用されます。

詳細な条件設定ができる場所では、1つめのセレクトメニューでは「定期」または「固定」を選ぶことができます。「定期」を設定した場合、毎月、曜日、時間を選択できるようになります。「固定」を選択した場合、毎月、曜日、時間に加えて日付も設定できるようになります。

以下は、定期的にお昼になったらルールが適用される設定です。


BETWEEN、「定期」、時刻にはお昼の時間帯である「11:00:00~14:00:00」を設定した

「お昼」のときの設定

モジュールIDとあわせて複数カテゴリーからのピックアップ表示を実現する方法

ピックアップ表示

特定のエントリーだけを表示したいことがあると思います。a-blog cmsではカスタムフィールドを応用することで、カテゴリーをまたがったピックアップ表示を実装することができます。

今回はモジュールIDを利用して、ブログ全体から特定のエントリー(ピックアップ用のフラグになるカスタムフィールドを設定したエントリー)だけを表示する設定について説明します。

Unit_List の使用ケースその1:ギャラリー

Unit_Listとは、ビルトインモジュールの1つで、現段階では Entry_Body 以外で唯一ユニットを表示できるモジュールです。Entry_Body と違うところは、Entry_Body はエントリーのユニットを表示するのに対し、 Unit_List はエントリーをまたぎ、ユニットのみを表示して一覧にすることができます。

Unit_List は特殊なモジュールのため、どう応用していいのか想像がつきづらいかと思いますが、その1例として、ギャラリーページに使われます。


(スクリーンショット:写真が並んだギャラリーページ)

ユニットリストをギャラリーとして利用した例


実装方法

まずは、ギャラリーを表示したい場所に、ユニットリストを実装したファイルをインクルード機能を使って読み込みます。

インクルードファイルが /include/unit_list.html の場合、ソースコードは以下のようになります(※ファイルのパス、ファイル名が違う場合は30行目を修正してください)。

ソースコード(/include/unit_list.html)

<script>
  ACMS.Ready(function(){
    ACMS.Config.ppMark = 'a[data-rel^="prettyPhoto"]';
  });
</script>
<!-- BEGIN_MODULE Unit_List id="gallery" -->
<div class="acms-container">
  <!--#include file="/admin/module/setting.html"-->
  <div class="acms-grid">
    <!-- BEGIN unit:loop -->
    <div class="acms-col-md-4 acms-col-sm-6 text-center" style="position: relative;"> 
      <a href="<!-- BEGIN_IF [{large}/nem/] -->%{ARCHIVES_DIR}{large}<!-- ELSE -->%{ARCHIVES_DIR}{normal}<!-- END_IF -->" data-rel="prettyPhoto[gallery{entry_id}]" title="{entry_title}" >
          <p class="acms-text-center"><!-- #BEGIN image:veil -->
            <img src="%{ARCHIVES_DIR}{normal}[resizeImg(200,200)]" alt="{alt}"  class="acms-img-rounded"><!-- #END image:veil -->
          </p>
      </a>
      <!-- BEGIN_MODULE Touch_SessionWithAdministration -->
      <!-- 編集ボタン -->
      <form action="" method="post" style="position: absolute; bottom: 20px; right: 15px;">
        <input type="hidden" name="eid" value="{entry_id}" />
        <input type="hidden" name="admin" value="entry-edit" />
        <input type="submit" name="ACMS_POST_2GET" value="変更する" class ="acms-admin-btn" />
      </form>
      <!-- END_MODULE Touch_SessionWithAdministration -->
    </div>
    <!-- END unit:loop -->
  </div>
 
  <!-- 続きを読むボタン -->
  <!-- BEGIN pager:veil --><!-- BEGIN forwardLink -->
  <form action="" method="post" class="js-post_include">
    <input type="hidden" name="bid" value="%{BID}" />
    <input type="hidden" name="cid" value="%{CID}" />
    <input type="hidden" name="tpl" value="/include/unit_list.html" />
    <input type="submit" name="ACMS_POST_2GET" value="もっと見る" class="acms-btn acms-btn-block acms-btn-large" />
    <input type="hidden" name="page" value="{forwardPage}" />
  </form>
  <!-- END forwardLink --><!-- END pager:veil -->
</div>
<!-- END_MODULE Unit_List -->

注意点

  • モジュールID名を修正するときは6行目を変更してください(現在のモジュールID名は「gallery」になっています)
  • 1~5行目では、prettyPhotoはHTML5対応するため、12行目のrel属性をdata-rel属性に変更しています
  • ファイルのパス、ファイル名が違う場合は34行目を修正してください

モジュールの設定



ユニットタイプの「画像」がチェックされていることを確認してください。

他の設定については、必要に応じて有効にしてください。


Unit_List を使うことで変わるギャラリーページの運用方法


Unit_Listをギャラリーページで使うことになると、基本的にはエントリーのページでは文字を挿入することがなくなります。運用時に運営者が迷わないように、管理画面>コンフィグ>編集設定の順にページを移動し、「画像」以外のユニット追加ボタンを削除しましょう。


編集設定のページにある、ユニット追加ボタンを「画像」以外削除しておく


エントリー編集画面のユニット追加ボタン


このように画像投稿専用のUIが運営者に提供できます。

キャッシュ自動生成

この機能は Ver. 3.0.0 で廃止されました。

キャッシュ自動生成機能は付加が高い処理のため、サーバーのスペックやキャッシュ生成リストの件数などによってはサーバーの応答がされない可能性がありますのでご注意ください。

ページの表示内容をキャッシュデータとして用意しておき、次回そのページにアクセスががあった場合に素早く表示を行うサーバーキャッシュの機能がa-blog cmsには用意されています。
しかし、何か記事を更新するとブログ単位でキャッシュが削除されますので、次のアクセスはキャッシュが効いていない状態で少し遅くなります。そこでキャッシュ削除時に同時に新しいキャッシュを作る仕組み(キャッシュの自動生成)について説明します。

まずは、管理ページ > コンフィグ > 機能設定:基本の中にあります[キャッシュ自動生成]を有効にします(※この項目はルートブログにのみ存在します)。[キャッシュ自動生成]を有効にすると、ダッシュボードに[キャッシュ生成リスト]の項目が追加されます。


管理ページ > コンフィグ > 機能設定


管理ページ > ダッシュボード:キャッシュファイル管理から、キャッシュ生成リストへ遷移します。

※先ほどの[キャッシュ自動生成]を有効にしても[キャッシュ生成リスト]の項目が表示されない場合は、デバッグモードをオンになっていないか、開発ライセンスのままになっていないか、をご確認ください。


管理ページ > ダッシュボード


キャッシュ生成リストのページへ移動したら、自動生成するページを登録します。キャッシュを用意したいページのURLを追加していきます。



キャッシュクリア前

キャッシュクリア、キャッシュ自動生成後


キャッシュクリアをしますとキャッシュの全体の件数が0になります。その後、[キャッシュ生成]ボタンを押下しキャッシュ自動生成を実行すると、キャッシュ生成リストに登録されているページのキャッシュが生成されます。件数で確認できます。 キャッシュ自動生成は手動でボタンを押した時以外にも、エントリーやカテゴリーが保存されたタイミングでキャッシュがクリアされ、その後にキャッシュ自動生成が行われます。