ご注意!

この記事には PHP コードが含まれており、開発者を対象としています。このコードは便宜上提供していますが、コードのカスタマイズやサードパーティの開発についてはサポートを提供していません。

追加のガイダンスについては、WPBeginner の カスタムコードの追加方法に関するチュートリアル を参照してください。

閉じる

ファイルアップロードの特定のディレクトリを定義する方法

概要

WPFormsのファイルアップロードフィールド経由でアップロードされたファイルを保存する特定のディレクトリを定義しますか?カスタムPHPスニペットを使用すると、フォームのすべてのアップロードを保持するディレクトリを簡単に定義できます。

このチュートリアルでは、WPFormsでファイルアップロードのデフォルトの場所を更新する手順を説明します。

セットアップ

ディレクトリを定義するには、このスニペットをサイトにコピーする必要があります。保存したい場所のサーバーパスを知る必要があります。これらは、サイトの設定方法によって異なる場合があります。

たとえば、ルートパスは「/home/mysitedomain.com/custom-dir」であったり、「/home/sites/mysitedomain.com/custom-dir」であったり、あるいは「/home/mysitedomain/public_html/custom-dir」であったりします。ルートパスが不明な場合は、ホスティングプロバイダーに確認してください。

/**
 * Define a specific directory for files uploaded through the File Upload addon.
 *
 * @link  https://wpforms.com/developers/how-to-define-a-specific-directory-for-file-uploads/
 */

 function wpf_dev_upload_root( $wpforms_upload_root ) {

    //Define a specific directory here
    $wpforms_upload_root = '/home/mysitedomain/public_html/custom-dir';  

    return $wpforms_upload_root;

}

add_filter( 'wpforms_upload_root', 'wpf_dev_upload_root', 10, 1 );

上記のスニペットは、サイトでファイルアップロードが保存されるデフォルトの場所を変更します。メール通知のURLは更新されないことに注意してください。

これで、ファイルアップロードフィールドの特定のディレクトリを定義するために必要なすべてが揃いました。フォーム経由でファイルがアップロードされると、サーバーのcustom-dirフォルダーに保存されます。

モダンアップロードフィールドのタイムアウト機能を変更しますか?モダンファイルアップロードのタイムアウトを変更する方法のスニペットをご覧ください。

フィルターリファレンス: wpforms_upload_root