2012-11-16 3 views
3

나는 wordpress를 처음 사용합니다. 나는 테이블을 만들고 그 테이블에 데이터를 삽입하려고합니다. 그래서 워드 프레스 데이터베이스 내에서 '앨범'이라는 테이블을 만든 다음 'my-codes'라는 디렉토리 ('wp-admin', 'wp-content', 'wp-includes'디렉토리의 루트 디렉토리/같은 레벨)를 작성했습니다.wordpress wpdb 클래스를 사용하여 데이터를 삽입하는 방법

내가 insert.php 만든 디렉토리에있는

는 내가 코드를

<?php  
global $wpdb; 
$wpdb->insert($wpdb->album , array("ID"=>1, "Name"=>'something'), array("%d", "%s")); 

?> 

에 따라 추가하지만 내가 한 실수 무엇인지이 오류 Fatal error: Call to a member function insert() on a non-object in C:\wamp\www\wordpress\my-codes\insert.php를 도와주세요 제공합니다. 당신은 워드 프레스 '$wpdb 개체에 액세스 가질 수 있도록

답변

1

당신은, 스크립트 내에서 워드 프레스 파일을로드 할 수 있습니다

require_once('../wp-load.php'); 

워드 프레스의 모든로드를, 심지어는 기능이 필요하지 않습니다 . 데이터베이스 부분 만로드하려면 read this article. -


업데이트insert 방법에 첫 번째 인수는 테이블의 이름이어야합니다 :

$wpdb->insert(
    'album', 
    array("ID"=>1, "Name"=>'something'), 
    array("%d", "%s") 
); 
+0

감사 합니다만, 이쪽도 레코드가 테이블에 삽입되지 않았습니다. 왜??? – user1784592

+0

@ user1784592 -'insert' 메쏘드의 첫번째 인자는 문자열이어야합니다. 내 답변에 대한 업데이트를 참조하십시오. –

+0

대단히 감사합니다 !!! – user1784592

0
require (dirname(dirname(__FILE__)) . '/wp-blog-header.php'); 
require (ABSPATH . WPINC . '/compat.php'); 
require (ABSPATH . WPINC . '/functions.php'); 
require (ABSPATH . WPINC . '/classes.php'); 

require_wp_db(); 
global $wpdb; // Look look! Over here! line 270 in wp-settings.php 

if (!empty($wpdb->error)) 
     dead_db(); 

//Execute your query here 
0

나는 WordPress Options API를 사용하는 대신 사용자 정의 테이블을 만드는 추천 할 것,하지 않는 한 옵션은 사용자의 요구에 맞지 않습니다. 또한 모든 코드를 테마의 functions.php에 넣으십시오. 그렇게하면 외부에 다른 WordPress 파일을로드 할 필요가 없습니다. 코드가 functions.php에 있으면 자동으로로드됩니다.

// Create an option to the database 
add_option($option, $value = , $deprecated = , $autoload = 'yes'); 

// Removes option by name. 
delete_option($option); 

// Fetch a saved option 
get_option($option, $default = false); 

// Update the value of an option that was already added. 
update_option($option, $newvalue); 

이 옵션은 직접 데이터베이스에 비해 일반적으로 더 적은 오류가 발생하기 쉬운 구현하기가 훨씬 용이하며, 다음은

(위 링크 WP 코덱스 기사에서 가져온) 옵션을 사용하여 데이터베이스에 데이터를 저장하는 방법에 대한 간단한 예제 접속하다. ^^

관련 문제