コンフィグ

目次

コンフィグの基本

a-blog cms の設定をコンフィグと呼びます。このコンフィグはブログ毎にあり、子ブログでは個別の設定が必要になります。また、下記のyamlファイルがコンフィグの初期値を設定しているファイルになり、子ブログを追加した際には、このファイルに設定してあるテーマでブログ追加される事になります。

デフォルトの設定

/private/config.system.default.yaml

このファイルに初期のテーマ設定やモジュールの表示件数などさまざまな設定が定義されています。アップデートの時にファイルを差し替えるためと、システム側で内容をキャッシュしているため、直接このファイルの中身を編集しないようにします。上書き用ファイルに変更を追加してください。

ユーザー上書き用ファイル

/private/config.system.yaml

このファイルには何も書かれていません。config.system.default.yamlから上書きしたい設定と値をコピーしてきてファイルに定義します。このファイルはアップデートの時にファイルを差し替えないようしてください。

config.system.yamlで上書きする

例えば、子ブログを新規作成したときはblog2016テーマが設定されます。それはconfig.system.default.yamlのthemeがblog2016と定義されているからblog2016テーマになります。

## テーマ
theme : blog2016
load_yaml_tpl : on

/private/config.system.default.yamlのtheme設定をconfig.system.yamlにコピーしてきます。config.system.yamlのthemeをsite2016にすると子ブログを作成したときにsite2016テーマが設定されるように上書きすることができます。

## テーマ
theme : site2016

a-blog cmsのコンフィグ一覧

a-blog cmsのコンフィグ一覧

ブログ

コンフィグ一覧のブログではブログに関連する設定ができます。ブログの設定にはどんなものがあるか説明していきます。
各項目の解説についてはヘルプのツールチップをクリックすると解説をみることができます。


機能設定


機能設定では機能の利用設定、ログインの設定、コメントの設定があります。

基本


基本の機能設定

基本の機能設定


キャッシュ関連、アクセスログ、RSS/XMLへの出力、メールマガジン機能、バージョン管理、動的フォームの利用、メディア管理の利用など機能のON/OFFの設定を行います。
キャッシュはデバッグモードがオンになっていると有効になりません。config.server.phpのDEBUG_MODEの値を1から0に変更してください。

パスワードポリシー


パスワードポリシーの機能設定

パスワードポリシーの機能設定


CMSへのログインユーザーのパスワードポリシーを設定します。簡易なパスワードを設定できなくなるので設定をお勧めします。

ログイン


ログインの機能設定

ログインの機能設定


ログインの有効期限やログインのURL、ユーザー登録の設定があります。

コメント


コメントの機能設定

コメントの機能設定


コメント機能を利用するか、コメントの公開設定、スパム対策用のブラックリスト登録ができます。

出力設定


出力設定画面

出力設定画面


変換

文字コード、動的に出力するHTMLのソースコードや文字の設定、携帯サイトの絵文字の設定などがあります。

コンテントタイプと拡張子の関連付け

ブログごとにファイルと拡張子を関連付けしてファイルの種類を変更することできます。ブログのコンテンツを特定のコンテントタイプ(MIME)と拡張子を判断させることができます。

プロパティ設定


プロパティ設定画面

プロパティ設定画面


メタ情報

metaタグのkeywords(%{META_KEYWORDS})やdescription(%{META_DESCRIPTION})を設定します。

ウェブサービス

Google、Yahoo地図やBing Search、Twitter、Facebook、Instagramなど外部のWebサービスの連携するために必要なAPIキーを入力します。

Pingショット

Ping送信先のRPCエンドポイントを追加することができます。

メール設定


メール設定画面

メール設定画面


SMTPサーバー

メールを送信するSMTPサーバのホスト名、ポート、ユーザー名、パスワードを指定します。 指定されない場合はphp.iniのsendmail_pathに従い、sendmailを使用してメールを送信します。

メールアドレスの設定

以下の機能の差出人や宛先のメールアドレスやメールのテンプレートのパスを指定します。

  • 読者登録 / 読者登録(管理者)
  • ユーザ情報変更 プロフェッショナル版以上 / ユーザ情報変更 プロフェッショナル版以上(管理者)
  • パスワード再発行
  • コメント
  • 承認
  • メールマガジン

アドバンス

メールのReturn-Pathを特定のメールアドレスに設定できます。送信エラーが起きたときに管理者のメールアドレスに返ってくるようにすることができます。メールヘッダ分割コードはお使いのサーバーに合わせて変更してください。

アクセス設定


アクセス設定画面

アクセス設定画面


IPアドレスを登録と拒否することでa-blog cmsのログインを制限することができます。
またモジュール版のPHPですとベーシック認証をここで指定することができます。
ブラウザにログイン時のIDとパスワードを覚えさせている場合に、アカウントのユーザー情報とパスワードにその内容が補完されてしまい、意図せずに設定されてしまうことがありますので注意が必要です。

テーマ設定


テーマ設定画面

テーマ設定画面


テーマフォルダやテンプレートの設定ができます。
themesフォルダ内にオリジナルのテーマフォルダを置くことで、ブログ毎に固有のテーマを設定することができます。
トップ・一覧・詳細ページのテンプレートや編集ページのテンプレートなど設定します。

テーマフォルダ内にtemplate.yamlを置くことで、テンプレートファイルの設定を定義しておくことができます。この場合は、”テンプレート選択ファイル(template.yaml)の値を優先する”のチェックを有効にしてください。

外部認証設定


外部認証設定画面

外部認証設定画面


TwitterやInstagramの外部Webサービスと連携する際に認証を行います。

エントリー

ブログ毎にエントリーの関連する設定をすることができます。
各項目の解説についてはヘルプのツールチップをクリックすると解説をみることができます。

編集設定

エントリー機能

  • エントリーをその場で編集できるダイレクト編集機能の有効化設定
  • エントリーを段組みレイアウトするユニットグループ機能の有効化設定
  • 関連エントリー機能の有効化設定
  • 下書きエントリーを公開した時に日付を自動更新する機能の有効化設定
  • エントリーコードの重複チェック機能の有効化設定…同じエントリーコードのエントリーを公開日時を変えて使い分ける用途で使用する場合は無効にします。

エントリー機能設定画面

エントリー機能設定画面


ユニット追加ボタン

ユニットを追加するボタンの追加・削除ができます。



ユニット追加ボタン設定画面

ユニット追加ボタン設定画面


テキストタグセレクト

テキストユニットのタグにclassを追加する

テキストユニットにタグを追加・削除ができます。テキストユニットのタグにclassをつけたいときは p.classname と設定します。

h1ブロックを追加するには

テキストユニットのタグを追加する場合は、/themes/system/include/unit.html をお使いのテーマにコピーしてきてください。 /themes/お使いのテーマ/include/unit.html のunit#text内に追加したいタグのブロックを記述してください。


テキストタグセレクト設定画面

テキストタグセレクト設定画面


<!-- BEGIN unit#text -->
...
<!-- BEGIN h1 -->
<h1{class} id="h{utid}">{text}[nl2br]</h1><!-- END h1 -->
...
<!-- END unit#text -->

ユニット拡張機能を使う

拡張ではユニット個別に値を入力することができます。見出し大(h2)や段落(p)にclass名やid名をつけたいときなどにご活用ください。 ユニット拡張機能は extend_tag という変数を /themes/お使いのテーマ/include/unit.html のunit#text内に追加したいタグのブロックを記述してください。

ここに ID と書くと見出しに id="*設定した文字列*" が設定可能になります。

<!-- BEGIN h2 --><h2{class} id="h{utid}">{text}[nl2br]</h2><!-- END h2 -->

2.0 になってユニットのIDがバージョン管理を利用し、他のバージョンにする際にユニットのIDが違うものになってしまう事になっています。そのため今回、IDを手動で設定可能にしました。上記の記述を以下のように設定します。

<!-- BEGIN h2 --><h2{class}<!-- BEGIN extend_tag:veil --> id="{extend_tag}"<!-- END extend_tag:veil -->>{text}[nl2br]</h2><!-- END h2 -->

フォームユニット追加ボタン

動的フォームで使うフォームパーツ(テキスト、テキストエリア、ラジオ、セレクト、チェックボックス)を定義しています。 動的フォームのパーツを編集するには /themes/system/include/form/input.html をお使いのテーマにコピーしてきて、 /themes/お使いのテーマ/include/form/input.html を編集してください。

ユニットグループ

ユニットをdivで囲ってグループに分けることができます。2段組みや3段組みなどページのレイアウトをしたいときに利用しています。


ユニットを2カラムに設定

ユニットを2カラムに設定


2段組み

2段組み


ユニットグループを解除するacms-column-clear

a-blog cms ver.2.xからユニットグループを解除するacms-column-clearというクラスができました。このクラスはdivにクラスを振ったり、スタイルをつけるものではなく、ユニットグループのdivを解除するためのクラスになります。 画像はblog2014テーマで紹介しています。


管理ページ>コンフィグ>編集設定という順で編集設定ページに行き、ユニットグループの設定を変更する


編集ページにてグループをacms-column-clearが設定されているラベルを選択する

編集ページにてグループをacms-column-clearが設定されているラベルを選択する


acms-column-clearをつかったテンプレート


開発者ツールから確認すると、acms-column-clearを適用したpタグはユニットグループのdivで囲まれていない


サイズセレクト

画像、地図、メディア、YouTube、画像URLの横もしくは縦のサイズを指定することができます。ユニットの幅を%指定したときに対応するためにサイズも%指定できるようになりました。

エントリーコード

エントリーのファイル名や拡張子を指定できます。

イメージサイズ

ユニット画像の生成するサイズを指定することができます。

アップロード許可ファイル拡張子

ファイルユニットやファイルのカスタムフィールドでアップするファイルを制限できます。ドキュメント、アーカイブ、ムービー、オーディオなどをタイプ別に拡張子を指定します。

フォームユニット追加ボタン

動的フォームで使用する入力項目を設定します。

レイアウト追加ボタン

レイアウト機能で使用するブロックを設定します。

レイアウトグループ

レイアウト機能で使用するグループを設定します

ユニット設定

ユニット設定には新規エントリー作成とユニット追加ボタンから追加するユニットをまとめて設定することができます。
編集設定 > ユニット追加ボタンの値を参照しています。テキスト、画像、ファイルなどラベルが書いてあり該当するユニット追加ボタンを押すと定義したユニットが追加されます。ユニットはテキスト、画像、ファイルユニットなど自分で好きな組み合わせで登録しておくことができます。


ユニット設定画面

ユニット設定画面

モジュール

モジュールの初期設定を行います。実状のサイト構築では、利用するモジュールごとにモジュールIDをつけてそれぞれ設定を行う運用方法になります。

モジュールのコンフィグ

モジュールによって設定できる項目は違ってくるのですが、エントリーの表示順・表示件数や何件目から表示させるか、ページャーは表示させるか、メイン画像のサイズの指定などができます。

モジュールの詳しい説明についてはこちらをご覧ください。



また、モジュールの設定画面の右上には、ショートカットに追加というリンクがあります。この設定ページへのリンクに任意の名前をつけて管理ページダッシュボード上に表示できます。実際に運用をする担当者様による更新をわかりやすくする効果があります。



表示側からモジュールIDの設定を変更する

モジュールIDの設定を直接編集するリンクをつけることができます。このリンクをつけることで管理画面から該当するモジュールを探さなくても変更することができます。



モジュールのブロックにモジュールを直接編集するリンクを追加してください。以下のように /admin/module/setting.htmlをincludeすることでモジュールを編集するためのリンクを追加できます。
ただしinclude文を divタグで囲わないと正しくリンクが表示されない場合がありますのでご注意ください。

<!-- BEGIN_MODULE Entry_Headline id="topHeadline" -->
<div>
<!--#include file="/admin/module/setting.html"-->
...
</div>
<!-- END_MODULE Entry_Headline -->

コンフィグ

「コンフィグ」として設定した各項目の内容は、別のブログからインポート(読み込み)したり、別のブログへエクスポート(書き出し)ができます。編集設定やユニット設定などが共通のブログを作る場合には、毎回管理ページから設定するよりも、エクスポート・インポートを行った方が作業を少なくできます。

コンフィグの部分インポート

部分的なコンフィグのインポートを行います。 インポートデータ(yaml)にあるキーのデータだけ上書きしてインポートデータにないデータはそのまま残ります。編集設定など量の多いコンフィグをインポートしたいが、他の設定は変えたくない場合に便利です。


コンフィグの部分インポート画面

コンフィグの部分インポート画面


インポート(コンフィグ/ルール/モジュール)

コンフィグ / ルール / モジュール のインポートを行います。idをコードに変換してインポートを行います。 既存のコンフィグ / ルール / モジュール を削除してインポートを行いますのでご注意ください。 ただし、バナーモジュールのコンテンツとモジュールフィールドの画像、ファイルは削除・インポートを行いません。


コンフィグのインポート画面

コンフィグのインポート画面


エクスポート(コンフィグ/ルール/モジュール)

エクスポートボタンで、現在のブログのコンフィグの内容が「ブログ名.config.yaml」としてダウンロードされます。このファイルを別のブログの 管理ページ > コンフィグ > インポート で使用することで同じコンフィグのブログにすることができます。

デフォルトコンフィグのエクスポート

エクスポートするブログのコンフィグのみを yamlファイル に書き出します。 この内容を private/config.system.yaml に追記すると、新規ブログ作成時のデフォルト設定にすることができます。


コンフィグのエクスポート画面

コンフィグのエクスポート画面


リセット

リセットボタンで、コンフィグの各項目の内容を破棄します。 リセット後は、システムデフォルトのコンフィグ(private/config.system.yamlの設定値)が適用されます。また、ルール適用時のコンフィグがリセットされると、ブログの元々のコンフィグが適用されます。

システムデフォルトのコンフィグには、初期のテーマ設定やモジュールの表示件数などさまざまな設定が定義されています。本ドキュメントの コンフィグ > コンフィグの基本 > デフォルトの設定 も合わせてご確認ください。


コンフィグのリセット画面

コンフィグのリセット画面


子ブログへのコンフィグの複製

ここまではブログのコンフィグをエクスポートして他のブログへインポートする方法を説明してきましたが、親ブログから子ブログへのコンフィグの複製であれば、 管理ページ > コンフィグ > ブログ のブログ一覧からでも可能です。チェックした複数の子ブログに一括でコンフィグを複製できます。


コンフィグの複製

コンフィグの複製

ガイドライン/ツール

a-blog cmsでは、Webサイトを構築していく上でのガイドラインや便利なツールに管理ページからアクセスできるようにしています。


ガイドライン/ツール

ガイドライン/ツール


スタイルガイド(管理画面)/(CSSフレームワーク)

a-blog cms styleguide として、acms.css、acms-admin.cssを使用した際の記述と表示のサンプルを収録しています。カスタマイズ・装飾をする際の参考としてください。
管理画面で使用する場合にはクラス名「acms-」と「acms-admin-」の違いにご注意ください。



カスタムフィールドメーカー

タイプや名称を入力することでカスタムフィールドのソースコードを出力する「カスタムフィールドメーカー」です。詳しい使用方法は本ドキュメントの カスタムフィールド > カスタムフィールドメーカー をご確認ください。


カスタムフィールドメーカー

カスタムフィールドメーカー


国際化 ( i18n )

a-blog cms では、決められたルールでテンプレートを記述することで、指定した言語を別の言語に切り替えてページを表示できます。例えば英語圏のユーザには管理画面を英語で表示するといった用途があります。 このような国際化に関する記述やカスタマイズについて、管理ページからドキュメントにアクセスできるようにしています。 なお、この内容は本ドキュメントの システム管理 > 国際化(i18n) と同様のものとなります。


コンフィグセット

コンフィグセット機能とは

コンフィグセット機能とはVer.2.10より導入された機能で、以下のように1ブログに対して複数のコンフィグ(コンフィグセット)を設定できる機能になります。


この機能を使うことで、例えば製品情報のカテゴリーには製品情報用のコンフィグセットを設定することができるようになります。また、作成したコンフィグを「グローバル」に設定することによって、子ブログに自身の持っているコンフィグセットを設定したりすることができるようになります。

コンフィグセット機能を利用する

例えば、「製品情報」のカテゴリーの場合のみエントリー作成画面で以下のようにエントリーのラベルを「製品名」に変更し、そのほかいらない項目を削除するカスタマイズをここでは紹介します。最終的な結果は以下のようになります。


製品情報用のエントリー作成画面

1. 製品情報用のコンフィグセットを作成

管理画面 > コンフィグ より製品情報用のコンフィグセットを新規作成します。


1. 作成したコンフィグセットを編集

先ほど作成した、製品情報用のコンフィグを選択します。


選択後、コンフィグ管理 > 編集設定 > エントリー項目設定に移動します。下の図のようにエントリー編集画面に必要のない項目の表示のチェックを外しましょう。 そして、タイトルのラベルを「製品名」に変更します。


3. 製品情報のカテゴリーに設定したコンフィグセットを適用

管理画面 > カテゴリーより製品情報のカテゴリーを選択し、先ほど設定したコンフィグセットを割り当てます。


以上でカスタマイズ完了です。製品情報のカテゴリーのエントリー編集画面に行くと他のエントリーと異なり、エントリータイトルが「製品名」になっていて、他の項目が表示されていないことが確認できます。