在最近的项目中,客户需要在评论管理区域中输入<select />
输入。这个想法是,网站所有者逐一阅读每条评论,并且需要记住女巫的评论对他很重要,因此<select />
将有两个输入“感兴趣” - “不感兴趣”。WordPresspress添加评论列和保存自定义数据
创建WordPress的评论管理自定义colummn,它并没有太多的痛苦,由于Wordpress Codex
/* Display custom column */
function display_posts_stickiness($column, $post_id) {
echo '<form method="post">';
echo '<input type="hidden" name="populate_importancy" value="1" />';
echo '<select name="importanceList[]">';
echo '<option value="1">Please select</option>';
echo '<option value="2">Importnat</option>';
echo '<option value="3">No important</option>';
echo '</select>';
echo '<input type="submit" id="submit" value="Choose" />';
echo '</form>';
}
add_action('manage_comments_custom_column' , 'display_posts_stickiness', 10, 2);
/* Add custom column to post list */
function add_sticky_column($columns) {
return array_merge($columns,
array('sticky' => __('Comment Importance', 'importancy_com_txt')));
}
add_filter('manage_edit-comments_columns' , 'add_sticky_column');
直到有所有的工作就像一个魅力,列和下拉已经apeared上新评论管理员专栏。
对我来说,主要问题是从这里开始,当我不想在数据库上保存用户选项时。
add_action('save_post', 'save_importancy');
function save_importancy($comment_id) {
foreach($_POST["importanceList"] as $s) {
//'importancy' column have been added under cns_comments table
$insertSQL = sprintf("INSERT INTO cns_comments (importancy) VALUES(LAST_INSERT_ID(),". $s . ")");
}
}
我不是一个PHP开发人员,而且我的PHP知识目前是有限的,并且在我将问题发布到此处之前已经过了几天。
我真的很感谢在这个问题上的一些帮助,谢谢。