モジュールID名に「ctx」が含まれているとctx指定が読み込めなくなる

ID名「test_module_ctx」でモジュール作成している画面


システムの仕様上、モジュールID名に「ctx」を含ませるとテンプレートでのctx指定が読み込めなくなりますのでご注意ください。

NG

<!-- BEGIN_MODULE *** id="test_module_ctx" ctx="bid/1/cid/6" -->
<!-- END_MODULE *** -->

OK

<!-- BEGIN_MODULE *** id="test_module" ctx="bid/1/cid/6" -->
<!-- END_MODULE *** -->

今後ともa-blog cmsをよろしくお願いいたします。

フォームオプション

validator ( v )

フィールドを検証する設定項目です。”validator#required” は “v#required” と省略することができます。

次の例では、”mailaddress” という名前のカスタムフィールドを追加し、正しいメールアドレスであることをチェックします。

例:正しいメールアドレスが入力されているかのチェック

<input name="mailaddress" type="text" value="" />
<input type="hidden" name="field[]" value="mailaddress" />
<input type="hidden" name="mailaddress:validator#email" />
required フィールドに「入力が必須である」という属性を指定します。 ソース
例)<input type="hidden" name="filedname:v#required" />
minlength フィールドに文字数の下限を指定します。
maxlength フィールドに文字数の上限を指定します。 ソース
例)<input type="hidden" name="filedname:v#maxlength" value="20" />
min フィールドが数値の時、数値の下限を指定します。
max フィールドが数値の時、数値の上限を指定します。
regex フィールドの内容が "正規表現にマッチ" するかどうかをチェックします。 ソース
例)<input type="hidden" name="tel:v#regex" value="\d\{2,4\}-\d\{2,4\}-\d\{4\}" />
digits フィールドの内容が "数値" かどうかをチェックします。
email フィールドの内容が "正しいメールアドレス" かどうかをチェックします。
url フィールドの内容が "正しいURL" かどうかをチェックします。
equalTo フィールドの内容が "指定された別のフィールド" と同じかどうかをチェックします。(ソースはパスワードの再確認フォームの例です) ソース
例)<input name="password" type="text" value="" />
<input type="hidden" name="field[]" value="password" />
<input name="password2" type="text" value="" />
<input type="hidden" name="field[]" value="password2" />
<input type="hidden" name="password2:v#equalTo" value="password" />
dates フィールドの内容が"日付系の校正オプションを適用可能な形式"かどうかチェックします。
適用可能な形式:
(月と日が1桁の場合、2桁目の0は必須ではありません)
1985-08-26、1985/08/26、1985.08.26、s60.8/26、h21.5.11
katakana フィールドの内容が"カタカナ"かどうかチェックします。
"カタカナ" 以外はエラーとなる仕様のため、スペースなどが入力された場合もエラーとみなします。
hiragana フィールドの内容が"ひらがな"かどうかチェックします。
"ひらがな" 以外はエラーとなる仕様のため、スペースなどが入力された場合もエラーとみなします。
times 時間系の校正オプションを適用可能な形式かチェック
all_maxChecked チェックボックス等の選択数の上限を指定します。
all_minChecked チェックボックス等の選択数の下限を指定します。
all_justChecked チェックボックス等の選択数を指定します。
duplication 過去に送信されたメールアドレスかどうかをチェックします。こちらの設定はテンプレートではなく、フォーム設定で、設定する必要があります。
filesize ファイルサイズをチェックします。KBで指定。 ソース
例)<input type="hidden" name="pdf:v#filesize" value="500" />
password コンフィグで設定したパスワードポリシーに違反していないかをチェックします。

converter ( c )

指定されたフィールドを任意の形式に変換します。これは、変換に指定できるオプションPHPのmb_convert_kana関数に依存します。mb_convert_kana関数の仕様にならい、複数のオプションを指定することもできます。詳細は、上記のリファレンスをご確認ください。

次の例ではaddressという名前のカスタムフィールドを追加し、送信時に入力内容の全角英数を半角英数に変換しています。

例:送信時に入力内容の全角英数を半角英数に変換する

<input name="address" type="text" value="" />
<input type="hidden" name="field[]" value="address" />
<input type="hidden" name="address:c" value="a" />
オプション 意味
r 「全角」英字を「半角」に変換します。
R 「半角」英字を「全角」に変換します。
n 「全角」数字を「半角」に変換します。
N 「半角」数字を「全角」に変換します。
a 「全角」英数字を「半角」に変換します。
A 「半角」英数字を「全角」に変換します。
s 「全角」スペースを「半角」に変換します(U+3000 -> U+0020)。
S 「半角」スペースを「全角」に変換します(U+0020 -> U+3000)。
k 「全角カタカナ」を「半角カタカナ」に変換します。
K 「半角カタカナ」を「全角カタカナ」に変換します。
h 「全角ひらがな」を「半角カタカナ」に変換します。
H 「半角カタカナ」を「全角ひらがな」に変換します。
c 「全角カタカナ」を「全角ひらがな」に変換します。
C 「全角ひらがな」を「全角カタカナ」に変換します。
V 濁点付きの文字を一文字に変換します。"K", "H" と共に使用します。

a-blog cms zoom up 2020/09 が開催されました


a-blog cmsでは、9月8日に「a-blog cms zoom up 2020/09」を開催いたしました。

a-blog cms zoom upは、a-blog cmsのユーザーの皆様と開発者がZoomに参加し、a-blog cmsの活用方法や、利用した感想などを発表する、オンラインのイベントです。

今回は以下2つのセッションと、パネルディスカッションを行いました。

  • 「a-blog cms のパフォーマンスチューニングについて」 有限会社アップルップル 伊藤 淳 さん
  • 「ナレッジ共有にも使えちゃうa-blog cms」 株式会社ルーコ 鈴木 孝明さん
  • 「a-blog cms を利用するディレクターさんのパネルディスカッション」ONiWA株式会社 稲葉 智宏 さん / 株式会社Gazi工房 原 一宣 さん / 株式会社テリムクリ 山田 恵理子 さん / 株式会社ルーコ 鈴木 孝明さん

a-blog cms を利用するディレクターさんのパネルディスカッションの要約

a-blog cms を利用するディレクターさんを集め、パネルディスカッションはが開かれました。ファシリテーターはONiWA株式会社 稲葉 智宏 さんにお願いしました。

パネルディスカッションの内容は各パネラーに許可をいただき、内容を元に要約したものを掲載しております。

まずはそれぞれのパネラーの働き方からご紹介します。

株式会社Gazi工房 原 一宣さんの働きかた

原さんは山形県でディレクターとして活躍されています。

  • 実装は社員の赤井さんが担当している
  • 原さんは営業も行っている
  • 二人体制で頑張っている

株式会社テリムクリ 山田 恵理子さんの働きかた

山田さんは香川県でディレクターとして活躍されている方です。

  • 社内に営業の方が別でいるので、山田さん自体は営業はしてない
  • プロジェクトもキツくないので、ほどほどに働くことができる
  • 実際にはマーケティングや、UI/UXを考えてウェブサイトのワイヤーを書くのが主な仕事
  • お客さんは継続と新規の両方

株式会社ルーコ 鈴木 孝明さんの働きかた

鈴木さんは愛知県でディレクターとして活躍されています。

  • 軌道に載せたいときや結果を出したいときに自分でテンプレートを書いている
  • 実はプロジェクト管理は苦手
  • まずはクライアントに小さく成功してもらい、その後から素敵なデザイナーさんをアサインするワークフローを実施している
  • 7つ、8つが定期のお客さん、他は新規のお客さんや相談のみのお客さん

クライアントへの対応

コロナ渦に入った今、どのようにクライアントとコミュニケーションをしているのかという話題になりました。

既存のクライアントはSlackに移行し、新規のお客様は電話での対応を行っている方がいらっしゃる中、Slackが使えるレベルに到達するのも難しいので電話で当然だと思うようにしている方もいらっしゃいました。既存のお客様に合わせて対応手段を変更されているようです。

また、コミュニケーション手段により、サービス化するようにしている方もいらっしゃいました。たとえば遠くても実際に訪問して打ち合わせを望むクライアントもいれば、なんとか自分で動いて対応してくれる人もいるので、運用規模やお客さんに合わせてサービス化して対応しているそうです。

社内にディレクターを増やしたいけど難しい

社内にディレクターを増やすためにどうしているのかという話題になりました。ディレクターは、デザイナーやエンジニアとは異なり、技術的な知識は体系化されていない職種なのでどうやって求人や教育をしているのでしょうか。

人を育てるのは難しいかもしれないという意見や、そもそも定義がわからないといった意見も。お話を聞いている中で、ディレクターの方々のお仕事を定義するのは難しそうな印象を筆者も受けました。

そんな中で、ディレクターの仕事について話し合っていただきました。

  • ディレクターに必要なスキル:「Web制作のしくみ、マーケティングの流れ、リソース管理ができる、見積もりができる」(山田さん)
  • コストパフォーマンスが高い仕事はネーミングを設定すること。例えば、なにも考えていないサービスに対して、名前をつけて、広告をするのがコストパフォーマンスを出す。普段お客さんがやってることで利益を出すのが無理がない。(鈴木さん)
  • ゴールを設定する。達成方法はWebには拘らず、チラシ作成なども提案する。Webに固執することはない(山田さん)
  • やめたほうがいいことはちゃんと止めることが仕事(坂本さん)→なのでお客さんの立場をちゃんと考えることが大事(稲葉さん)

ディレクターをやっていてよかったこと

今まで、ディレクターという職種はなんだか大変そうな印象を受ける中で、最後はディレクターをやっていてよかったことについてお答えいただきました。

  • クライアントからダイレクトで感謝を伝えてもらえる
  • いろいろな業界のことに詳しくなれる
  • 様々な業界について詳しくなれるので、転職しやすそう(稲葉さん)
  • クライアントのサイトを制作した際に結婚式場の競合調査をしていたので、自信が結婚するときにすでにデータを洗い出していて、結婚式場がすぐに決まり、自分の生活が豊かになった(山田さん)
  • サイトが役立つものになって、デザインを当てられるときになったらとても嬉しい。つまり、最初が成功して、次につながったときによろこびを感じる。(鈴木さん)

パネルディスカッションのまとめ

このパネルディスカッションを通して、会社によってもディレクターという職種が担う範囲が異なることや、デザイナーやエンジニアでは味わえないよかったことなど、さまざまなことがわかりました。パネラーの皆様、この度は貴重なお話をありがとうございました!

次回の a-blog cms zoom up について

次回の a-blog cms zoom up は10月13日(火)に行います。
現在登壇者を募集中です。ご興味ある方はDoorkeeperのお問い合わせからご連絡ください。

タッチモジュール

タッチモジュールは、見ているページ(テンプレート)がその条件にあてはまる時だけ表示されます。次の例では、単一記事の表示のときだけコメントモジュールを読み込みます。

例:エントリーが指定されている(個別ページ)時のみコメントモジュールを表示する

<!-- BEGIN_MODULE Touch_Entry -->
 <!-- BEGIN_MODULE Comment_Body -->
  (中略)
 <!-- END_MODULE Comment_Body -->
<!-- END_MODULE Touch_Entry -->

タッチモジュール

Touch_Top 「トップページ」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Top -->
<!-- END_MODULE Touch_Top -->
Touch_Index 「一覧ページ」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Index -->
<!-- END_MODULE Touch_Index -->
Touch_Entry 「エントリー」が指定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Entry -->
<!-- END_MODULE Touch_Entry -->
Touch_Category 「カテゴリー」が指定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Category -->
<!-- END_MODULE Touch_Category -->
Touch_Keyword 「キーワード」が指定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Keyword -->
<!-- END_MODULE Touch_Keyword -->
Touch_Tag 「タグ」が指定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Tag -->
<!-- END_MODULE Touch_Tag -->
Touch_User 「ユーザー」が指定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_User -->
<!-- END_MODULE Touch_User -->
Touch_SearchEngineKeyword 「検索エンジンのキーワード」を取得できている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SearchEngineKeyword -->
<!-- END_MODULE Touch_SearchEngineKeyword -->
Touch_RootBlog ルートブログの時のみ表示する ソース
<!-- BEGIN_MODULE Touch_RootBlog -->
<!-- END_MODULE Touch_RootBlog -->
Touch_BlogGlobal ログインしたブログ自身に子ブログを持っている時のみ、そのブログと子ブログに表示する(※ログイン状態のみ適用) ソース
<!-- BEGIN_MODULE Touch_BlogGlobal -->
<!-- END_MODULE Touch_BlogGlobal -->
Touch_Admin 「管理状態(エントリー編集など)」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Admin -->
<!-- END_MODULE Touch_Admin -->
Touch_SessionWithAdministration 「管理者」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionWithAdministration -->
<!-- END_MODULE Touch_SessionWithAdministration -->
Touch_SessionWithCompilation 「編集者」以上の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionWithCompilation -->
<!-- END_MODULE Touch_SessionWithCompilation -->
Touch_SessionWithContribution 「投稿者」以上の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionWithContribution -->
<!-- END_MODULE Touch_SessionWithContribution -->
Touch_SessionWithSubscription 「読者」以上の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionWithSubscription -->
<!-- END_MODULE Touch_SessionWithSubscription -->
Touch_SessionIsCompilation 「編集者」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionIsCompilation -->
<!-- END_MODULE Touch_SessionIsCompilation -->
Touch_SessionIsContribution 「投稿者」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionIsContribution -->
<!-- END_MODULE Touch_SessionIsContribution -->
Touch_SessionIsSubscription 「読者」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SessionIsSubscription -->
<!-- END_MODULE Touch_SessionIsSubscription -->
Touch_Login 「ログイン状態」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Login -->
<!-- END_MODULE Touch_Login -->
Touch_Unlogin 「非ログイン状態」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Unlogin -->
<!-- END_MODULE Touch_Unlogin -->
Touch_Edit 「エントリー編集(作成・変更・追加)」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Edit -->
<!-- END_MODULE Touch_Edit -->
Touch_EditInplace ダイレクト編集が利用可能な場合かつ、ダイレクト編集が有効な時のみ表示する ソース
<!-- BEGIN_MODULE Touch_EditInplace -->
<!-- END_MODULE Touch_EditInplace -->
Touch_EditInsert 「エントリー編集(作成)」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_EditInsert -->
<!-- END_MODULE Touch_EditInsert -->
Touch_EditUpdate 「エントリー編集(変更・追加)」の時のみ表示する ソース
<!-- BEGIN_MODULE Touch_EditUpdate -->
<!-- END_MODULE Touch_EditUpdate -->
Touch_BlogParent 現在見ているブログ自身が子ブログを持っている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_BlogParent -->
<!-- END_MODULE Touch_BlogParent -->
Touch_Ssl 現在見ているページがHTTPSで通信されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Ssl -->
<!-- END_MODULE Touch_Ssl -->
Touch_SslEnable config.server.php内でSSL_ENABLEが1に設定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_SslEnable -->
<!-- END_MODULE Touch_SslEnable -->
Touch_Debug config.server.php内でDEBUG_MODEが1に設定されている時のみ表示する ソース
<!-- BEGIN_MODULE Touch_Debug -->
<!-- END_MODULE Touch_Debug -->
Touch_HookEnable config.server.php内でHOOK_ENABLEが1に設定されている時のみ表示する Ver. 3.0.16〜 ソース
<!-- BEGIN_MODULE Touch_HookEnable -->
<!-- END_MODULE Touch_HookEnable -->

Not系タッチモジュール

Touch_NotTop トップページ」ではない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotTop -->
<!-- END_MODULE Touch_NotTop -->
Touch_NotIndex 「一覧ページ」ではない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotIndex -->
<!-- END_MODULE Touch_NotIndex -->
Touch_NotEntry 「エントリー」が指定されていない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotEntry -->
<!-- END_MODULE Touch_NotEntry -->
Touch_NotCategory 「カテゴリー」が指定されていない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotCategory -->
<!-- END_MODULE Touch_NotCategory -->
Touch_NotAdmin 「管理ページ(エントリー編集など)」ではない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotAdmin -->
<!-- END_MODULE Touch_NotAdmin -->
Touch_NotTag 「タグ」が指定されていない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotTag -->
<!-- END_MODULE Touch_NotTag -->
Touch_NotKeyword 「キーワード」が指定されていない時に表示する ソース
<!-- BEGIN_MODULE Touch_NotKeyword -->
<!-- END_MODULE Touch_NotKeyword -->
Touch_NotSearchEngineKeyword 「検索エンジンのキーワード」を取得できていない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotSearchEngineKeyword -->
<!-- END_MODULE Touch_NotSearchEngineKeyword -->
Touch_NotEdit エントリー編集(作成・変更・追加)」ではない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotEdit -->
<!-- END_MODULE Touch_NotEdit -->
Touch_NotEditInplace ダイレクト編集が利用可能な場合かつ、ダイレクト編集が有効でない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotEditInplace -->
<!-- END_MODULE Touch_NotEditInplace -->
Touch_NotRootBlog ルートブログでない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotRootBlog -->
<!-- END_MODULE Touch_NotRootBlog -->
Touch_NotBlogParent 現在見ているブログ自身が子ブログを持っていない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotBlogParent -->
<!-- END_MODULE Touch_NotBlogParent -->
Touch_NotPreview タイムマシーンモードでない及び、プレビューモードでないときに表示する ソース
<!-- BEGIN_MODULE Touch_NotPreview -->
<!-- END_MODULE Touch_NotPreview -->
Touch_NotDebug config.server.php内でDEBUG_MODEが1に設定されていない時のみ表示する ソース
<!-- BEGIN_MODULE Touch_NotDebug -->
<!-- END_MODULE Touch_NotDebug -->
Touch_NotHookEnable config.server.php内でHOOK_ENABLEが1に設定されていない時のみ表示する Ver. 3.0.16〜 ソース
<!-- BEGIN_MODULE Touch_NotHookEnable -->
<!-- END_MODULE Touch_NotHookEnable -->