언어:영어•Italiano•日本語Русский•中文(简体)•中文(繁體)•한국어•(Add your language)
이야기를 데이터베이스:wpdb Class
워드 프레스를 정의 클래스 라는 wpdb 포함하는 설정의 기능과 상호 작용하는 데 사용되는 데이터베이스입니다. 그것의 주요 목적은 워드 프레스 데이터베이스와 인터페이스를 제공하는 것입니다,하지만 다른 적절한 데이터베이스와 통신하는 데 사용할 수 있습니다. 클래스 소스 코드는 느슨하게 클래스를 기반으로 합니다.; 경고:wpdb()
클래스의 메서드를 직접 호출해서는 안 됩니다. 대신 전역$wpdb
개체를 사용하십시오!
워드프레스는 전역 객체 변수인$wpdb
을 제공합니다.$wpdb
은 워드프레스 데이터베이스와 대화하기 위해 인스턴스화됩니다. $wpdb
에 액세스하려면global keyword
을 사용하여$wpdb
을 전역 변수로 선언하거나 다음과 같은 방식으로 슈퍼 글로벌$GLOBALS
을 사용합니다:
// 1st Method - Declaring $wpdb as global and using it to execute an SQL query statement that returns a PHP objectglobal $wpdb;$results = $wpdb->get_results( "SELECT * FROM {$wpdb->prefix}options WHERE option_id = 1", OBJECT );// 2nd Method - Utilizing the $GLOBALS superglobal. Does not require global keyword ( but may not be best practice )$results = $GLOBALS->get_results( "SELECT * FROM {$wpdb->prefix}options WHERE option_id = 1", OBJECT );
이 객체는 워드프레스 데이터베이스의 모든 테이블(예:사용자 지정 플러그인 테이블)에서 데이터를 읽는 데 사용할 수 있습니다. 예를 들어”내 테이블”이라는 사용자 지정 테이블에서 일부 정보를 선택하려면 다음을 수행 할 수 있습니다.
$myrows = $wpdb->get_results( "SELECT id, name FROM mytable" );
$wpdb
객체는 테이블의 수를 이야기 할 수 있지만,한 번에 하나의 데이터베이스에만;기본적으로 워드 프레스 데이터베이스. 드문 경우이지만 다른 데이터베이스에 연결해야 하는 경우wpdb
클래스에서 고유한 데이터베이스 연결 정보를 사용하여 고유한 개체를 인스턴스화해야 합니다. 많은 데이터베이스가 있는 매우 복잡한 설정의 경우 대신 하이퍼데이터를 사용하는 것이 좋습니다.이 클래스의 일부 함수는 입력으로 사용합니다. 이 문제를 해결하려면 다음 단계를 따르세요 사용하려는 함수가 이스케이프 처리되는지 아니면 미리 이스케이프 처리될 것으로 예상되는지 설명서를 확인하십시오.
워드프레스 이스케이프에 대한 자세한 내용은 아래의 쿼리 삽입 공격에 대한 쿼리 보호 단원을 참조하십시오.
변수 선택
get_var
함수는 데이터베이스에서 단일 변수를 반환합니다. 하나의 변수만 반환되지만 쿼리의 전체 결과는 나중에 사용할 수 있도록 캐시됩니다. 결과가 없는 경우 널을 반환합니다.
<?php $wpdb->get_var( 'query', column_offset, row_offset ); ?>
쿼리(문자열)실행하려는 쿼리입니다. 이 매개 변수를null
로 설정하면 이전 쿼리의 캐시된 결과에서 지정된 변수가 반환됩니다. 원하는 열(0 이 첫 번째)입니다. 기본값은 0 입니다. 행 오프셋(정수)원하는 행(0 은 첫 번째)입니다. 기본값은 0 입니다.
예제
사용자 수를 검색하고 표시합니다.
<?php$user_count = $wpdb->get_var( "SELECT COUNT(*) FROM $wpdb->users" );echo "<p>User count is {$user_count}</p>";?>
사용자 정의 필드 값의 합계를 검색하고 표시합니다.
<?php// set the meta_key to the appropriate custom field meta key$meta_key = 'miles';$allmiles = $wpdb->get_var( $wpdb->prepare( "SELECT sum(meta_value) FROM $wpdb->postmeta WHERE meta_key = %s", $meta_key) );echo "<p>Total miles is {$allmiles}</p>";?>
행 선택
쿼리에서 전체 행을 검색하려면get_row
을 사용합니다. 이 함수는 행을 개체,연관 배열 또는 숫자 인덱싱 배열로 반환 할 수 있습니다. 쿼리에 의해 둘 이상의 행이 반환되는 경우 지정된 행만 함수에 의해 반환되지만 모든 행은 나중에 사용하기 위해 캐시됩니다. 반환 널 결과를 찾을 수없는 경우,인수에 반환 된 값을 사용할 때이 점을 고려,아래의 예를 참조하십시오.
<?php $wpdb->get_row('query', output_type, row_offset); ?>
쿼리(문자열)실행하려는 쿼리입니다. 미리 정의 된 세 가지 상수 중 하나를 입력하십시오. 기본값은 개체입니다.
- 객체-결과는 객체로 출력됩니다.
- 배열 결과는 연관 배열로 출력됩니다.
- 배열 결과는 숫자 인덱싱된 배열로 출력됩니다.
행 오프셋(정수)원하는 행(0 이 첫 번째). 기본값은 0 입니다.
예제
링크 10 에 대한 모든 정보를 가져옵니다.이 예에서는$wpdb->links
테이블의 모든 열이지만 특정 열에 대해서만 쿼리할 수도 있습니다.
echo $mylink->link_id; // prints "10"
반면
$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_A );
을 사용하면 연관 배열이 생성됩니다:
echo $mylink; // prints "10"
그리고
$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_N );
은 숫자로 인덱싱 된 배열을 만듭니다:
echo $mylink; // prints "10"
링크 테이블에 아이디 10 이 있는 레코드가 없으면null
가 반환됩니다. 다음 다음 거짓 될 것 이다:
if ( null !== $mylink ) { // do something with the link return true;} else { // no link found return false;}
열 선택
열을 선택하려면get_col
을 사용합니다. 이 함수는 1 차원 배열을 출력합니다. 쿼리에 의해 둘 이상의 열이 반환되는 경우 지정된 열만 함수에 의해 반환되지만 전체 결과는 나중에 사용하기 위해 캐시됩니다. 결과가 없는 경우 빈 배열을 반환합니다.
<?php $wpdb->get_col( 'query', column_offset ); ?>
쿼리(문자열)실행하려는 쿼리입니다. 이 매개 변수를null
로 설정하면 이전 쿼리의 캐시된 결과에서 지정된 열이 반환됩니다. 원하는 열(0 이 첫 번째)입니다. 기본값은 0 입니다.
예제
이 예제에서는 블로그가 자동차에 대한 정보에 전념한다고 가정합니다. 각 게시물은 특정 자동차(예:1969 포드 머스탱)를 설명하고 제조업체,모델 및 연도의 세 가지 사용자 정의 필드가 각 게시물에 할당됩니다. 이 예는 특정 제조업체(포드)에 의해 필터링 및 모델 및 연도별로 정렬 포스트 제목을 표시합니다. 다음 예제에서는 다음과 같이 설명합니다. 그런 다음 각 구문은 각 게시물의 제목을 표시하는 게시물 아이디 배열을 반복하는 데 사용됩니다. 이 예제에서는 다음과 같은 작업을 수행합니다.
<?php $meta_key1= 'model';$meta_key2= 'year';$meta_key3= 'manufacturer';$meta_key3_value= 'Ford';$postids=$wpdb->get_col( $wpdb->prepare( "SELECT key3.post_idFROM $wpdb->postmeta key3INNER JOIN $wpdb->postmeta key1 ON key1.post_id = key3.post_id AND key1.meta_key = %s INNER JOIN $wpdb->postmeta key2 ON key2.post_id = key3.post_id AND key2.meta_key = %sWHERE key3.meta_key = %s AND key3.meta_value = %sORDER BY key1.meta_value, key2.meta_value",$meta_key1, $meta_key2, $meta_key3, $meta_key3_value) ); if ( $postids ) {echo "List of {$meta_key3_value}(s), sorted by {$meta_key1}, {$meta_key2}";foreach ( $postids as $id ) { $post = get_post( intval( $id ) );setup_postdata( $post );?><p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p><?php} }?>
이 예제에서는 특정 사용자 정의 필드를 포함하지만 두 번째 사용자 정의 필드의 값을 기준으로 정렬된 모든 게시물을 나열합니다.
<?php// List all posts with custom field Color, sorted by the value of custom field Display_Order// does not exclude any 'post_type'// assumes each post has just one custom field for Color, and one for Display_Order$meta_key1 = 'Color';$meta_key2 = 'Display_Order';$postids = $wpdb->get_col( $wpdb->prepare( "SELECT key1.post_idFROM $wpdb->postmeta key1INNER JOIN $wpdb->postmeta key2 ON key2.post_id = key1.post_id AND key2.meta_key = %sWHERE key1.meta_key = %sORDER BY key2.meta_value+(0) ASC", $meta_key2,$meta_key1) ); if ( $postids ) {echo "List of {$meta_key1} posts, sorted by {$meta_key2}";foreach ( $postids as $id ) {$post = get_post( intval( $id ) );setup_postdata( $post );?><p><a href="<?php the_permalink() ?>" rel="bookmark" title="Permanent Link to <?php the_title_attribute(); ?>"><?php the_title(); ?></a></p><?php}}?>
일반 결과 선택
일반,get_results
을 사용하여 데이터베이스에서 여러 행 결과를 가져올 수 있습니다. 이 함수는 전체 쿼리 결과를 배열로 반환합니다. 이 배열의 각 요소는 쿼리 결과의 한 행에 해당하며get_row
과 같이 객체,연관 배열 또는 번호가 매겨진 배열이 될 수 있습니다. 일치하는 행을 찾을 수 없거나 데이터베이스 오류가 있는 경우 반환 값은 빈 배열이 됩니다. 만약$쿼리 문자열이 비어 있거나 유효하지 않은$출력_유형을 전달한다면,널이 반환될 것이다.
<?php $wpdb->get_results( 'query', output_type ); ?>
쿼리(문자열)실행하려는 쿼리입니다. 출력_사전 정의 된 네 가지 상수 중 하나를 입력하십시오. 기본값은 개체입니다. 자세한 내용은 행 선택 및 해당 예제를 참조하십시오.
- 개체-결과는 숫자 인덱싱 된 행 개체 배열로 출력됩니다.
- 첫 번째 열의 값을 키로 사용하여 행 개체의 연관 배열로 결과가 출력됩니다(중복은 삭제됩니다).
- 배열 결과는 열 이름을 키로 사용하여 연관 배열의 숫자 인덱스 배열로 출력됩니다.
- 배열 결과는 숫자 인덱싱된 배열의 숫자 인덱싱된 배열로 출력됩니다.이 함수는 모든 클래스 변수가 제대로 설정되어 있습니다. ‘선택’쿼리에 대한 결과 개수는$에 저장됩니다.
예
사용자 5 에 의해 모든 초안의 아이디 및 제목을 얻고 제목을 에코.
$fivesdrafts = $wpdb->get_results( "SELECT ID, post_title FROM $wpdb->postsWHERE post_status = 'draft' AND post_author = 5");foreach ( $fivesdrafts as $fivesdraft ) {echo $fivesdraft->post_title;}
사용자가 초안에 대한 모든 정보를 얻습니다.
<?php$fivesdrafts = $wpdb->get_results( "SELECT * FROM $wpdb->postsWHERE post_status = 'draft' AND post_author = 5");if ( $fivesdrafts ){foreach ( $fivesdrafts as $post ){setup_postdata( $post );?><h2><a href="<?php the_permalink(); ?>" rel="bookmark" title="Permalink: <?php the_title(); ?>"><?php the_title(); ?></a></h2><?php}}else{?><h2>Not Found</h2><?php}?>
행 삽입
테이블에 행을 삽입합니다.
<?php $wpdb->insert( $table, $data, $format ); ?>
테이블(문자열)데이터를 삽입할 테이블의 이름입니다. 삽입 할 데이터(배열)데이터(열=>값 쌍). $데이터 열과$데이터 값은 모두”원시”이어야 합니다. 형식(배열|문자열)(선택 사항)$데이터의 각 값에 매핑 할 형식의 배열입니다. 문자열 인 경우 해당 형식은$데이터의 모든 값에 사용됩니다. 생략하면$데이터의 모든 값은 문자열로 처리됩니다.
가능한 형식 값:%에스 문자열로;%디 정수(정수);및%에프 부동. (자세한 내용은 아래를 참조하십시오.이 경우 자동 증가 열에 대해 생성된 아이디를 사용하여 액세스할 수 있습니다.:
$wpdb->insert_id
이 함수는 행을 삽입 할 수없는 경우 거짓을 반환합니다. 그렇지 않으면 영향을받는 행의 수를 반환합니다(항상 1 이 될 것입니다).
참고:데이터 매개 변수 열의 값 부분=>값 쌍은 스칼라여야 합니다. 만약 당신이 삽입 될 값으로 배열(또는 객체)을 전달하면”매개 변수 1 이 문자열이 될 것으로 예상합니다.”와 유사한 경고가 생성됩니다.배열은 줄 880 에 주어진다.파일/
포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/ 포함/포함/ 포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/포함/”…….” 예제
행에 두 개의 열을 삽입합니다.:
$wpdb->insert( 'table', array( 'column1' => 'value1', 'column2' => 123 ), array( '%s', '%d' ) );
행 바꾸기
테이블의 행이 있는 경우 바꾸거나 행이 없는 경우 테이블에 새 행을 삽입합니다.
<?php $wpdb->replace( $table, $data, $format ); ?>
테이블(문자열)데이터를 바꿀 테이블의 이름입니다. 대체 할 데이터(배열)데이터(열=>값 쌍). $데이터 열과$데이터 값은 모두”원시”이어야 합니다. 형식(배열|문자열)(선택 사항)$데이터의 각 값에 매핑 할 형식의 배열입니다. 문자열 인 경우 해당 형식은$데이터의 모든 값에 사용됩니다. 생략하면$데이터의 모든 값은 문자열로 처리됩니다.
가능한 형식 값:%에스 문자열로;%디 정수(정수);및%에프 부동. (자세한 내용은 아래를 참조하십시오.데이터 배열 매개 변수에 있는 문자열 요소의 길이가 더 길면 삽입이 실패합니다. 삽입하려는 데이터가 데이터베이스에 맞는지 확인해야 합니다.
바꾸기 후 자동 증가 열에 대해 생성된 아이디는 다음과 같이 액세스할 수 있습니다:
$wpdb->insert_id
이 함수는 영향을 받는 행 수를 나타내는 개수를 반환합니다. 삭제 및 삽입된 행의 합계입니다. 단일 행 바꾸기의 개수가 1 이면 행이 삽입되고 행이 삭제되지 않습니다. 개수가 1 보다 큰 경우 새 행이 삽입되기 전에 하나 이상의 이전 행이 삭제되었습니다. 테이블에 여러 개의 고유 인덱스가 포함되어 있고 새 행이 서로 다른 고유 인덱스의 서로 다른 이전 행에 대한 값을 복제하는 경우 단일 행이 두 개 이상의 이전 행을 대체할 수 있습니다.
기존 행을 바꿀 수 없고 새 행을 삽입할 수 없는 경우 이 함수는 거짓을 반환합니다.첫 번째 값은 행 아이디,두 번째 문자열 및 세 번째 숫자:
$wpdb->replace( 'table', array( 'indexed_id' => 1,'column1' => 'value1', 'column2' => 123 ), array( '%d','%s', '%d' ) );
행 업데이트
테이블의 행을 업데이트합니다. 오류가 발생한 경우 거짓을 반환하거나 성공한 경우 영향을 받는 행 수를 반환합니다.
<?php $wpdb->update( $table, $data, $where, $format = null, $where_format = null ); ?>
테이블(문자열)업데이트할 테이블의 이름입니다. 업데이트 할 데이터(배열)데이터(열=>값 쌍). $데이터 열과$데이터 값은 모두”원시”이어야 합니다. 즉,가져 오기 또는 게시 데이터를 사용하는 경우 데이터베이스에서 슬래시가 끝나는 것을 방지하기 위해 스트립 슬래시()를 사용해야 할 수도 있습니다. 여기서(배열)절(열=>값 쌍)의 명명 된 배열입니다. 여러 절이 안데스와 결합 될 것입니다. 둘 다$여기서 열과$여기서 값은”원시”여야합니다. 형식(배열|문자열)(선택 사항)$데이터의 각 값에 매핑 할 형식의 배열입니다. 문자열 인 경우 해당 형식은$데이터의 모든 값에 사용됩니다. 여기서_형식(배열|문자열)(선택 사항)$의 각 값에 매핑 할 형식의 배열입니다. 문자열 인 경우 해당 형식은$의 모든 항목에 사용됩니다.
가능한 형식 값:%에스 문자열로;%디 정수(정수)및%에프 부동. (자세한 내용은 아래를 참조하십시오.)생략 된 경우$의 모든 값은 문자열로 처리됩니다.
반환 값: 이 함수는 업데이트 된 행의 수를 반환,또는 오류가있는 경우 거짓. $데이터가 이미 데이터베이스에 있는 데이터와 일치하면 행이 업데이트되지 않으므로 0 이 반환됩니다. 이 때문에,당신은 아마 거짓===$결과
예
와 반환을 확인해야합니다.:
$wpdb->update( 'table', array( 'column1' => 'value1',// string'column2' => 'value2'// integer (number) ), array( 'ID' => 1 ), array( '%s',// value1'%d'// value2), array( '%d' ) );
주의:
%d
는 쉼표 값을 처리 할 수 없습니다.행 삭제
삭제 기능은 워드 프레스 3.4.0 에 추가되었으며 테이블에서 행을 삭제하는 데 사용할 수 있습니다. 사용법은 업데이트 및 삽입과 매우 유사합니다. 이 업데이트 된 행의 수를 반환,또는 오류에 거짓.
사용법
<?php $wpdb->delete( $table, $where, $where_format = null ); ?>
매개 변수
$테이블(문자열)(필수)테이블 이름. 기본값:없음$여기서(배열)(필수)절(열->값 쌍)의 명명 된 배열입니다. 여러 절이 안데스와 결합 될 것입니다. 둘 다$여기서 열과$여기서 값은’원시’여야합니다. 기본값: 없음$여기서_형식(문자열/배열)(선택 사항)$의 각 값에 매핑 할 형식의 배열. 문자열 경우,해당 형식은$의 모든 항목에 사용됩니다. 형식 중 하나입니다’%디’,’%에프’,’%에스'(정수,부동 소수점,문자열;자세한 내용은 아래 참조). 생략하면$의 모든 값은 문자열로 처리됩니다. 예제
// Default usage.$wpdb->delete( 'table', array( 'ID' => 1 ) );// Using where formatting.$wpdb->delete( 'table', array( 'ID' => 1 ), array( '%d' ) );
일반 쿼리 실행
query
함수를 사용하면 워드프레스 데이터베이스에서 모든 쿼리를 실행할 수 있습니다. 특정 쿼리,사용자 지정 쿼리 또는 기타 복잡한 쿼리가 필요할 때 사용하는 것이 가장 좋습니다. 테이블에서 정보를 선택하는 것과 같은 기본적인 쿼리는 위의get_results, get_var, get_row or get_col
와 같은 다른wpdb
함수를 참조하십시오.일반 구문
<?php $wpdb->query('query'); ?>
쿼리(문자열)실행할 쿼리입니다.
이 함수는 선택,삽입,삭제,업데이트 등에 대해 영향/선택된 행 수를 나타내는 정수 값을 반환합니다. (특정 행 대신 전체 테이블에 영향을 미침)이 함수는 성공 시
TRUE
을 반환합니다. 오류가 발생하면 함수가FALSE
을 반환합니다. 행 쿼리에 대해 0 과FALSE
이 모두 반환될 수 있으므로 반환 값을 확인할 때는 주의해야 합니다. 식별 연산자(===)를 사용하여 오류(예:거짓===$결과)및 행이 영향을 받았는지 여부(예:0===$결과)를 확인합니다.예
게시물 13 에서’양치질’메타 키와 값을 삭제합니다. (우리는 우리가 잘못된 연산 또는 잘못된 문자를 처리하지 않는 있는지 확인하기 위해’준비’방법을 추가합니다):
$wpdb->query( $wpdb->prepare( " DELETE FROM $wpdb->postmeta WHERE post_id = %d AND meta_key = %s", 13, 'gargle' ));
에 의해 워드 프레스에서 수행
delete_post_meta()
.15 페이지의 부모를 7 페이지로 설정합니다.
$wpdb->query( $wpdb->prepare( "UPDATE $wpdb->posts SET post_parent = %dWHERE ID = %dAND post_status = %s", 7, 15, 'static') );
그것은 모든 워드 프레스 코드 참여자 및 플러그인 작성자에 대한 읽기해야합니다.예를 들어,쿼리가 실행되지 않으면 쿼리가 실행되지 않습니다. 이 메서드는 워드프레스에 대해 이 기능을 수행합니다.
참고:::준비()는 최소 2 개의 인수를 적용합니다.
<?php $sql = $wpdb->prepare( 'query' , value_parameter ); ?>
[잡담]님들 이거 보고싶다[1] 자리 표시자로 대체할 값입니다. 많은 값은 단순히 스프린트()와 같은 방식으로 더 많은 인수를 전달하여 전달 될 수 있습니다. 두 번째 인수는 다음과 같이 값을 포함하는 배열이 될 수 있습니다. 이 매개 변수에 대한 직접 사용자 입력을 허용하지 않도록 주의해야 합니다. 값을 이스케이프할 수 없습니다.
자리 표시자
준비에 대한 쿼리 매개 변수는 스프린트()와 같은 자리 표시자를 허용합니다. 이 예제에서는 다음과 같은 형식을 사용할 수 있습니다. 이 함수는 버전 2.3 에서 코어에 추가된 이후에만 사용할 수 있습니다.)다른
%
문자는 이스케이프되지 않는 한 구문 분석 오류를 일으킬 수 있습니다. 와일드카드를 포함한 모든%
문자는%%
으로 이중%이스케이프 처리되어야 합니다. 모든%디,%에프 및%에스 쿼리 문자열에 따옴표로 묶인 채로 두어야합니다. 참고%디 자리 표시자는 정수만 허용하므로%디를 통해 쉼표 값이 있는 숫자를 전달할 수 없습니다.예제
메타 키 추가=>값 쌍”해리엇의 격언”=>”워드 프레스의 데이터베이스 인터페이스는 일요일 아침과 같습니다.”포스트 10.
$metakey= "Harriet's Adages";$metavalue= "WordPress' database interface is like Sunday Morning: Easy.";$wpdb->query( $wpdb->prepare( "INSERT INTO $wpdb->postmeta( post_id, meta_key, meta_value )VALUES ( %d, %s, %s )", 10, $metakey, $metavalue ) );
add_meta()
에 의해 워드 프레스에서 수행.$metakey = "Harriet's Adages";$metavalue = "WordPress' database interface is like Sunday Morning: Easy.";$wpdb->query( $wpdb->prepare( "INSERT INTO $wpdb->postmeta( post_id, meta_key, meta_value )VALUES ( %d, %s, %s )", array(10, $metakey, $metavalue) ) );
이 예제에서는 배열에 값을 함께 포장합니다. 이것은 런타임까지 전달해야 할 인수의 수를 모를 때 유용 할 수 있습니다.
문자열을 인용하는 것에 대해 걱정할 필요가 없습니다. 예를 들어,문자열의 경우
%s
자리 표시자,정수의 경우%d
자리 표시자,부동 소수점의 경우%에프를 사용합니다. 각 값은prepare()
메서드에서 새 매개 변수로 전달할 수 있습니다.show_errors
과hide_errors
을 각각 사용하여 에러 반향을 켜고 끌 수 있습니다.<?php $wpdb->show_errors(); ?>
<?php $wpdb->hide_errors(); ?>print_error
을 사용하여 가장 최근 쿼리에서 생성된 오류(있는 경우)를 인쇄할 수도 있습니다.<?php $wpdb->print_error(); ?>
참고:워드프레스 멀티사이트를 실행하는 경우 데이터베이스 오류가 다음과 같이 표시되도록 디온베러 상수를 정의해야 합니다:
<?php define( 'DIEONDBERROR', true ); ?>
열 정보 가져오기
get_col_info
을 사용하여 최근 쿼리 결과의 열에 대한 정보를 검색할 수 있습니다. 이는 함수가 속성을 모르는 개체를 반환했을 때 유용할 수 있습니다. 이 함수는 지정된 열에서 원하는 정보를 출력하거나 열이 지정되지 않은 경우 쿼리 결과의 모든 열에 대한 정보가 있는 배열을 출력합니다.<?php $wpdb->get_col_info('type', offset); ?>
검색하려는 정보를 입력합니다(문자열). 다음 값 중 하나를 취할 수 있습니다. 기본값은 이름입니다.
- 이름-열 이름. 기본값.
- 곱하기 _키-1 열이 고유하지 않은 키인 경우
- 숫자-1 열이 숫자인 경우
- 블롭-1 열이 블롭
- 유형-열의 유형
- 부호없는-1 열이 부호없는 경우
- -채워진
오프셋(정수)정보를 검색할 열을 지정합니다(0 이 첫 번째 열임). 기본값은-1 입니다.
- -1-모든 열에서 정보를 검색합니다. 배열로 출력. 기본값.
- 음이 아닌 정수-지정된 열에서 정보를 검색합니다(0 이 첫 번째 임).
캐시 지우기
flush
을 사용하여 결과 캐시를 지울 수 있습니다.
<?php $wpdb->flush(); ?>
그러면$wpdb->last_result
,$wpdb->last_query
및$wpdb->col_info
이 지워집니다.
클래스 변수
$에러 메아리가 켜져 있는지 여부를 보여줍니다. 기본값은 참입니다. $숫자 _실행된 쿼리 수를 쿼리합니다. 실행된 가장 최근의 쿼리입니다. 가장 최근의 오류 텍스트입니다. $쿼리 저장 큐 상수를 참(이 상수의 기본값은 거짓)으로 설정하여 데이터베이스에서 실행되는 모든 쿼리와 중지 시간을 저장할 수 있습니다. 저장 쿼리가 참이면 쿼리는 이 변수에 배열로 저장됩니다. $마지막_가장 최근의 쿼리 결과. 가장 최근의 쿼리 결과에 대한 열 정보입니다. 열 정보 가져오기를 참조하십시오. 가장 최근의 삽입 쿼리에 의해 자동 증가 열에 대해 생성됩니다. $마지막 쿼리에서 반환된 행 수를 넘깁니다. $사이트에 할당 된 워드 프레스 테이블 접두사를 접두사. 원래 접두사를 기본 접두사로 설정합니다.
다중 사이트 변수
다중 사이트를 사용하는 경우 다음 사이트에도 액세스할 수 있습니다. $사이트 현재 네트워크(이전의”사이트”)의 아이디입니다. 워드 프레스는 현재 멀티 사이트 설치 당 하나의 네트워크를 지원하지만,그 미래에 변경 될 수 있습니다. 자세한 내용은 다음을 참조하십시오.
- http://stackoverflow.com/a/4189358/1924128 – 같은 질문에 대한 또 다른 좋은 대답.
테이블
워드 프레스 데이터베이스 테이블은 쉽게wpdb
클래스에서 참조됩니다.
$게시물 테이블을 게시합니다. $메타 콘텐츠(일명 사용자 정의 필드)테이블을 게시합니다. $주석 테이블에 댓글. $주석표에는 추가 주석 정보가 포함되어 있습니다. $용어 메타 용어 메타 테이블에는 용어 메타 값이 포함되어 있습니다. $용어 용어 테이블에는 카테고리,링크 카테고리,태그의’설명’이 포함되어 있습니다. $용어 _탁서법 용어 _탁서법 표는 다양한 분류법(용어 클래스)을 설명합니다. 카테고리,링크 카테고리 및 태그는 분류 체계입니다. 즉,이 파일은 각 게시물에 사용되는 각 범주를 가리킵니다. $사용자 사용자의 테이블. 사용자 테이블에는 닉네임,설명 및 권한과 같은 추가 사용자 정보가 포함되어 있습니다. $링크 링크 테이블. $옵션 옵션 테이블.
다중 사이트 테이블
이러한 테이블은 다중 사이트 설치에서만 사용됩니다.
$블로그 블로그 테이블에는 네트워크 내에 설정된 별도의 블로그(사이트)목록이 포함되어 있습니다. $가입 가입 테이블. $사이트 사이트 테이블에는 설치에 설정된 네트워크 목록(이전에는”사이트”라고 함)이 포함되어 있습니다(일반적으로 이 표에는 하나의 사이트만 나열됨). $사이트메타 네트워크 옵션(사이트 메타)테이블에는 전체 다중 사이트 설치에 적용할 수 있는 모든 옵션이 포함되어 있습니다. $사이트 카테고리 사이트 카테고리 테이블. $등록_로그 등록 로그 테이블. $블로그 _버전 블로그 버전 테이블.
소스 파일
관련
- 멤버 함수:
기사
- 기사:루프-워드 프레스 루프 내에서 쿼리의 사용의 기본 개요.
- 기사: 쿼리 개요-워드 프레스를 생성하는 쿼리를 결정하는 방법에 대한 설명.
- 기사:후크를 통한 쿼리 사용자 정의
- 기사:분류 체계에 대한 고급 쿼리 작성
- 기사:오프셋 및 페이지 매김을 사용하여 사용자 정의 쿼리 작성
코드 문서
- 클래스:사용자 관련 쿼리에 대한 자세한 개요는 사용자 관련 쿼리에 대한 사용자 쿼리 클래스(3202>
- 개체)에 대한 설명 쿼리 클래스입니다.: 사용자 지정 쿼리 만들기
- 함수:쿼리 게시물()-추가 사용자 지정 쿼리 만들기
- 함수:게시물 가져오기()-항목의 아이디를 가져와 해당 아티클에 대한 데이터베이스의 레코드를 반환합니다.
- 함수:게시물 가져오기()-항목 배열을 반환하는 특수 함수
- 함수:페이지 가져오기()-페이지 배열을 반환하는 특수 함수
- 함수: 이 함수는 쿼리 후 루프를 자동으로 설정하는 데 사용됩니다 함수:되감기_게시물()-현재 루프를 지 웁니다
- 함수:설정_게시물 데이터()-루프 내에서 단일 쿼리 결과에 대한 데이터를 설정합니다
- 함수:(일반적으로 다른 루프 내에서 루프 후)이전 쿼리를 복원
- 함수:
- 함수: 작업 후크:게시물-쿼리 후 게시물 개체 수정
- 필터 후크:발견된 게시물-찾은 개체의 값을 변경합니다.