我使用以下get_post_meta功能,但它沒有顯示任何值,則顯示空白結果爲什麼不是get_post_meta工作?
$meta_values = get_post_meta($post_id, 'salary', true);
我能夠看到.I AM在使用它在一個插件存在於phpmyadmin的值行動(save_post,sftoproject),但它顯示我的代碼中的任何值。
這裏是我的代碼
add_action('save_post','user_sf_project');
function user_sf_project($post_id){
$SOAP_CLIENT_BASEDIR = plugin_dir_path(__FILE__).'Force.com-Toolkit-for-PHP/soapclient/';
require_once ($SOAP_CLIENT_BASEDIR.'/SforcePartnerClient.php');
require_once ($SOAP_CLIENT_BASEDIR.'/SforceHeaderOptions.php');
require_once ('Force.com-Toolkit-for-PHP/Samples/userAuth.php');
try {
$mySforceConnection = new SforcePartnerClient();
$mySoapClient = $mySforceConnection->createConnection($SOAP_CLIENT_BASEDIR.'/partner.wsdl.xml');
$mylogin = $mySforceConnection->login("username", "password");
$postdata = get_post($post_id);
$meta_values = get_post_meta($post_id, 'salary', true);
$fields = array (
'Name' => $post_id,
'First_Name__c' => $postdata->post_title,
'Salary__c' => $meta_values,
);
$sObject = new SObject();
$sObject->fields = $fields;
$sObject->type = 'NewObject__c';
$createResponse = $mySforceConnection->create(array($sObject));
print_r($createResponse);
$ids = array();
foreach ($createResponse as $createResult) {
print_r($createResult);
array_push($ids, $createResult->id);
}
} catch (Exception $e) {
echo $mySforceConnection->getLastRequest();
echo $e->faultstring;
}
你檢查你設置一個有效的$ POST_ID? (如果它不是全局變量,則可能無法訪問) – Minister
如果您試圖訪問的內容類型是自定義的或者不是您可以請讓我們知道嗎?來自文檔:它是get_metadata('post')的包裝。要返回所有的自定義字段,請參閱get_post_custom()。 – Minister
我檢查了它,它是正確的。我得到了get_post($ post_id)的結果,但不是get_post_meta($ post_id,'salary',true) – Himanshu