Gravity Perks に新しいアドオン、Gravity Forms File Renamer が加わりましたのでご紹介します。
Gravity Forms ではファイルのアップロード機能が備わっていますが、通常、ユーザーは任意のファイル名を設定してアップロードします。
つい最近でもTwitterでこんな話題がありました。
まぁ、この投稿の是非はともかく、アップロードするファイル名は適当な命名規則で保存したほうが取り扱いが楽ですよね。
ということで作成されたのが Gravity Forms File Renamer です。
Gravity Forms File Renamerを使用すると、Gravity Forms でアップロードされたファイルの名前を簡単に変更できます。
https://gravitywiz.com/documentation/gravity-forms-file-renamer/
命名規則を指定すると、フォームの送信時にファイルの名前が変更されます。
命名規則は柔軟で、静的および動的な値 (マージ タグ)、カスタムの重複排除機能とインクリメンター、およびフォルダー内のファイルをグループ化する機能をサポートしています。
Gravity Forms File Renamer の使い方
前提条件
- WordPressにGravity Formsが正常にインストールされ、アクティベートされていること
- GravityPerks が正常にインストールされ、アクティベートされていること
Gravity Forms File Renamer のインストールと有効化
まず、WordPress 左メニューから、フォーム > Perks を選択し、Gravity Perks のメニューを開きます。

Gravity Perks のトップページが開きますので、「Install Perks」タブをクリックします。

Install Perks タブには、すでに登録されたPerks(Registeres Perks)と未登録のPerks(Unregistered Perks)が表示されていますので、Unregistered Perksから「GP File Renamer」を探し、「Install Perk」ボタンをクリックします。


インストールが完了したら「Activate Perk」ボタンでプラグインの有効化を行います。

プラグインの有効化が完了すると、プラグイン一覧画面に遷移します。

これで File Renamer のインストールが完了です。
フォームの作成と File Renamer の設定
次に、フォームを作成します。
WordPress 左側メニューから、「フォーム > 新規フォーム」を選択します。

フォームの新規作成ダイアログが開きますので、適当な名前をつけて「フォームの作成」ボタンをクリックして保存します。

次にフォームエディターの「高度なフィールド」で「ファイルアップロード」フィールドをドラッグアンドドロップで設置します。
File Renamer はアップロードするファイルの名前を変更するプラグインですから「ファイルアップロード」フィールドは必須になります。

ファイルアップロードフィールドを選択した状態で、「フィールド設定」タブを開き、「Perks」メニューを開きます。

Filename Template の入力欄に、静的な名前または動的なマージタグを設定します。
右側の {‥} をクリックするとマージタグの一覧が表示されます。
(表示されるものが全てではありませんし、表示されているものの中には使用できないものも含まれます。)
例えば、「GravityFormsのフォームID」-「オリジナルのファイル名」-「連番」+拡張子で名前を付ける場合は、以下のような書き方になります。
{form_id}-{filename}-{i}
マージタグについて
GP File Renamer で使用可能なマージタグは、同一フォーム内のフィールドマージタグと {entry} マージタグの両方をサポートしています。
また、下記のように独自のマージタグもサポートしています。
- カスタムアップロードフォルダー
Filename Template にスラッシュ(/)を追加すると、そのファイルを格納するためのサブフォルダが作成されます。
これにより指定したフォームやエントリに固有のカスタムサブフォルダにファイルを格納することができます。
例えば、各エントリにアップロードされたファイルを、エントリ ID を名前に持つフォルダに格納します。
{entry_id}/{filename}
参考:File Renamer のマージタグの扱い
| 表示名 | マージタグ | 説明 |
|---|---|---|
| Filename | {filename} | アップロードするファイルに元々ついていたファイル名 |
| Deduplicator | {dedup} | ファイルの重複排除を自動的に処理します。 {dedup} マージタグを使用して、ファイル名のどこにインクリメントされた値が追加されるかを制御します。 これは {i} マージ タグと一緒に使用しないでください。 |
| Incrementer | {i} | アップロードされた順番にファイルをインクリメントします。(例:file-a-1.png, file-b-2.png, file-c-3.png) これは、マルチファイルアップロードフィールドで、ファイル名がエントリ名に設定されている場合に有効な方法です。 |
| 任意フィールド | {フィールドラベル名:フィールドID} | 同じフォーム中に設置されている任意のフィールドの値(フォームを保存して再度フォームを開き直したときに一覧に表示されます。) |
注意事項
- フォームの投稿はファイル名を変更した後に生成されるため、ファイル名に投稿ID(post_id)を含めることはサポートされていません。
- ファイル名はリネームされる前にアップロードされます。File Renamer を有効にする前にファイルをアップロードした場合、File Renamer がファイル名を変更する前に Gravity Forms がファイル名の重複を排除することがあります。
- GP Media Library を使用する場合、カスタムアップロードパスはサポートされません。
投稿者プロフィール
- DoL(CMSラボ所長)
-
CMS Laboの所長。
所員はまだない。
DoLは Director of Laboratories の略です。
最新の投稿
GravityForms2023年2月13日スパムハニーポットの機能強化
GravityForms2023年2月10日ブロックのテーマとスタイルの設定
GravityForms2023年2月9日Gravity Formsのテンプレートライブラリを利用する
GravityForms2023年2月8日Gravity Forms セットアップウィザード


