MyFieldExtension
アセットを扱うフィールドごとに、アップロード先のフォルダを指定します。
- 対象製品
- MyAdminPack
- 対象バージョン
- v2
概要
MyFieldExtensionは、アセットを扱うフィールドごとにアップロード先のフォルダを指定するプラグインです。入力画面からそのフィールドのアセット選択画面を開くと、設定したフォルダがアップロード先へ反映されます。
この設定は、新しくアップロードするファイルの配置先をフィールドごとに分けるために使用します。登録済みアセットの移動や、公開済みURLの書き換えは行いません。
対象となるフィールド
| CMS | 対象 |
|---|---|
| Movable Type | ファイル、画像、音声、動画のカスタムフィールド。アセット、画像アセット、音声アセット、動画アセットのコンテンツフィールド |
| PowerCMS | ファイル、画像、音声、動画のカスタムフィールド |
PowerCMS版には、Movable Typeのコンテンツフィールドを対象とする設定はありません。
カスタムフィールドが記事、ウェブページ、カスタムオブジェクトのどこで使われるかにかかわらず、アップロード先はカスタムフィールド自体へ保存されます。
カスタムフィールドの設定方法
- CMSで、ファイル、画像、音声または動画のカスタムフィールドを作成して保存します。
- 保存したカスタムフィールドの編集画面を開きます。
- 「アップロード先」に、既定のアップロード先へ追加するフォルダを入力します。
- カスタムフィールドを保存します。
「アップロード先」は、保存済みの対象カスタムフィールドを編集するときに表示されます。カスタムフィールドの新規作成画面では表示されないため、いったんフィールドを保存してから設定してください。
コンテンツフィールドの設定方法
この設定はMovable Type版だけで利用できます。
- コンテンツタイプの編集画面を開きます。
- アセット、画像アセット、音声アセットまたは動画アセットのコンテンツフィールドを追加するか、既存のフィールドを選択します。
- フィールドのオプションにある「アップロード先」に、既定のアップロード先へ追加するフォルダを入力します。
- コンテンツタイプを保存します。
アップロード時の動作
対象フィールドからアセット選択画面を開くと、CMSが用意した既定のアップロード先と、フィールドに設定した「アップロード先」が結合されます。
たとえば、CMS側の既定のアップロード先がsite/default、フィールドの設定がproducts/imagesの場合、画面へ反映されるアップロード先は次のようになります。
site/default/products/images
Movable Type版では、既定パス末尾と設定値先頭の区切りを調整して結合します。「アップロード先」が空の場合は、CMS側の既定値を変更しません。
設定したパスはアップロード画面へ反映される初期値です。アップロードの可否、ファイル名、アセットの種類、保存後の公開処理はCMS側の動作に従います。
UploadDirを併用する場合
UploadDirプラグインが有効な場合を検出し、アップロード画面で選択したディレクトリが「アップロード先」に続くように処理を調整します。
MyFieldExtensionの設定、CMS側の既定パス、UploadDirで選択するディレクトリが組み合わされるため、導入後に対象フィールドからテストファイルをアップロードし、意図した場所へ保存されることを確認してください。
※ UploadDirは、エムロジック株式会社が提供する製品です。
注意事項
- 「アップロード先」には、CMS側の既定のアップロード先へ追加する相対的なフォルダを指定してください。先頭と末尾に区切り文字を付けず、
products/imagesのように入力するとCMS間の差を避けられます。 - パスに利用できる文字やサーバー上の書き込み権限は、CMSとサーバーの設定に従います。MyFieldExtensionは入力値に対する独自のパス検証を行いません。
- フィールドの設定を変更しても、すでにアップロード済みのアセットは移動しません。変更後に新しくアップロードするファイルから新しい設定が使われます。
- 対象外のフィールド種類には「アップロード先」は表示されません。
制限事項
- フィールドごとのアップロード先を初期設定する機能です。アップロード先を固定してユーザーによる変更を禁止する機能ではありません。
- 既存アセットの整理、移動、URL変更は行いません。
- 独自テンプレートタグとグローバルモディファイアは提供しません。
