기록방

CY Mini Project 개발기 #4

← 목록

왜 별도의 Gallery 플러그인을 만들었는가

CY Mini Project를 개발하면서 위키 다음으로 가장 고민했던 부분은 이미지 관리였다.

워드프레스는 기본적으로 이미지 업로드 기능과 갤러리 블록을 제공한다.

간단한 사진을 올리는 용도로는 충분했지만, 프로젝트에서 원하는 방식과는 조금 달랐다.

CY Mini Project에서는 이미지를 단순한 첨부 파일이 아니라 하나의 콘텐츠로 관리하고 싶었다.

그래서 별도의 Gallery 플러그인을 개발하기 시작했다.




사진이 아니라 작품을 관리하는 공간

일반적인 블로그에서는 이미지는 글을 보조하는 역할을 한다.

본문을 설명하기 위한 이미지이거나, 글 안에 포함되는 첨부 파일인 경우가 대부분이다.

하지만 CY Mini Gallery에서 다루는 이미지는 조금 성격이 다르다.

직접 그린 그림,

AI로 제작한 이미지,

참고용 일러스트,

창작 자료처럼 이미지 자체가 하나의 콘텐츠가 되는 경우가 많았다.

이런 콘텐츠는 일반 게시글에 포함시키기보다 독립된 형태로 관리하는 편이 더 적합하다고 판단했다.




일반 게시글과는 다른 구조

처음에는 갤러리도 일반 게시글로 관리했다.

하지만 시간이 지나면서 문제가 생기기 시작했다.

이미지 중심 콘텐츠가 최신 글 목록에 함께 표시되었고,

검색 결과에도 일반 글과 함께 나타났다.

반대로 개발 기록이나 위키 문서 사이에 그림이 섞여 보이면서 사이트 전체의 흐름도 일정하지 않았다.

결국 갤러리 역시 별도의 콘텐츠 유형으로 분리하게 되었다.




필요한 기능은 직접 추가했다

플러그인을 분리하면서 가장 먼저 추가한 기능은 갤러리 전용 목록이었다.

이후 실제로 사용하면서 필요한 기능을 하나씩 추가했다.

현재 지원하는 주요 기능은 다음과 같다.

  • 갤러리 전용 콘텐츠 관리
  • 태그 기반 분류
  • 비밀번호 보호
  • 외부 이미지 URL 지원
  • Home 화면 연동
  • 슬라이더 연동

기능 대부분은 처음부터 계획했던 것이 아니라 사용하면서 필요해진 것들이다.




외부 이미지도 함께 관리

최근에는 외부 이미지 URL을 사용하는 기능도 추가했다.

모든 이미지를 워드프레스 서버에 저장하는 대신 외부 이미지 호스팅 서비스를 사용할 수 있도록 한 것이다.

이 방식을 적용하면 서버 용량을 줄일 수 있고, 이미지를 다른 환경에서도 재사용하기 쉽다는 장점이 있다.

필요에 따라 내부 이미지와 외부 이미지를 함께 사용할 수 있도록 구성했다.




Home 화면과의 연결

CY Mini Project에서 Home 화면은 사이트의 시작점 역할을 한다.

그래서 갤러리도 별도의 메뉴 안에만 두지 않고 첫 화면과 연결했다.

현재는 최근 등록된 그림과 추천 이미지를 Home 화면에서 바로 확인할 수 있다.

방문자는 첫 화면에서 최신 글뿐 아니라 사이트에 어떤 이미지가 등록되어 있는지도 함께 살펴볼 수 있다.




슬라이더도 함께 개선했다

최근에는 Home 화면의 갤러리 슬라이더도 여러 차례 수정했다.

초기에는 단순히 이미지를 넘겨 보여주는 기능에 가까웠지만,

현재는 다음과 같은 요소들을 추가했다.

  • 이미지 오버레이
  • 제목 표시
  • 설명 표시
  • 자동 재생
  • 반응형 레이아웃
  • 모바일 최적화

슬라이더 자체보다도 첫 화면에서 콘텐츠를 자연스럽게 소개하는 역할에 더 집중하고 있다.




앞으로 추가하고 싶은 기능

현재 Gallery 플러그인은 기본적인 관리 기능을 갖추고 있지만 아직 개발 중인 프로젝트이다.

앞으로는 다음과 같은 기능을 추가할 계획이다.

  • 다양한 정렬 방식
  • 태그 탐색 개선
  • 이미지 메타데이터 관리
  • 컬렉션 기능
  • 작품 시리즈 관리
  • 더 다양한 슬라이더 레이아웃

이미지가 많아질수록 탐색과 관리가 더 중요해질 것으로 생각하고 있다.




Gallery 플러그인의 역할

CY Mini Gallery는 단순히 이미지를 보여주는 플러그인이 아니다.

CY Mini Project 안에서 이미지와 작품을 독립적인 콘텐츠로 관리하기 위한 구성 요소이다.

블로그 글, 위키 문서, 갤러리 콘텐츠가 서로 영향을 주지 않으면서도 하나의 홈페이지 안에서 자연스럽게 연결되는 구조를 목표로 계속 개발하고 있다.




다음 개발기

다음 글에서는 현재 프로젝트에서 가장 자주 사용하는 기능 중 하나인 Tree Archive를 개발하게 된 과정과, 일반적인 카테고리 목록 대신 트리 구조를 선택한 이유를 정리해 보려고 한다.