我一直在WordPress中使用各种自定义用户字段(显示在用户个人资料中的字段)。随着3.4的更新,这些字段不再保存到数据库中。
这是我在functions.php文件中使用的代码。有谁知道需要改变哪些才能在3.4中使用?
// Create Custom User Fields
add_action( 'show_user_profile', 'appUserAnswers' );
add_action( 'edit_user_profile', 'appUserAnswers' );
function appUserAnswers( $user ) { ?>
<h3>Your Answers</h3>
<table class="form-table">
<tr>
<th><label for="question-1">Question 1</label></th>
<td>
<textarea type="text" name="question-1" id="question-1" class="regular-text" rows="5" cols="30"><?php echo esc_attr( get_the_author_meta( 'question-1', $user->ID ) ); ?></textarea>
</td>
</tr>
</table>
<?php }
// Save Custom User Fields
add_action( 'personal_options_update', 'appSaveUserAnswers' );
add_action( 'edit_user_profile_update', 'appSaveUserAnswers' );
function appSaveUserAnswers( $user_id ) {
if ( !current_user_can( 'edit_user', $user_id ) )
return false;
// Copy and paste this line for additional fields. Make sure to change 'question-1' to the field ID.
update_usermeta( $user_id, 'matrix-diagnosis', $_POST['question-1'] );
}
答案 0 :(得分:2)
这最终成了一个简单的修复。经过一番挖掘后,我发现update_usermeta已被弃用,但仍旧使用旧版本的Wordpress。在这个版本中,他们完全支持了。
用update_user_meta替换update_usermeta的所有实例解决了这个问题。
答案 1 :(得分:0)
主题检查是一个很棒的插件。当我升级到3.3升级现在3.4时,节省了大量时间查找折旧项目。这是链接WordPress Theme Check Plug-in