当debug设置为TRUE时,我正在尝试调试WP后端上的“未定义索引”错误。违反规定的是:
if ( !wp_verify_nonce( $_POST[\'pdwt_meta_noncename\'], plugin_basename(__FILE__) )) {
return $post->ID;
}
然后,我将其更改为通过添加以下内容来检查值是否已设置:
if ( isset( $_POST[\'pdwt_meta_noncename\']) || ! wp_verify_nonce( $_POST[\'pdwt_meta_noncename\'], plugin_basename(__FILE__) )) {
return $post->ID;
}
添加使错误消失,但当我在自定义字段中输入信息时,它不会保存。
自定义字段的设置方式如下:
echo \'<input type="hidden" name="pdwt_meta_noncename" id="pdwt_meta_noncename" value="\' .
wp_create_nonce( plugin_basename(__FILE__) ) . \'" />\';
这是
save_post
零件:
foreach ($pdwt_meta as $key => $value) { // loop through the $pdwt_meta array
if( $post->post_type == \'revision\' ) return; // make sure the data isn\'t stored twice
$value = implode(\',\', (array)$value); // if $value is in an array, make it a comma seperated value
if(get_post_meta($post->ID, $key, FALSE)) { // if the custom field already has a value
update_post_meta($post->ID, $key, $value);
} else { // AND IF IT DOESN\'T ALREADY HAVE A VALUE
add_post_meta($post->ID, $key, $value);
}
if(!$value) delete_post_meta($post->ID, $key); // DELETE IF IT\'S EMPTY
}
add_action(\'save_post\', \'pdwt_save_meta\', 1, 2); // SAVE THE CUSTOM FIELDS
我没有写主题的这一特定部分。有什么想法吗?