워드프레스 활용 이야기
워드프레스가 왜 좋은 것인가?
알려져 있는 많은 장점들이 있지만, 저에게 좋은 서비스 툴이라고 내세울 수 있는 특징 하나만 묻는다면 안정적이면서 잘 짜인 연결고리와 확장성을 갖춘 CMS라는 점을 소개하고 싶네요.
워드프레스의 주요 콘텐츠들은 거의 모두 편집 화면을 통해 작성이 됩니다. (브런치의 글 작성 화면 같은 글을 작성하는 화면) 가장 기본이 될 수 있는 콘텐츠 관리 툴로서의 워드프레스의 편집기를 활용해서 나의 콘텐츠를 어떻게 작성하고 관리를 할 수 있는지 한 번 다뤄보려고 합니다.
워드프레스를 설치한 다음 어드민을 보면 기본적으로 글, 미디어, 페이지와 같은 콘텐츠를 만들 수 있습니다. 메뉴의 왼쪽 상단에 주로 콘텐츠 작성 부분이 있고, 아래는 설정과 관련된 메뉴들이 위치합니다. 미디어를 제외한 나머지 콘텐츠들은 대부분 아래와 같은 편집 화면을 통해 작성이 됩니다.
편집기(에디터)를 통해, 콘텐츠의 제목, 주요 콘텐츠 내용, 목록에서 간략한 정보를 표시할 수 있는 요약문, 댓글의 허용 여부, url 끝 주소(슬러그), 작성자, 글의 분류를 위한 카테고리나 태그 설정, 이 콘텐츠를 대표할 수 있는 이미지를 작성 및 지정할 수 있습니다.
위의 편집 시스템은 페이지나 상품(우커머스 추가 시), 기타 모든 포스트 타입에도 마찬가지로 적용이 됩니다.
여기서 차이점이라면 부가적인 정보들을 입력할 수 있는 필드들의 묶음, 즉 메타 박스라고 불리는 정보 입력 필드들이 더 있고 없고입니다. (페이지의 경우는 최근에는 비주얼 빌더들이 포함된 테마들이 많아서 화면을 구성하기가 더욱 쉬워졌습니다) 오른쪽 위 부분에 있는 '공개(Publish)'를 누르게 되면, 잠시 후 제대로 잘 저장이 되었는지 안내 메시지와 함께 맨 위 주소 표시줄의 url이 바뀌는 것을 볼 수 있습니다. 작성한 콘텐츠에 포스트의 아이디(post ID) 번호가 붙게 되며, 작성된 모든 정보들은 이 아이디와 연결이 되어서 DB(데이터베이스)에 저장이 됩니다.
블로그, 뉴스, 포트폴리오, 이벤트 안내, 상품 소개 등등 각 사이트는 주요 콘텐츠들을 가지고 있습니다. 모든 내용은 편집 화면의 가장 넓은 부분(위 가나다라... 가 적힌 부분)을 차지하고 있는 편집 박스에 작성을 하면 내용 그대로를 표시할 수 있습니다. html 태그들을 직접 넣어서도 화면을 구성할 수 있기 때문에, 웹에서 표시할 수 있는 화면들을 이곳에서 만들 수 있습니다.
그런데 작성할 콘텐츠에 매번 반복 입력을 해야 할 정보들이 있고, 작성자는 최대한 간편하게 작성을 하되 약속된 화면을 표시할 수 있으면 베스트가 되겠죠. 상품 편집 화면에서 가격과, 갤러리 이미지, 옵션 등을 입력하면 알아서 상품 소개 화면이 나오듯이요.
돌고 돌아 전달하고 이번 글로 전달하고 싶었던 핵심은, 이 편집 화면에 내가 필요한 필드를 넣고 그걸 활용을 할 수 있으면 워드프레스가 CMS로서 활용되는 데 매우 막강한 기능을 발휘하게 된다는 겁니다.
딱 두 가지만 해결이 되면 됩니다.
1. 내 콘텐츠에 필요한 필드는 어떻게 넣을 수 있는데?
2. 필드를 넣어서 입력한 정보는 어떻게 사용할 수 있는데?
다행히도 위 두 가지도 너무 쉽게 해결이 가능하도록 플러그인과 테마들이 이미 개발이 되어 있습니다. 위에 길게 설명을 한 원리만 살짝 알고, 내가 필요한 것이 무엇인가 정리해서 적용만 하면 될 정도로요.
코딩 없이 편집 화면에 필드를 넣을 수 있는 플러그인으로 ACF라는 것이 있습니다. 임프레자 테마의 경우 애드온 리스트에도 있어서 이곳에서 설치 및 활성화가 가능합니다.
플러그인이 동작하면 어드민 메뉴에 Custom Fields라는 메뉴가 보입니다. Add New를 클릭해서 새로운 필드를 만들어 봅니다. 필드의 종류는 단순 텍스트 입력부터, 비디오 링크, 구글 맵, 달력에서 날짜 시간 선택, url, 콘텐츠 간 연결(글 검색 및 선택) 등 다양합니다. 가장 간단한 부제목을 위한 텍스트 입력을 예로 들어서 적어봤습니다.
▲ 필드를 만들었으면, 이게 어느 편집 화면에 추가되어야 하는지 결정하면 됩니다. (※ 워드프레스 편집 화면 및 유저, 분류 등에서도 이 필드들은 추가 및 활용이 가능합니다.) 예를 위해 글 편집 화면에 추가되도록 하였습니다. 설정을 완료하고 글 편집 화면을 가 보면 내가 추가한 필드를 위한 입력 박스가 추가된 걸 볼 수 있습니다.
입력한 정보는 포스트에 연결되어 저장이 돼 있기 때문에 테마의 탬플릿 파일에 코딩으로 원하는 곳 어디든 추가할 수 있습니다. (https://www.advancedcustomfields.com/resources/text/) 이걸 간편하게 할 수 있도록 ACF를 고려하여 개발이 돼 있는 테마들이 있고, 임프레자 테마도 ACF 필드를 인지를 하여 이용할 수 있는 방법을 제공하고 있습니다. 탬플릿 구성 시 Custom Field 요소를 이용하면 됩니다.
글들의 목록 화면에서는 어떻게 할까요? 이전에 여러 차례 소개한 그리드 빌더에도 이 커스텀 필드를 이용해 표시할 수 있는 구성 요소가 있습니다. 목록에서도 뭔가 원하는 정보를 마음대로 노출할 수 있는 것이죠.
워드프레스의 콘텐츠 관리는, 고유 아이디를 가진 각 포스트로서의 저장, 분류 설정, 거기에 연결된 각종 메타 정보들이 잘 짜인 시스템 안에서 동작을 합니다. 이 기본적인 틀을 이용해서 이벤트 안내, 잡 보드, 포트폴리오 소개, 지도가 포함된 여행기, 유튜브나 비메오 같은 영상이 주가 되는 글, 숍의 상품 등 반복적이면서도 주된 콘텐츠들의 어드민 설계 및 활용이 가능해지는 것입니다. 이와 관련된 플러그인은 여러 상황을 대비해 각종 옵션 화면을 개발하고 사용자들이 상황 선택을 할 수 있도록 편의를 좀 더 제공합니다.
저도 무수히 많은 플러그인을 찾아보고 이 상황에는 이걸 쓰고 저 상황에는 저걸 쓰고 미리 준비를 해 놓는 것이 일이 되었던 적도 있었죠. 하지만 기능이 매우 다양한데 거기서 반도 못 쓰는 플러그인이 많습니다. 게다가 뭔가를 수정하려고 하면 제약이 발생하거나 코드를 해야 수정할 수 있는 상황이 발생합니다.
나름 여러 작업들을 거치고 거쳐서 얻은 결론은 가장 심플하게 문제 해결을 하고, 아는 만큼만 써야지 관리도 쉽다는 점이었네요. 워드프레스를 나만의 콘텐츠를 저장하는 데 사용하기로 생각하신 분들 중 워드프레스의 편집기로는 약간 부족함이 느껴지셨다면 플러그인 사용 전 이런 활용법이 가능하다는 점을 한 번 참고해 보셨으면 합니다.
끝.