WordPress マルチサイト共有ライブラリの作成方法

Last Updated: 2024 年 10 月 01 日 댓글

WordPressとしてマルチサイトとして設定し、複数のサイトを追加した場合、同じ画像を複数のサイトで使用するには、各サブサイトに画像をそれぞれアップロードする必要があります。同じイメージを複数のサイトで使用することが多いと、Webサーバーのスペースが無駄になります。

1つのサイトに画像をアップロードし、残りのサイトではURLに画像を挿入できますが、面倒です。このような状況でNetwork Media Libraryプラグインを使用すると、ネットワーク内のすべてのサイトが共有する共有ライブラリを作成できます。

複数のサイトが共有する共有メディアライブラを作成するNetwork Media Libraryプラグイン

複数サイトでメディアライブラリを共有する方法について Naver カフェに質問が上がったことがあります。

WordPress マルチサイト 機能を使用してネットワークを構成した場合は、プラグインを使用してパブリックメディアライブラリを作成できます。

Network Media Libraryは、複数のサイトで共有する共有ライブラリを作成できるプラグインです。このプラグインは、マルチサイトネットワーク内の1つのサイトを「デフォルトライブラリ」として指定することで機能します。

サイトは通常どおり機能しますが、マルチサイト内のどのサイトからも画像をアップロードすると、共有ライブラリにアップロードされます。

このプラグインは現在 WordPress.orgには登録されておらず、GitHubからのみダウンロードできます。このプラグインは5年以上経ってから最新です WordPress バージョンや最新のPHPバージョンで動作しない可能性が高いのではないかと思って無視していたが、 Diviテーマを提供する Elegant Themesの ブログ記事このプラグインが紹介されており、Network Media Libraryプラグインをテストしてみました。

主な機能

  • ネットワーク接続メディアライブラリの作成
  • ネットワーク内の1つのサイトをデフォルトのメディアライブラリ(中央メディアライブラリ)として指定する
  • 簡単なインストールと使用

WordPress マルチサイト共有ライブラリを作成する方法(ステップ3)

複数の WordPress サイトで画像を共有したい場合は、上記のようにマルチサイト用のNetwork Media Libraryプラグインを使用できます。

GitHubからプラグインをダウンロードしてインストールしてテストするプロセスを見てみましょう。

ステップ1:Network Media Libraryをインストールする

Network Media LibraryプラグインはGitHubからダウンロードして WordPress 通知パネルからアップロードしてインストールできます。

このプラグインは5年前に作成されましたが、最新 WordPressでうまくいくようです。 GitHubリポジトリからダウンロードすることができます。

ファイルをダウンロードするには Code (コード) ボタンを押して Download ZIP (ZIPダウンロード) をクリックします。同じファイル Naver カフェからもダウンロードできます。

インストールファイルをダウンロードしたら、最高管理者として WordPressにマルチサイトにログインして 私のサイト»ネットワーク管理者»プラグイン»新しいプラグインを追加に移動し、 プラグインのアップロード ボタンを押してファイルをアップロードし、 今すぐインストール ボタンをクリックします。

プラグインがインストールされると ネットワークの有効化をクリックしてマルチサイトネットワークレベルでこのプラグインを有効にします。

ステップ2:マルチサイトから画像をアップロードしてプラグインをテストする

私は次のような環境でこのプラグインをインストールしてテストしたのでうまくいきました。

  • ウェブホスティング: クラウドウェイズ (Cloudways)
  • WordPress バージョン:6.62(イーグル操作時の最新バージョン)
  • PHPのバージョン:8.3

Network Media Libraryプラグインをインストールすると、マルチサイト構成後に最初に生成される WordPress サイトのメディアライブラリがネットワーク共有メディアライブラリとして設定されているとします。

私がテストしたサイトから画像をアップロードすると、IDが2のサブサイトのメディアライブラリに画像がアップロードされました。

このプラグインをネットワーク有効にすると、すべてのサイトのメディアライブラリに共有メディアライブラリが表示され、個々のサイトから既存にアップロードされた画像は表示されません。ただし、既存にアップロードした画像はそのまま残ります。

マルチサイトネットワーク内のどのサイトから画像をアップロードしても、共有メディアライブラリにアップロードされ、画像パスを見ると /wp-content/uploads/sites/2/2024/...など、特定のサイトのメディアアップロードファイルパスに画像がアップロードされていることを確認できます。 (/wp-content/uploads/sites/2/2024/...の場合、サイトID 2インサイトのメディアライブラリに画像がアップロードされています。)

ステップ3:画像ファイルがXNUMXつだけアップロードされたことを確認する

ネットワークメディアライブラリプラグインを有効にすると、どのサイトからメディアファイルをアップロードしても、共有メディアライブラリにアップロードされます。

たとえば、サイトIDが2のサブサイトが共有メディアライブラリの場合、すべての画像は /wp-content/uploads/sites/2/ フォルダの下にアップロードされます。

ネットワーク内の他のサイトから画像をアップロードした後 /wp-content/uploads/sites/2/ フォルダの下にのみファイルがアップロードされており、そのサブサイトのフォルダには画像がアップロードされていないことを確認してください。

これを行うには、FTPに接続できる必要があります。

ファーストコメット(FastComet)ケミクラウド(ChemiCloud)を利用する場合は、ファイルマネージャを介してサーバに接続して確認することもできます。

画像アップロードフォルダは / wp-content / uploads /であり /sites/サイト-ID/ 以下に各サイトにアップロードした画像があります。

このプラグインを使用すると、たとえばサイト26からアップロードされた画像は /wp-content/uploads/sites/26/... 以下にアップロードせずに共有メディアライブラリ(例: /wp-content/uploads/sites/2/...)にアップロードする必要があります。

画像が重複してアップロードされていない場合は、プラグインが正常に動作しています。

ちなみに画像をアップロードすると、同じ名前の画像ファイルが複数アップロードされているはずです。これは、サムネイルファイルを一緒に作成して適切なサイズの画像をロードしてサイトをスピードアップし、トラフィックを節約するためです。

要約

このプラグインをインストールしてテストしてみると、次のように動作するようです。

  1. ずっと前にプラグインが作られていましたが、最新 WordPressとPHPのバージョンでうまく動作します。 (今後は機能しない可能性がありますが、プラグインが比較的シンプルにコーディングされているため、問題が発生した場合は直接トラブルシューティングを試してみることができます。)
  2. プラグインファイルはGitHubリポジトリからダウンロードしてマルチサイトにインストールします。
  3. 特定のサイトがパブリックメディアライブラリとして指定されます。
  4. このプラグインを有効にした後にアップロードしたすべてのメディアファイルは、パブリックメディアライブラリにアップロードされます。
  5. このプラグインを有効にする前にアップロードした画像は個々のサイトにアップロードされたままになり、既存の投稿/ページに挿入された場合はそのまま残ります。ただし、共有メディアライブラリのサイト以外のサイトにアップロードされたメディアファイルは、このプラグインを有効にした後にメディアライブラリに表示されません。
  6. このプラグインを無効にすると、各サイトに対して対応するメディアライブラリが復元され、Network Media Libraryプラグインを有効にしてアップロードしたメディアファイルは共有メディアライブラリのサイトにのみ表示され、他のサイトのメディアライブラリには表示されません。ただし、投稿/ページに挿入された共有メディアライブラリにアップロードされた画像はそのまま表示されます。

有料マルチサイト共有メディアライブラリ - Multisite Shared Media for WordPress

上記の無料のNetwork Media Libraryプラグイン WordPress バージョンまたはPHPバージョンと互換性がない場合、または目的の機能ではない場合 Multisite Shared Media for WordPressという有料プラグインの使用を検討することができます。

コードキャニオンマーケットで販売されているこのプラグインは需要があまりなくて、そんなに多くの販売は行われていませんが、ユーザー評価は大丈夫そうです。

特徴

  • 画像、文書、音楽ファイル、ビデオファイルなどのメディアを自動同期
  • 画像、ドキュメント、ミュージック、ビデオなどのメディアの自動同期解除
  • ネットワークでメディア自動同期を有効/無効にする
  • ネットワーク上のメディア自動同期キャンセルの有効化/無効化
  • すべてのサイトオプション:すべてのサイトでメディアを同期/非同期化
  • メインサイトのサブサイトオプション:プライマリサイトのメディアをサブサイトに同期/非同期化
  • サブサイトからメインサイトへ:サブサイトのメディアをメインサイトに同期/非同期化
  • WordPress マルチサイトネットワーク内のあるサイト(ブログ)から別のサイト(ブログ)にメディアを複製する

このプラグインの詳細については、プラグイン販売サイトを参照してください。

最後に、

以上で、マルチサイトネットワークでメディアライブラリを共有する方法について説明しました。サーバーのストレージ容量が不足している場合マルチサイトですべてのサブサイト間で画像を共有したい場合は、上記で紹介したプラグインの使用を検討してください。

知らない場合は、プラグインをインストールする前にフルサイトバックアップ(データとDB)を実行するのが安全かもしれません。

参照


コメントを残す

コメント