워드프레스로 멀티사이트로 구성하고 여러 사이트를 추가한 경우 동일 이미지를 여러 사이트에서 사용하려면 각 서브 사이트에 이미지를 각각 업로드해야 합니다. 같은 이미지를 여러 사이트에서 사용하는 경우가 많다면 웹 서버 공간 낭비가 심하게 됩니다.
하나의 사이트에 이미지를 업로드하고 나머지 사이트에서는 URL로 이미지를 삽입해도 되지만, 번거로울 수 있습니다. 이런 상황에서 Network Media Library 플러그인을 사용하면 네트워크 내의 모든 사이트들이 공유하는 공유 라이브러리를 만들 수 있습니다.
여러 사이트들이 공유하는 공유 미디어 라이브러를 만드는 Network Media Library 플러그인
여러 사이트에서 미디어 라이브러리를 공유하는 방법에 대하여 네이버 카페에 질문이 올라온 적이 있습니다.
워드프레스 멀티사이트 기능을 사용하여 네트워크를 구성한 경우 플러그인을 사용하여 공용 미디어 라이브러리를 만들 수 있습니다.
Network Media Library는 여러 사이트에서 공유하는 공유 라이브러리를 만들 수 있는 플러그인입니다. 이 플러그인은 멀티사이트 네트워크 내의 사이트 하나를 "기본 라이브러리"로 지정하여 작동합니다.
사이트들은 평소처럼 작동하지만, 멀티사이트 내의 어느 사이트에서든지 이미지를 업로드하면 공유 라이브러리로 업로드됩니다.
이 플러그인은 현재 WordPress.org에는 등록되어 있지 않고 GitHub에서만 다운로드가 가능합니다. 이 플러그인은 만들어진지 5년이나 지나서 최신 워드프레스 버전이나 최신 PHP 버전에서 작동하지 않을 가능성이 높지 않을까 생각하여 무시하고 있었지만, Divi 테마를 제공하는 Elegant Themes의 블로그 글에 이 플러그인이 소개되어 있어서 Network Media Library 플러그인을 테스트해 보았습니다.
주요 기능
- 네트워크 연결된 미디어 라이브러리 생성
- 네트워크 내의 한 사이트를 기본 미디어 라이브러리(중앙 미디어 라이브러리)로 지정
- 쉬운 설치 및 사용
워드프레스 멀티사이트 공유 라이브러리를 만드는 방법 (3단계)
여러 개의 워드프레스 사이트에서 이미지들을 공유하고 싶은 경우 상기에서 언급했듯이 멀티사이트용 Network Media Library 플러그인을 사용할 수 있습니다.
GitHub에서 플러그인을 다운로드하여 설치하고 테스트하는 과정에 대하여 살펴보겠습니다.
단계 1: Network Media Library 설치하기
Network Media Library 플러그인은 GitHub에서 다운로드하여 워드프레스 알림판에서 업로드하여 설치할 수 있습니다.
이 플러그인은 5년 전에 제작되었지만 최신 워드프레스에서 잘 작동하는 것 같습니다. GitHub 저장소에서 다운로드할 수 있습니다.
파일을 다운로드하려면 Code (코드) 버튼을 누르고 Download ZIP (ZIP 다운로드) 을 클릭하면 됩니다. 동일한 파일을 네이버 카페에서도 다운로드할 수 있습니다.
설치 파일을 다운로드하였다면 최고 관리자로 워드프레스에 멀티사이트에 로그인하여 내 사이트 » 네트워크 관리자 » 플러그인 » 새 플러그인 추가로 이동하여 플러그인 업로드 버튼을 눌러 파일을 업로드한 다음 지금 설치 버튼을 클릭합니다.
플러그인이 설치되면 네트워크 활성화를 클릭하여 멀티사이트 네트워크 레벨에서 이 플러그인을 활성화합니다.
단계 2: 멀티사이트에서 이미지를 업로드하여 플러그인 테스트하기
저는 다음과 같은 환경에서 이 플러그인을 설치하여 테스트하니 잘 작동했습니다.
- 웹호스팅: 클라우드웨이즈 (Cloudways)
- 워드프레스 버전: 6.62 (이 글 작동 당시 최신 버전)
- PHP 버전: 8.3
Network Media Library 플러그인을 설치하면 멀티사이트 구성 후 첫 번째로 생성하는 워드프레스 사이트의 미디어 라이브러리가 네트워크 공유 미디어 라이브러리로 설정된다고 합니다.
제가 테스트한 사이트에서 이미지를 업로드하니 ID가 2인 서브 사이트의 미디어 라이브러리로 이미지들이 업로드되었습니다.
이 플러그인을 네트워크 활성화하면 모든 사이트의 미디어 라이브러리가 공유 미디어 라이브러리가 표시되고, 개별 사이트에서 기존에 업로드한 이미지들은 표시되지 않습니다. 하지만 기존에 업로드한 이미지들은 그대로 유지됩니다.
멀티사이트 네트워크 내의 어느 사이트에서 이미지를 업로드해도 공유 미디어 라이브러리로 업로드되고 이미지 경로를 살펴보면 /wp-content/uploads/sites/2/2024/...와 같이 특정 사이트의 미디어 업로드 파일 경로로 이미지가 업로드되어 있음을 확인할 수 있습니다. (/wp-content/uploads/sites/2/2024/...의 경우 사이트 ID가 2인 사이트의 미디어 라이브러리로 이미지가 업로드되어 있습니다.)
단계 3: 이미지 파일이 하나만 업로드되었는지 확인하기
네트워크 미디어 라이브러리 플러그인을 활성화하면 어느 사이트에서 미디어 파일을 업로드하든지 공유 미디어 라이브러로리 업로드됩니다.
예를 들어, 사이트 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/...)에 업로드되어야 합니다.
이미지가 중복으로 업로드가 안 되어 있다면 플러그인이 제대로 작동하는 것입니다.
참고로 이미지를 업로드하면 같은 이름의 이미지 파일이 여러 개 업로드되어 있을 것입니다. 이는 썸네일 파일을 함께 생성하여 적당한 크기의 이미지를 로드하여 사이트 속도를 높이고 트래픽을 절감하기 위함입니다.
요약
이 플러그인을 설치하여 테스트해보니 다음과 같이 작동하는 것 같습니다.
- 오래 전에 플러그인이 만들어졌지만 최신 워드프레스와 PHP 버전에서 잘 작동합니다. (추후에 작동하지 않을 가능성이 있지만, 플러그인이 비교적 심플하게 코딩되어 있어서 문제가 발생할 경우 직접 문제 해결을 시도해볼 수 있을 것 같습니다.)
- 플러그인 파일은 GitHub 저장소에서 다운로드하여 멀티사이트에 설치합니다.
- 특정 사이트가 공용 미디어 라이브러리로 지정됩니다.
- 이 플러그인 활성화 이후에 업로드하는 모든 미디어 파일은 공용 미디어 라이브러리로 업로드됩니다.
- 이 플러그인 활성화 이전에 업로드한 이미지들은 개별 사이트에 업로드된 상태로 유지되고, 기존에 글/페이지에 삽입된 경우 그대로 유지됩니다. 하지만 공유 미디어 라이브러리의 사이트 이외의 다른 사이트에 업로드된 미디어 파일들은 이 플러그인 활성화 후에 미디어 라이브러리에 표시되지 않습니다.
- 이 플러그인을 비활성화하면 각 사이트에 대하여 해당 미디어 라이브러리가 복원되고, Network Media Library 플러그인을 활성화한 상태에서 업로드한 미디어 파일들은 공유 미디어 라이브러리의 사이트에만 표시되고, 다른 사이트의 미디어 라이브러리에는 표시되지 않습니다. 그러나 글/페이지에 삽입된 공유 미디어 라이브러리에 업로드된 이미지는 그대로 표시됩니다.
유료 멀티사이트 공유 미디어 라이브러리 - Multisite Shared Media for WordPress
위에 소개한 무료 Network Media Library 플러그인이 워드프레스 버전 또는 PHP 버전과 호환되지 않거나 원하는 기능이 아닌 경우 Multisite Shared Media for WordPress라는 유료 플러그인의 사용을 고려할 수 있습니다.
코드캐년 마켓에서 판매되고 있는 이 플러그인은 수요가 별로 없어서 그런지 많은 판매는 이루어지지 않았지만 사용자 평가는 괜찮은 것 같습니다.
특징
- 이미지, 문서, 음악 파일, 영상 파일 등과 같은 미디어를 자동 동기화
- 이미지, 문서, 뮤직, 비디오 등과 같은 미디어를 자동 동기화 해제
- 네트워크에서 미디어 자동 동기화 활성화/비활성화
- 네트워크에서 미디어 자동 동기화 취소 활성화/비활성화
- 모든 사이트 옵션: 모든 사이트에서 미디어를 동기화/비동기화
- 메인 사이트에서 서브 사이트 옵션: 기본 사이트의 미디어를 서브 사이트로 동기화/비동기화
- 서브 사이트에서 메인 사이트로: 서브 사이트의 미디어를 메인 사이트로 동기화/비동기화
- 워드프레스 멀티사이트 네트워크 내의 한 사이트(블로그)에서 다른 사이트(블로그)로 미디어 복제
이 플러그인에 자세한 정보는 플러그인 판매 사이트를 참고해보세요.
마치며
이상으로 멀티사이트 네트워크에서 미디어 라이브러리를 공유하는 방법에 대하여 살펴보았습니다. 서버 저장 공간이 부족한 경우 멀티사이트에서 이미지들을 모든 서브 사이트 간에 공유하고 싶은 경우 상기에 소개된 플러그인의 사용을 고려할 수 있습니다.
혹시 모르니 플러그인을 설치하기 전에 전체 사이트 백업(데이터와 DB)을 실시하는 것이 안전할 수 있습니다.
댓글 남기기