2016年09月29日
開発者だけが知っている PowerCMS の隠し機能 その1 〜インポート CSV の作成を楽にする相対指定〜
アルファサード株式会社では、PowerCMS 製品を使ったウェブサイト構築の請負業務を行っており、その過程で発生する様々な困難を打開するため、開発者がコソーリ追加している機能がヒソーリとリリースされていることがあります。こういった機能について、これから数回に分けてご紹介します。
インポート/エクスポートでは、アイテム系カスタムフィールドで %r を使った相対指定ができる
インポート/エクスポート機能について、ユーザーズガイドでは、「入力フォーマットは各オブジェクトをエクスポートしたものを雛形として利用するのが確実です」と記載されています。
「アイテム」「画像」カスタムフィールドでは、カスタムフィールドの値は以下のようになっており、エクスポートの際にはこれがそのままエクスポートされます。
<form mt:asset-id="[アイテムのID]" class="mt-enclosure mt-enclosure-image" style="display: inline;"><a href="[アイテムのURL]">[アイテムのファイル名]</a></form>
この形式を、インポート CSV として作成するのはなかなか骨が折れます。まず、アイテムの ID が決まっていなくてはなりません。また、URL やファイル名も相当に手間がかかります。アイテムを先にインポートすれば ID や URL は決まりますが、決まったからといって、ひとつずつ CSV のセルを直していくのは現実的ではない場合が多いでしょう。
そんな状況を解決すべく、カスタムフィールドの値として以下のように指定することができるようになっています。
%r/path/to/image.jpg
このように記述しておくだけで、あらかじめサーバ上に設置されているファイルをアイテム登録し、かつカスタムフィールドの値として保存してくれます(もちろん、記事への関連付けも!)。
なお、「%r」はウェブサイト/ブログの公開パスに置き換えられます。
アイテムの名前や説明などを細かく設定しなければならない場合
この場合はアイテムとしてのインポートを先に行う必要がありますが、この場合でも「%r」による相対指定は可能です。
コメントを投稿する