エス技研

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.

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

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

  関連記事

WordPress データベースを管理するための強い味方のプラグイン WP-DBMANAGER

データベースを管理するための強い見方のプラグイン「WP-DBMANAGER」の使い方の説明です。

Rating-Widgetは超簡単設定のWordPress口コミサイト構築プラグイン

口コミの評価点を投稿する機能に特化したプラグインで、多様なイメージの投稿方法や一覧ページ、コメントなどにも投稿機能を追加することができます。

WordPressの管理画面ログインURLの変更方法解説

管理画面のログインURLの変更は極めて有効なセキュリティ向上の方法ですので、その解説を行います。

技術ブログの悲劇。複数ブログをWordPressに引越して分かったこと

ブログによってユーザ層が違う。ユーザ層が違えば検索エンジンやブラウザ等が違うため、まずアクセス解析をやってみることが大事。一つの分析方法を紹介。

WordPressのバージョンアップをしたら「the_content」でコンテンツが表示されなくなった

「the_content」でコンテンツが表示されないのは仕様が変更されたためでプログラムの修正が必要です。

SMTP Mailerでスパム判定回避。WP Mail SMTPで発生する送信エラーも対応
SMTP Mailerでスパム判定回避。WP Mail SMTPで発生する送信エラーも対応

WordPressからのメールをスパム判定されずに送信する「SMTP Mailer」の解説。SMTP MailerはPHP 5.6、7.0になってもSMTP接続でエラーにならない設定を搭載しているのが特徴。

WordPressプラグインの3つのインストール方法解説

プラグインのインストール方法の特徴とおススメの方法を理由を含めて解説していきます。

シンタックスハイライトの5システム比較のまとめ・WordPressでも使える

シンタックスハイライト5種の比較検討のまとめ記事。WordPressで使う目的だがプラグインの比較検討ではないのでどのサイトでも導入可能。

WP Reviewを使ってWordPressのレビューサイトを構築

レビューサイトを構築するプラグインです。複数の評価者による評価点投稿やページごとに配色を変更する機能、機能満載なウィジェットなどレビューサイト構築に最適です。

Theme My Loginの日本語翻訳ファイル Ver.6.4.5対応

Theme My Loginの日本語翻訳ファイルのダウンロードページ。WordPressの翻訳ファイルの設置方法、注意点、翻訳ファイルの作成方法なども解説。