워드프레스의 기본 구조에 대해 알아보자

 

워드프레스는 잘 아시다시피 오픈소스 CMS(content management system; 저작 관리 시스템)입니다. 오픈소스이기 때문에 워드프레스의 코어 시스템과 관련하여 많은 사람이 개발과 유지 보수에 참여하고 있습니다. 워드프레스가 인기가 많은 이유 중의 하나는 정말 많은 사람이 이용/개발하고 있다는 것일 겁니다.

많은 사람이 이용/개발하고 있다는 건, 다양한 솔루션이 존재한다는 뜻입니다. 워드프레스의 테마와 플러그인이 대표적인 예죠. 워드프레스의 기본적인 프레임을 유지하면서 다양한 개성을 드러내 줄 수 있는 테마와 플러그인이 참 많습니다.

  • 코어(core) – GNU 라이센스로 개발, 공개되는 워드프레스의 기본 시스템
  • 테마(theme) – 웹 브라우저에 보이는 부분을 구성하는 코드들
  • 플러그인(plugin) – 다양한 테마에서 동일한 기능을 수행하도록 하는 코드들

우리가 워드프레스를 이용한다고 워드프레스 코어 영역까지 깊게 알아야 할 필요는 없습니다. 어떻게 이용하면 되는지만 알면 되는 거죠. 그래서, 코어를 제외하고, 워드프레스를 직접 설치해 이용하는 관점에서 기본적인 구조를 알 수 있게 정리해 보았습니다.

워드프레스의 기본 화면 구성

기본적인 워드프레스의 테마는 크게 4가지 영역으로 구성되어 있습니다.

워드프레스 기본 화면 구성

웹사이트의 성격이나 컨텐츠의 성격상 이 구조를 기본으로 삼아 다양한 변화가 있을 수 있습니다.

  • 사이드바가 없다 / 사이드바가 두 개다 / 사이드바가 컨텐츠 좌측에 있다.
  • 컨텐츠 영역과 사이드바가 디자인적으로 서로 겹치는 부분이 있다.
  • 푸터가 없이 무한 스크롤 방식이다.

그래도 대부분의 미디어형 웹사이트는 기본적으로 위와 같은 구조를 취하고 있습니다. 수없이 많은 워드프레스의 테마들도 기본적으로 이 구조를 구현하는 방식으로 구성되어 있습니다.

테마 파일의 구성

테마 파일은 워드프레스를 설치한 디렉토리를 기준으로 /wp-content/themes/ 안에 위치합니다. abc 라는 테마를 설치하면, /wp-content/themes/abc 라는 디렉토리가 생기는 것이죠.

워드프레스가 기본으로 제공하는 테마 중 하나를 예로 들어보죠. 다음은 워드프레스가 기본으로 제공했던 테마 Twenty Ten의 파일 목록입니다.

Twenty Ten 테마의 파일 목록

녹색으로 표시한 파일들을 위에서 언급한 내용에 포함된 것들입니다.

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

그 외 파일들에 대해 간단하게 설명을 해보죠. 순서는 파일명입니다. .css, .txt, .png, 폴더 등은 주로 리소스와 관련된 것들이니 설명을 생략합니다.

  • 404.php – 내용이 없는 곳으로 잘못 접속했을 때 오류임을 출력하는 파일
  • archive.php – 웹사이트 전체 포스트 목록을 출력하는 파일
  • attachment.php – 첨부 파일 정보를 출력하는 파일
  • author.php – 해당 글쓴이가 쓴 포스트만 출력하는 파일
  • category.php – 특정 카테고리의 포스트 목록을 출력하는 파일
  • comments.php – 댓글 출력용
  • functions.php – 테마테마 내부에서 벌어지는 각종 기능이 선언된 파일
  • index.php – 첫 페이지 출력과 관련한 정보가 들어있는데, 다른 파일을 다시 호출하는 경우도 많다.
  • onecolumn-page.php – 사이드바 없이 컨텐츠 영역만 표시할 때 이용하는 템플릿 파일
  • page.php – 페이지를 표시하는 기본 템플릿 파일
  • search.php – 검색창 출력용.
  • single.php – 포스트를 출력하는 기본 파일
  • tag.php – 태그 목록을 출력하는 파일

빨간색으로 표시한 파일은 컨텐츠 영역(the loop)에 구체적인 “컨텐츠의 내용” 보여주는 파일들입니다. 각각 메인, 포스트, 페이지의 내용을 보여주죠.

파란색으로 표시한 파일은 컨텐츠 영역(the loop)에 “컨텐츠의 목록”을 보여주는 파일들입니다. 전체 포스트 목록, 특정 글쓴이의 포스트 목록, 검색 결과 목록 같은 것들 말이죠.

핑크색으로 표시한 functions.php 는 화면에 직접 무언가를 출력하진 않지만, 테마의 특징적인 기능을 담고 있는 파일입니다.

설명에는 생략했지만, style.css 를 비롯한 각종 css 파일은 글자 크기, 색깔이나 구성 요소의 위치 등 디자인적인 요소를 정의하는 파일입니다.

모든 테마는 이 구조를 바탕으로 파일을 더 쪼개기도 하고, 모듈을 구성하기도 하고, 다양한 템플릿을 추가하기도 합니다. 테마 제작자마다 테마를 제작하는 스타일이 다르기 때문에 현재 사용하고 있는 테마를 잘 이해해야 커스터마이징(자신의 필요에 맞게 변경)을 쉽게 할 수 있습니다. 물론 테마를 직접 만들 수도 있습니다.

플러그인의 기능

플러그인 파일은 워드프레스를 설치한 디렉토리를 기준으로 /wp-content/plugins/ 안에 위치합니다. pqr이라는 플러그인을 설치하면, /wp-content/plugins/pqr 이라는 디렉토리가 생깁니다.

플러그인은 테마의 종류와 관계없이 특정한 기능을 수행하도록 만든 코드입니다. 기본적으로 테마를 변경하더라도 플러그인이 지원하는 기능은 사라지지 않습니다.

많은 사람이 이용하는 주요 플러그인들이 지원하는 기능들은 다음과 같습니다.

  • 각종 컨텐츠/이미지 슬라이드 기능
  • 소셜 서비스 연결
  • 위젯에 다양한 기능 추가
  • 커스텀 포스트 관련 기능
  • 각종 보안 관련 기능
  • SEO 관련 기능
  • 속도 향상(캐시) 기능
  • 웹사이트 분석 기능
  • 이커머스 기능

이 외에도 다양한 기능을 수행하는 좋은 플러그인이 많습니다. 개발을 할 수 있다면 플러그인을 받아서 자신이 원하는 기능만 직접 수정하거나 개선할 수도 있습니다. 아무래도 플러그인의 커스터마이징은 테마의 커스터마이징에 비해 훨씬 어렵죠.

마무리 요약 정리

  • 워드프레스는 오픈소스 CMS입니다.
  • 워드프레스 코어는 전 세계 많은 개발자가 계속해서 기능을 추가하고 보안을 강화하고 퍼포먼스를 개선하고 있습니다.
  • 이용자인 우리는 사이트의 성격에 맞는 테마를 고르고, 수정해서 웹사이트를 구축합니다. 필요하면 수정도 해야죠.
  • 테마가 없는 기능을 붙이려면 플러그인을 이용합니다. 역시 필요하면 수정을 해야 합니다. 하지만 좀 어렵죠.
  • 워드프레스는 무료로 이용할 수 있는 훌륭한 시스템이지만, 잘 돌아가게 구성하려면 워드프레스를 잘 알아야 합니다. 혹은 잘 아는 사람이 필요합니다. ^^

[출처] http://slownews.kr/35210

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
69 [함수] SQLite 와 php 의 연동 졸리운_곰 2017.04.26 58
68 2.워드프레스 소스코드 분석(wp-header.php) 졸리운_곰 2017.04.23 120
67 1.워드프레스 소스 분석(index.php) 졸리운_곰 2017.04.23 263
66 WAMP 설치파일 bitnami bitnami-wampstack-5.6.30-2-windows- file 졸리운_곰 2017.04.15 79
65 rbjn.kr 로봇저널리즘 소스코드 자료 file 졸리운_곰 2017.03.14 61
64 워드프레스 데이터베이스 들여다보기. file 졸리운_곰 2017.02.27 55
63 워드프레스 페이지 분석 file 졸리운_곰 2017.02.27 144
62 워드프레스 템플릿 계층 구조 쉽게 이해하기!(What is Template Hierarchy!?) file 졸리운_곰 2017.02.27 245
61 워드프레스 테마 구조 file 졸리운_곰 2017.02.27 57
60 기본적으로 알아야할 워드프레스 파일 구조 및 디렉터리 구조 file 졸리운_곰 2017.02.27 60
59 워드프레스 웹페이지 구조와 구성요소인 템플릿 파일 이해하기. file 졸리운_곰 2017.02.27 148
» 워드프레스의 기본 구조에 대해 알아보자 file 졸리운_곰 2017.02.27 35
57 워드프레스 DB 쿼리 사용법 총정리 졸리운_곰 2017.02.25 63
56 wordpress Database Description file 졸리운_곰 2017.02.25 49
55 Tour of the WordPress Database file 졸리운_곰 2017.02.25 48
54 Beginner’s Guide to WordPress Database Management with phpMyAdmin file 졸리운_곰 2017.02.25 330
53 Wordpress DB table 파헤치기 file 졸리운_곰 2017.02.09 46
52 워드프레스 영문판 설치 후 한글화 하려면? 졸리운_곰 2017.02.08 33
51 fuelphp 도입부터 scaffolding 사용까지 졸리운_곰 2017.02.06 98
50 cake php 사용법 file 졸리운_곰 2017.01.15 2436
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED