친절한 우리 고모

친절한 고모의 친절한 이야기

  • 2025. 4. 26.

    by. 친절한 고모

    목차

      🌐 멀티사이트(Multisite)란?

      멀티사이트란 단일 워드프레스 설치로 여러 사이트를 동시에 운영할 수 있는 기능입니다.
      각 사이트는 자체 콘텐츠, 사용자, 플러그인 설정을 가질 수 있으며,
      전체 시스템은 하나의 관리자가 총괄합니다.

      사용 예시

      • 기업의 부서별 사이트
      • 교육 플랫폼에서 수강생별 블로그
      • 지역별 프랜차이즈 사이트
      • SaaS 기반 블로그/스토어 시스템

      🌐 멀티사이트(Multisite)란?


      ✅ 멀티사이트의 주요 특징

      항목설명
      네트워크 구조 하나의 설치 → 여러 사이트로 분기
      URL 방식 서브디렉토리(example.com/site1) 또는 서브도메인(site1.example.com)
      사용자 분리 사이트별 사용자 그룹 가능 (관리자/편집자 등)
      테마/플러그인 네트워크 전체 공유 또는 사이트별 활성화 가능
      슈퍼 관리자 전체 네트워크 설정 가능 (최상위 관리자)

      ⚙️ 멀티사이트 활성화 방법

      1. wp-config.php 수정

      php
      복사편집
      define('WP_ALLOW_MULTISITE', true);

      → 관리자 로그인 → 도구 > 네트워크 설정 메뉴가 생성됩니다.


      2. 네트워크 설치

      • 서브도메인 vs 서브디렉토리 방식 선택
      • 서버/호스팅 설정에 따라 서브도메인 DNS 또는 .htaccess 설정 필요
      • 네트워크 이름, 관리자 이메일 입력

      설정 완료 후, 안내에 따라 추가 코드를 다음 위치에 삽입:

      wp-config.php 하단에 추가

      php
      복사편집
      define('MULTISITE', true); define('SUBDOMAIN_INSTALL', false); // true: 서브도메인 방식 define('DOMAIN_CURRENT_SITE', 'example.com'); define('PATH_CURRENT_SITE', '/'); define('SITE_ID_CURRENT_SITE', 1); define('BLOG_ID_CURRENT_SITE', 1);

      .htaccess 내용 덮어쓰기 (아파치 기준)

      apache
      복사편집
      RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] # 멀티사이트용 설정 RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^ - [L] RewriteRule . index.php [L]

      🛠️ 네트워크 관리자 패널 구조

      멀티사이트 활성화 후,
      상단 관리자 바에 “내 사이트 > 네트워크 관리자” 메뉴가 추가됩니다.

      구성 요소

      메뉴기능
      사이트 서브사이트 목록 관리 (추가/삭제/설정)
      사용자 모든 사이트의 사용자 총괄
      테마 전체 사이트에 배포할 테마 설치 및 허용
      플러그인 네트워크 전체에 적용할 플러그인 관리
      설정 전체 네트워크 기본 설정, 등록 권한 등

      🧪 새 사이트 추가하기

      1. 사이트 > 새로 추가
      2. 사이트 주소 (서브도메인 or 디렉토리), 제목, 관리자 이메일 입력
      3. 사이트가 생성되면 별도의 관리 패널을 가짐

      📌 각 사이트는 개별적인 설정, 콘텐츠, 사용자 권한을 가집니다.


      💡 실전 활용 시 유의사항

      항목팁
      서브도메인 방식 사용 시 DNS 와일드카드 *.example.com 필요
      캐시 시스템 멀티사이트 대응 가능한 플러그인 필요
      사용자 공유 네트워크 전체 사용자 공유되며, 사이트별 권한은 따로 설정 가능
      다국어 사이트 운영 멀티사이트 + WPML or MultilingualPress 조합 추천

      🔧 멀티사이트 권한 관련 함수

      php
      복사편집
      is_multisite(); // 멀티사이트인지 확인 get_sites(); // 전체 사이트 배열 반환 get_current_blog_id(); // 현재 사이트의 ID get_blog_option($blog_id, 'blogname'); // 특정 사이트의 옵션 값

      ✅ 멀티사이트 운영 체크리스트

      항목완료 여부
      wp-config.php에서 기능 활성화 ✅ / ❌
      네트워크 설치 및 .htaccess 수정 ✅ / ❌
      서브사이트 등록 및 테스트 ✅ / ❌
      테마/플러그인 네트워크 설정 이해 ✅ / ❌
      사용자 및 권한 분리 확인 ✅ / ❌
      캐시/보안 플러그인 호환성 테스트 ✅ / ❌