Wordpress DB table 파헤치기

2017.02.09 11:53

졸리운_곰 조회 수:46

Wordpress DB table 파헤치기

 
[참고]

 

 

 

 

2007년 포스팅을 번역하였습니다. WordPress 버전에 따라 다소 차이가 있을 수 있습니다. 
 

 

 

 

wp_posts 

 


 

WordPress는 CMS(Contents Management System) 으로 주로 사용된다. Content 테이블이 가장 중요한 핵심이다. 페이지와 포스트, 첨부파일 모두가 Content이다. WordPress는 이 모든 것을 wp_posts라는 하나의 테이블에 저장한다.

 

 

 

사실 첨부파일은 디스크에 파일로 저장되지만 WordPress는 첨부파일의 메타정보를 wp_posts 테이블을 저장하여 사용한다. 업로드 사용자의 ID, 첨부파일이 연결된 포스트의 ID, 업로드된 데이터 등의 메타정보를 유지한다. 

 

 

 

페이지와 포스트 그리고 부가 정보들은 매우 유사하면서도 확실히 다르다. 세가지 모두 제목, 공개일자, 설명, Content ID를 갖는다(이 아이디는 MySQL이나 WordPress 에 의해 자동으로 부여된다). 각각 포스트, 페이지, 첨부파일 세가지 모두 URL을 갖는다. WordPress는 wp_posts 테이블의 레코드에 저장하여 관리한다.

 

 

 

Post, Page, 첨부파일의 차이로는 wp_posts 테이블의 post_type 컬럼이 다르다. 예를 들어 Post들의 post_type의 값은 'post'이다 페이지의 경우 'page'라는 타입을 갖고, 첨부파일은 'attachments' 라는 값이 저장된다. 

 

 

 

몇가지 특별한 타입의 Post 일때만 사용되는 몇가지 컬럼이 있다. post_mime_type은 attach file 의 type을 위해 'image/jpeg' 나 'application/pdf'를 저장한다. (MIME 타입) menu_order 컬럼은 page의 순서를 위해 사용된다. past_parent는 하위페이지를 갖는 페이지 구성을 위해 사용되고 포스트의 첨부파일을 연결하기 위해서도 사용된다. 

 

 

 

아래의 쿼리는 post_type 컬럼이 사용되는 예이다.

 

 

 

SELECT * FROM wp_posts WHERE post_type = 'post' LIMIT 1

 

SELECT * FROM wp_posts WHERE post_type = 'page' LIMIT 1

 

SELECT * FROM wp_posts WHERE post_type = 'attachment' LIMIT 1

 

 

 

 

 

Post 상태는 테이블에서 관리된다. 

 

 

 

wp_posts 테이블 만으로 할수 있는 것은 다음과 같다.

 

1) 통계정보 생성

 

2) 모든 첨부파일 목록 생성

 

3) 이미지 갤러리 생성 

 

ex) "WHERE post_type = 'attachment' AND (post_mime_type = 'image/jpeg' OR post_mime_type = 'image/gif' OR post_ime_type = 'image/png')" 

 

 

 

 

 

 

 

wp_postmeta

 


 

Post에 들어가는 내용 이외에 추가하고 싶은 모든것들 ( SEO 정보, GPS, 음악 등등) Post에 남기고 싶은 모든 기타 정보들은 wp_postmeta 테이블에 저장할 수 있다.

 

 

 

table의 구조는 매우 단순하고 유연하다. 이 테이블은 단지 4개의 컬럼만 갖는다 (meta_id, post_id, meta_key, meta_value). 

 

 

 

post_id는 post의 아이디이다(wp_posts 테이블에 저장됨). meta_key는 정보의 설명이다.(song, seo). meta_value는 실제 메타 정보 데이터이다. 

 

 

 

WordPress는 wp_postmeta 테이블을 wp_posts 테이블에 저장될 수 없는 첨부파일의 부가적인 정보를 저장하는 용도로 사용한다(첨부파일 경로, 요약정보 등). 또한 부가적인 plugin에서 테이블을 마음대로 사용할 수 있도록 유연성을 제공한다. 

 

 

 

 

 

 

 

wp_users

 

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


 

wp_users 테이블은 등록된 사용자를 저장한다. UserID, login, 암호화된 암호, 이름, 등록일자 등을 wp_users 테이블에 저장하여 관리한다. 사용자에 대한 실제적인 정보라고 생각하면 된다.

 

 

 

 

 

 

 

wp_usermeta

 


 

wp_usermeta 테이블은 wp_postmeta 테이블에 포스팅된 post의 사용자들에 대한 테이블이다. 생일이나, 연락처 등의 게시자의 정보를 저장하는 용도로 사용된다.

 

 

 

 

 

 

 

wp_comments

 


 

wp_comments 테이블은 사이트의 모든 comments들을 관리한다. 이 테이블은 승인된 댓글과 승인을 기다리는 댓글, 스팸, 트랙백, 핑백이 저장된다. 

 

 

 

comment_ID : 각각 댓글에 대한 ID 값으로 MySQL에 의해 생성된다

 

comment_post_ID : 댓글이 만들어진 post 의 ID

 

comment_author : 댓글 작성자 이름

 

comment_author_email : 댓글 작성자 메일주소

 

comment_author_ip : 댓글 작성자의 IP

 

comment_date : 댓글 등록 일시

 

comment_content :  댓글 내용

 

comment_approved : 승인 여부 

 

comment_type : 보통 댓글인지, trackback 인지 구분하는 유형

 

user_id : 로그인한 사용자가 등록했다면 ID 저장

 

 

 

 

 

 

 

wp_options

 


 

WordPress 설치에 대한 전역적인 모든 옵션이 저장되는 테이블이다. 이 테이블은 wp_postmeta와 wp_usermeta 테이블가 유사하다. 

 

 

 

 

 

 

 

wp_categories

 


 

Category 이름과 설명이 저장되고 각각 상위 카테고리의 ID 또한 저장된다. 자주 요청되는 포스트와 링크는 각각의 카테고리의 wp_categories 테이블에 간략하게 저장된다. 카테고리에 포스트를 추가할 때마다 포스트 카운터는 증가한다( category_counter 칼럼)

 

 

 

 

 

 

 

wp_post2cat

 


 

포스트는 wp_post2cat 테이블을 통해 카테고리로 연결된다. wp_post2cat 테이블은 레코드 아이디, 포스트의 ID, 카테고리의 ID 3가지 필드가 저장된다.
 



출처: http://weicomes.tistory.com/184 [어제보다 오늘 덜 어리석은 개발자.]

 

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
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
58 워드프레스의 기본 구조에 대해 알아보자 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
» 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