1

私は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'] );
}
4

2 に答える 2

2

これは簡単な修正で終わりました。掘り下げた後、 update_usermeta が非推奨になっていることを発見しましたが、Wordpress の古いバージョンではまだ機能していました。このバージョンでは、サポートを完全に取り下げました。

update_usermeta のすべてのインスタンスを update_user_meta に置き換えると、問題が解決しました。

于 2012-06-16T02:31:05.317 に答える
0

Theme Check は、このための優れたプラグインです。3.3 にアップグレードし、現在は 3.4 にアップグレードしたときに、減価償却されたアイテムを見つける時間を大幅に節約できました。ここにリンクがあり ます WordPressテーマチェックプラグイン

于 2012-06-29T03:20:55.470 に答える