PowerCMS相談会は、私たちにとっても、参加いただけなかったPowerCMSユーザーにとってもよい機会でした。
公開日 : 2014-04-07 10:52:50
先週(4月3日)のことですが、PowerCMS設計・構築相談会を開催しました。直前に告知開始したのと、当日のキャンセルがあったりして参加いただいたのは5名の方でしたが、開催してよかったと思える場でした。
今回は、できるだけ具体的に、深い内容にしたかったため、事前に質問内容や困っていることなどを送ってもらいました。で、その内容は他のPowerCMSユーザー、構築者の方もおそらく同じようなケースがあるんじゃないかと思えるような内容だったので、その場で回答するだけではなくPowerCMSブログに記事を書いて公開したり、次期バージョンアップの際に対応できるかな? ということでトライしてみたり。
以下の記事は相談会前にいただいた質問にお答えする形で書いたものです。
その他に出た質問について、
ContactFormの仕様について
確認画面・エラー画面では、エラーの箇所以外は入力データの編集ができない。(編集できるのが理想的) 確認画面・エラー画面には「戻る」ボタンがない。 →確認時に修正したい箇所があった場合、ブラウザの戻るボタンを押す必要がある。
こちらについては、現状ではできないため、次期バージョンでの対応を(緩く、ですが)お約束して、既に私の方で対応版を作成して現在社内レビュー中となっています。また、
自動メール送信で、fromをフォームごとに設定したい
あわせてこの件についても対応中です。次期バージョンではできるようになっているかと思います。
カスタムオブジェクトなどの(カスタムフィールドを用いた)関連づけ機能で、ブログ/ウェブサイトをまたがって関連づけしたい
これは、環境変数(mt-config.cgi)の設定でできます。
記事の関連づけなら、EntryFieldScope。デフォルトは blog になっていますが、 website、systemが指定可能で、この指定をすることでダイアログに表示されるリストをブログまたがりにすることができます。
同じく関連づけ機能について、再構築トリガーの個別指定に限界があるため、関連づけた先が非公開になったりしたときにリンク切れが起こるのをどうするか、といった内容。
関連リンク部分のブロックをDynamicMTMLで動的出力する方法があるのですが、PowerCMSには MTIfTheURLFoundというタグが存在します。
@mersy 昨日の相談会のあれ(?) ですが、IfTheURLFound というタグがPowerCMSにありました。 http://t.co/kIqQzZoR2r これをDynamicMTMLと組み合わせると、リンク先が消えた時も再構築が要らないようにできるかと思います。
— Junnama Noda (@junnama) 2014, 4月 4
以下のようなテンプレートにすると、ページが存在しないときは出力されなくなります。基本的にはサーバー上のファイルをチェックするため(HTTP通信は発生しません ※ target_outlinkモディファイア指定で外部リックチェックも行える)、リンク先が消えた時にはリンクがページに表示されないようになります。
<MTDynamicMTML>
<MTIfTheURLFound url="http://www.example.com/foo.html">
<!-- do something -->
</MTIfTheURLFound>
</MTDynamicMTML>
また、PowerCMSのカスタムアーカイブが再構築キューに対応している件(PowerCMS4から)をご存知なかった方がいらっしゃったので、お知らせしました。
また、tools/rebuild-archives スクリプトがPowerCMSのカスタムアーカイブに対応していない点について修正し、修正版をこれも社内レビュー中です。
ということで、相談会は参加いただいた方のみならず、我々にも、そして参加いただけなかったPowerCMSユーザーの皆さんにも有用な場であったと思います。
今後も定期的に企画して行きたいと思います。