我在wordpress提交中添加了一些字段,并添加以下代码以保存它们:
add_action ('comment_post', 'add_comment_bid_values', 1);
function add_comment_bid_values($comment_id) {
if(isset($_POST['bidprice'])) {
$bidprice = wp_filter_nohtml_kses($_POST['bidprice']);
add_comment_meta($comment_id, 'bidprice', $bidprice, false);
}
if(isset($_POST['bidday'])) {
$bidday = wp_filter_nohtml_kses($_POST['bidday']);
add_comment_meta($comment_id, 'bidday', $bidday, false);
}
if(isset($_POST['bidprepay'])) {
$bidprepay = wp_filter_nohtml_kses($_POST['bidprepay']);
add_comment_meta($comment_id, 'bidprepay', $bidprepay, false);
}
if(isset($_POST['bidsponsor'])) {
$bidsponsor = wp_filter_nohtml_kses($_POST['bidsponsor']);
add_comment_meta($comment_id, 'bidsponsor', $bidsponsor, false);
}
if(isset($_POST['bidfetured'])) {
$bidfetured = wp_filter_nohtml_kses($_POST['bidfetured']);
add_comment_meta($comment_id, 'bidfetured', $bidfetured, false);
}
}
现在
我如何确定评论和它的元插入到wordpress数据库中,因为一些信息由comment_form函数保存,而这个元保存上面的代码,而且wordpress没有交易。
由于
答案 0 :(得分:0)
正如wp code reference所说 - 在将注释插入数据库后立即触发'comment_post'动作钩子。这意味着只有在成功插入数据库中的注释时才会执行代码。对于评论元检查,您可以执行以下操作:
$result = add_comment_meta($comment_id, 'your_meta_key', $yourMetaValue, false)
//add_comment_meta will return false on error
if (false === $result) {
//do something here for example wp_die( __('Comment meta error', 'textdomain') );
}