エス技研

WordPress、CakePHP、PHP、baserCMSなどの Web系システムを中心に情報を提供します!


WordPressのメディア設定でアップロードするファイルの保存場所を変更する方法

      2017/03/11

メディア設定でアップロードするファイルの保存場所の変更

 

アップロードするファイルの保存場所の変更

 
WordPressの画像やファイルをアップロードする「メディア」に関連する記事を下記の 2つ書いていました。
 WordPressの画像ファイルアップロード・メディアの使い方解説
 WordPressのメディアの設定解説・uploadsフォルダの変更方法
 
その中で書いていますが、WordPress Ver.3.5までは「メディア設定」画面からアップロードするファイルの格納場所を簡単に変更することができましたが、Ver.3.6以降はこれらの項目が「メディア設定」の画面からはなくなり、変更することができなくなりました。
 
20160517_wp_01
 
この「アップロードするファイルの保存場所」「ファイルへの完全な URL パス」の入力エリアを復活させる方法を解説します。
プログラムを変更したり、プラグインを入れたりせず、もともと用意されている機能を利用する簡単な方法です。
 
 

オプションの「全ての設定」画面を利用

 
下記のような感じで、「wp-admin」の後ろに「options.php」を追加した URLにアクセスします。(管理画面へのログインは必要です。)
 
 サンプルURL
  http://example.com/wp-admin/options.php
 
そうすると、下記のような「すべての設定」画面が表示されます。
20160517_wp_02
 
 
ここに下記の項目がありますが、これが「アップロードするファイルの保存場所」「ファイルへの完全な URL パス」となる項目です。

  • upload_path
  • upload_url_path

 
「upload_path」は、「アップロードするファイルの保存場所」に当たり、ファイルをアップロードする場所までのパスを記述します。
相対パスで書く場合は、「wp-config.php」が置いてある場所からのパスになります。
絶対パスで書く場合は、サーバのルートからのパスを記述します。ドキュメントルートからのパスではありません。
 
「upload_url_path」は、「ファイルへの完全な URL パス」に当たり、ファイルを呼び出す際の URLを記述します。
URLを記述する際に「home_url()」などの関数は使えないんじゃないかと思います。
 
 
ここで設定するアップロードファイルの保存場所となるフォルダは、あらかじめ作っておく方がよさそうです。
 
指定したフォルダは、ファイルをアップロードする際に存在しなければ自動的に生成されます。
ですが、フォルダ、および、ファイルのパーミッションが適切なものにならない可能性がありますので、あらかじめ適切なパーミッションを設定したフォルダを用意しておく方がよさそうです。
(自動生成されたフォルダのパーミッションを後から変更しても問題ありませんが。)
 
 
ちなみに、「メディア設定」の画面の「upload_path」「upload_url_path」の値を削除すると、「メディア設定」画面には項目ごと表示されなくなります。
 
 


 

メディア設定画面で保存先を変更するメリット

 
WordPressをブログなどのツールとして利用する上で、メディア設定のファイルの保存先の設定を変更する必要は出てきません。
 
ですが、「WordPressの管理画面と公開画面を別のドメインに分離して運用する方法」で解説していますが、セキュリティ上のリスクを軽減するため、管理画面と公開画面を分離し、管理機能がある場所を分からなくしようとした場合には、ファイルの保存先は任意に設定する必要が出てきます。
 
そういう場合にも対応できるようになっている機能といえるでしょう。
 
 

メディア設定画面で保存先を変更する際の注意点

 
WordPressを新規でインストールする際に、メディア設定画面で保存先を変更する場合は特に問題は起こりませんが、すでに運用中のサイトで行う場合は、大きな手間が発生する場合があります。
 
既存の「uploads」フォルダを移動させたり、既存の記事内の「uploads」フォルダの中の画像のパスの書き換えなどの修正作業が必要になります。
記事内の情報を一括検索、置換する際には「Search Regex」というプラグインがあり、「Search RegexでWordPress投稿の文字列を検索・置換する使い方解説」との記事で紹介していますが、運用中のサイトに実行する際は十分に検証を行ってから利用してください。
 
 

wp-config.phpに定数「UPLOADS」を設定する

 
このページで解説している「upload_path」「upload_url_path」の設定ですが、似たような機能として「UPLOADS」という定数があります。
 
wp-config.php に下記のように変数を指定することで、「upload_path」を指定することと同じように設定することが可能です。
 

 
ですが、「upload_url_path」に当たる定数をどう設定するのかが分かりませんでした。
そのため、定数で指定する方法ではうまく動作させることができませんでした。
少なくとも「UPLOAD_PATH」「UPLOADS_PATH」「UPLOAD_URL_PATH」「UPLOADS_URL_PATH」ではありませんでしたね。
 
「upload_url_path」に当たる定数を指定する方法をご存知の方、教えてください!

 - WordPress

GoogleAdwords

GoogleAdwords

最後までお読みいただきましてありがとうございます。
この記事が参考になったと思いましたらソーシャルメディアで共有していただけると嬉しいです!

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

下記の空欄を埋めてください。 * Time limit is exhausted. Please reload CAPTCHA.

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

※入力いただいたコメントは管理者の承認後に掲載されます。

  関連記事

Lazy LoadでWordPressの高速化!SEO効果絶大!PVもアップ!

Lazy Loadは、画像を最初にまとめて読み込むことで発生するスピードの遅延を防ぎ、必要な画像から順番に読み込むことでページの表示スピードを向上させるプラグインです。

WordPressプログラム全体で定数や変数を利用する場合の設定方法

WordPressで関数を追加するときなど、全体で同じ変数を使いたいと思う場面の対処方法です。変数を記述する関数はfunctions.php、wp-config.phpのいずれか。

WP Basic AuthなどWordPressにBasic認証を設定するプラグインのまとめ

WordPressにBasic認証を設定する方法のまとめ。プラグインを使う方法と.htaccessで設定する方法を紹介。公開側、ログインページをそれぞれ設定できます。

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成

WordPressの Google XML Sitemapsで WebMaster Tools用の sitemap.xmlを生成する方法を説明しています。

AdminerはWordPressのデータベース管理プラグインの決定版!

データベース管理プラグインはAdminerがあれば他に必要ありません。なぜならDB管理ツールAdminerと同じものをプラグインとして提供しているからです。

BizVektor環境の引越しでメニュー、バナーが消える不具合の対応方法解説

BizVektor環境の引越し方法と不具合が発生しやすい箇所の解説です。引っ越し作業をする際にURLやファイルのパスを置換する際の手順解説と対応方法についての解説です。

Custom Post Type UIでカスタム投稿を設定・バージョン1.4対応解説

カスタム投稿をプラグインCustom Post Type UIを使って設定する方法を解説。バージョンアップにより設定する項目も増え、より柔軟な設定ができます。

WordPressの投稿データ(記事データ)の管理方法

投稿の登録の方法、投稿データの管理方法の解説。MetaManagerなどのプラグインを入れた場合の入力ボックスを表示させる方法についても解説します。

WordPressの一般設定 投稿設定 表示設定 ディスカッション メディア

基本的な設定を行う「設定」の解説です。ブログサイトを構築する際に必要な設定内容を一般設定、投稿設定、表示設定などの各項目を説明しながら設定内容を提示しています。

WP Customer ReviewsでWordPressにオリジナルの口コミサイトを構築

口コミサイトを構築するためのプラグイン。独自フォームによるレビュー、評価点を投稿でき、入力項目の追加もできます。