システム管理

目次

システム利用ドメインの変更

ドメイン修正

途中でサイトのドメイン(公開URL)が変更された場合に使用する機能です。a-blog cmsはconfig.server.phpとデータベース内に、公開環境のドメイン情報を保持しているため、ドメインの切り替えが行われた場合、それらドメイン情報を修正する必要があります。

メンテナンスプログラムへのアクセス

このドメイン修正機能は、メンテナンスプログラム(setup)に含まれています。setupは、インストール時にアップロードした同名のディレクトリと、その中のプログラムファイル群を指します。これらプログラムはインストール後も、システム全体に関わるメンテナンス機能に利用できます。

インストール後にsetupを削除した場合

setupを、サーバー上のindex.phpと同じ階層に再度アップロードしてアクセスします。

インストール後にsetupを任意の名前に変更した場合

「 http://現在の公開URL/変更後の任意名/index.php 」にアクセスします。 メンテナンスプログラムへのアクセスには、ルートブログの管理者権限をもったユーザーのID/メールアドレスと、パスワードが必要です。



ドメイン修正機能へのアクセス

メンテナンスプログラムを表示したあとのページから、システムの修正ツールを選択して、ドメインの修正を選択します。



これからドメインを切り替える場合

切り替え後の予定ドメインを入力して実行してください。現在のURLを元にドメインが既入力されますが削除してください。先にシステム内の情報を書き換えた場合、ドメインを切り替えるまでサイトが正常に表示できなくなりますのでご注意ください。 ※a-blog cmsのライセンス発行したときにドメインがwwwありか、wwwなしかご確認してください。ライセンス発行したときのドメインを入力してください。 ライセンス発行したときのドメインが違うとライセンスが正しく適応されません。

すでにドメインを切り替えている場合

既入力されているドメインで正しければそのまま実行してください。異なる場合は、本来の正しいドメインに書き換えて実行してください。

デバッグモードとベンチマークモード

デバッグモード

デバッグモードを有効にすることにより各種エラーメッサージや、インクルード先のパスがコメントで表示されるようになります。

Ver. 3.0.x 以下の場合

新規インストール時は有効になっています。開発中は有効にしておくことをオススメします。

有効化 / 無効化

a-blog cms を設置したディレクトリの config.server.php を編集します。

// 本番運用時にDEBUG_MODEを 0 に設定して下さい
define('DEBUG_MODE', 1);

"1" を設定すると有効。 "0" を設定すると無効になります。

注意事項

デバッグモードを有効にするとキャッシュが効かなくなります。また、エラーメッセージも表示されるため本番環境では、無効にするようにしてください。

Ver. 3.1.x 以上の場合

新規インストール時は config.server.php でのデバッグモードの設定は 0 になっています。Ver. 3.1.x 以上では管理ユーザーの場合のみ、ユーザー編集画面で、そのユーザー限定でデバッグモードとベンチマークモードになることができるオプションが用意されているのでこちらを使用することを推奨します。開発環境でも本番環境でも、気軽にデバッグモードとベンチマークモードを試すことができます。


ユーザー編集画面でモード設定

ベンチマークモード

ベンチマークモードを使用すると以下のような事がわかります。ページ下部に出力されるようになります。

  • そのページでの全グローバル変数の出力内容
  • モジュールの処理時間
  • 各処理時間
  • 読み込まれているテンプレート
  • メモリ使用量

[キャプチャ] ベンチマークモードの表

ベンチマークモードの有効時にページ下部に出力される表


開発中ページの表示速度が遅い時にどのモジュールが原因なのか特定したり、グローバル変数の出力を確認したりすると事などができるようになります。

各処理時間

項目説明
MODULE TOTAL TIMEそのページで使われているモジュールの総合処理時間
BOOT TOTAL TIMEMODULE TOTAL TIMEにモジュール起動時間を含めた処理時間
BUILD TOTAL TIMEテンプレート解決の処理時間
REWRITE PATH TOTAL TIMEテンプレートのパス書き換え時間
PROCCESS TIMEa-blog cms全体の処理時間

Ver. 3.0.x 以下の場合

有効化 / 無効化

a-blog cms を設置したディレクトリの config.server.php を編集します。


// 本番運用時にDEBUG_MODEを 0 に設定して下さい
define('DEBUG_MODE', 1);
define('BENCHMARK_MODE', 1);

ベンチマークモードは、デバッグモードも有効になっている必要があります。

"1" を設定すると有効。 "0" を設定すると無効になります。

Ver. 3.1.x 以上の場合

ベンチマークモードを試したい管理者のユーザー編集画面で デバッグモード & ベンチマークモード を選択してください。

メンテナンスモードについて

a-blog cmsには、インストール時に使用するsetupディレクトリを、インストール後に表示することでメンテナンスモードを動作させることができます。
メンテナンスモードには、ブログ単位でのインポートやドメイン修正、表示異常の場合の構造修正などが含まれています。



メンテナンスモード使用上の注意


メンテナンスモード使用中は、一般の閲覧者にはメンテナンス中として表示されます。
a-blog cmsの管理者権限を持つユーザーでログインすることで、各メンテナンスメニューが実行できます。


エクスポート/インポート

a-blog cmsのブログ単位でのデータをエクスポート/インポートする場合に使用します。エクスポート/インポートするデータの他に、該当ブログの media ディレクトリと、storage ディレクトリ、archives ディレクトリ、themes ディレクトリが必要になります。


エクスポートの手順

この機能は Ver. 2.8.0 より管理画面から行える様になりました。特に理由がない場合はそちらをご利用ください。

インポートの手順

メンテナンスメニューにログイン後、ブログ毎のインポート > インポート実行画面へ をクリックします。


メンテンスメニューから ブログ毎のインポート > インポート実行画面へ をクリックする

メンテンスメニューから ブログ毎のインポート > インポート実行画面へ をクリックする


インポート先またはその親になるブログを選択します。親になるブログを選択する場合は、選択したブログの子ブログとして新規作成する​ にチェックを付けて、新規作成時のブログ名新規作成時のブログコード を入力してください。


インポート先またはその親になるブログを選択する

インポート先またはその親になるブログを選択する


次に、インポートするブログデータ名を選択してください。選択肢には setup_xxxx/bin/ ディレクトリ直下のディレクトリ名が表示されます。


インポートするブログデータ名として utsuwa を選択する

インポートするブログデータ名として utsuwa を選択しています。

次に、コンフィグ関連のインポート設定を行います。既存のデータを残さず、インポートするデータだけの状態にしたい場合は全ての項目にチェックをつけます。


既存のデータを残さず、インポートするデータだけの状態になります。

既存のデータを残さず、インポートするデータだけの状態になります。

ここまでの設定ができたら、最後に「インポートを実行する」ボタンをクリックして、ブログデータをインポートします。(ほとんどの場合必要ありませんが、必要であればインポート前に、オブション設定項目を設定してください)


「インポートを実行する」ボタンをクリックする

「インポートを実行する」ボタンをクリックする

↓ インポート完了後、下記の画面が表示できていれば、ブログデータのインポートが完了しています。画面のメッセージに従って、https://ドメイン/bid/◯ にアクセスしてみましょう。


インポート完了画面

インポート完了画面

修正関連

ドメインの修正

制作環境から公開環境へ、サーバーやドメインの変更を変更する場合に使用します。

アクセス設定の修正

選択したブログの以下の設定をすべて削除して、アクセス設定を初期化します。
誤った設定をしてしまい、正常にログインできなくなってしまった場合に使用します。

カスタムフィールド検索フラグの修正

シーケンスの修正(※Ver.2.5より管理画面内のデータ修正のページへ移動)

IDの発行に異常がある状態のシーケンスを修正します。

ブログ構造の修正

カテゴリー構造の修正

コメント構造の修正

サマリーデータの修正(※Ver.2.5より「フルテキスト修正」として管理画面内のデータ修正のページへ移動)

Entry_Summaryで変数が正常に出力されない状態を修正します。

カスタムフィールド検索フラグ、シーケンス、ブログ構造、カテゴリー構造、コメント構造、サマリーデータの各修正については、問題が無い場合には該当ページ上に問題が無い旨が表示されます。問題が無い場合には、各修正を行っても動作に変更はありません。

画像サイズの修正(※Ver.2.5より管理画面内のデータ修正のページへ移動)

インデックスの修正

その他のツール

N-gramインデックスの付与(※Ver.2.5より管理画面内のデータ修正のページへ移動)

既存コンテンツにN-gramインデックスを付与します。文字列を指定した文字数(gram)で切り分けることで検索用のキーを生成します。
この処理を実行した後に、config.system.yamlなどからngramを有効にすると、サイト内検索の内部処理が変更されます。

既存エントリーへのタグ追加(※Ver.2.5より管理画面内のデータ修正のページへ移動)

指定ワードを含むエントリーに対して、ワードをタグとして付与します。

画像のリサイズ

画像のリサイズ

a-blog cmsではメンテナンスツールを使い、下の図のように一度アップロードした画像のリサイズを行うことができます。例えばサイトのデザインの変更に伴い、これまでアップロードされた画像サイズを一括で変換したいときなどに重宝します。

変更前



変更後



機能の利用方法

画像のリサイズ機能は管理画面内のデータ修正のページにあります。管理画面内左にあります、サイドバーより移動してください。

Ver.2.1.1.4以前をご利用の方は、メンテナンスプログラム( http://ドメイン/setup/index.php、またはsetupフォルダを書き換えている場合は書き換えたディレクトリ名)にてご利用いただけます。

リサイズする画像サイズを選択

リサイズする画像サイズを選択してリサイズ後のサイズを入力し、「画像サイズを修正する」をクリックしてください。リサイズ後のサイズは「長辺」のサイズに合わせるか、「横」のサイズに合わせるか、「縦」のサイズに合わせるかを選択することができます。



なお、リサイズできる画像は下のように、管理画面 > コンフィグ > 編集設定で登録した画像サイズでエントリーに公開されているものになります。




拡大画像がない場合や、拡大画像より大きいサイズには修正がされませんので、ご注意ください。

国際化(i18n)

国際化について

決められたルールでテンプレートを記述することで、指定した言語を別の言語に切り替えてページを表示できます。例えば英語圏のユーザには管理画面を英語で表示するといった用途があります。

特定の文字列を翻訳可能にする方法

a-blog cms で文字列を翻訳可能にするには元の文字列を以下のコメントで囲みます。

<!-- TRANS -->翻訳文字<!-- /TRANS -->

または

<!-- T -->翻訳文字<!-- /T -->

変数の埋め込み

翻訳対象の中に変数が入ってくる場合は以下のように変数を<!--$1-->で囲みます。変数の数によって$数値を増やしてください。

ソース

<!--T-->こんにちは<!--$1-->{lastName}<!--/$1--> <!--$2-->{firstName}<!--/$2-->さん<!--/T-->

POファイル

msgid "こんにちは$1 $2さん"
msgstr "Hello, $2 $1"

文脈

文字列としては同じでも、文脈により意味が異なるケースがあります。その場合は以下のようにctx=""を振ることで、別のものとして翻訳することができます。

テンプレート側の記述

<!--T ctx="show"-->表示<!--/T-->
<!--T ctx="display"-->表示<!--/T-->

その際に後ほど紹介するPOファイルには以下のように記述し、翻訳内容を切り替えます。

msgid "表示_CTX_show"
msgstr "show"
 
msgid "表示_CTX_display"
msgstr "display"

翻訳用ファイルの作成手順

翻訳用ファイル(MO)ファイル作成にはPOTファイル生成 → POファイル生成 → MOファイル生成という段階を踏む必要があります。その際に専用のソフトウェアであるPoeditを使うと便利です。

POTファイル

各テーマのadmin以下のテンプレートでマークした文字列を抽出します。管理ページ > コンフィグ管理 > 国際化 ( i18n ) のpot ダウンロードからPOTファイルをダウンロードして下さい。

POファイル

ダウンロードしたPOTファイルから各言語に翻訳してPOファイルを生成します。拡張子を.potから.poに変更するだけで構いません。 例: 英語に翻訳

#: themes/system/admin/top.html
msgid "ダッシュボード"
msgstr "Dashboard"

MOファイル

先ほど紹介した、Poeditなどのソフトウェアを使いPOファイルをMOファイルに変換します。 出来上がったMOファイルを以下の場所(デフォルト)に設置してください。

例 : /lang/en_US/LC_MESSAGES/messages.mo
/a-blogcms設置ディレクトリ/lang/[言語]_[地域]/LC_MESSAGES/messages.mo
言語と地域の例
説明(例)言語地域
日本語、日本jaJP
英語、米国enUS
ロシア語、ロシアruRU
韓国語、韓国koKR

config.server.phpの設定

config.server.php で以下の設定ができます。

define('GETTEXT_TYPE', 'auto'); // fix|auto
define('GETTEXT_APPLICATION_RANGE', 'admin'); // admin|login|all
define('GETTEXT_DEFAULT_LOCALE', 'ja_JP.UTF-8');
define('GETTEXT_DOMAIN', 'messages');
define('GETTEXT_PATH', 'lang');

GETTEXT_DOMAINおよびGETTEXT_PATHはとくに変更の必要はありません。

GETTEXT_TYPE

fixconfig.server.phpで指定した言語地域で固定します
userユーザ毎に管理画面より言語地域を設定します。
autoブラウザの言語地域の設定を反映します

TYPEが"user"だった場合、ユーザ詳細ページのカスタマイズが必要になります。

<!-- /独自テーマ/admin/user/field.html に用意 -->
<tr>
  <th>ロケール<i class="acms-admin-icon-tooltip js-acms-tooltip" data-acms-tooltip="ユーザー毎のロケールを設定します。"></i></th>
  <td>
    <select name="locale">
    <option value="ja_JP.UTF-8"{locale:selected#ja_JP.UTF-8}>日本語</option>
    <option value="en_US.UTF-8"{locale:selected#en_US.UTF-8}>English</option>
    </select>
    <input type="hidden" name="user[]" value="locale" />
  </td>
</tr>

GETTEXT_APPLICATION_RANGE

adminadminディレクトリ以下(管理ページ)のみ翻訳します
loginログインしている時のみ翻訳します
allすべてのページを翻訳対象にします

GETTEXT_DEFAULT_LOCALE

基本の言語地域を設定します。GETTEXT_TYPEが固定だった場合やブラウザの言語地域のmoファイルが見つからない場合にこの言語地域が使用されます。

GETTEXT_DOMAIN

gettextのグローバルドメインを設定します。(デフォルト: messages)

GETTEXT_PATH

ドメインへのパスを設定します。(デフォルト: lang)