私は自分のサイトに基本的な '投稿評価'システムを設定したい - 私はプラグインを使いたくない - 私はそれぞれの新しいカスタム投稿にカスタムフィールド 'rating'を追加して番号1をこのフィールドに追加したい。 。
これは可能ですか?それとも私はこれについて間違ったやり方をしていますか? add_post_meta()
は、多くの検索であまり見つかりませんでしたか。私はそれがどこへ行くのかわからない。
あなたはsave_post
フックに単純な関数をフックすることでそれをすることができます
add_action('save_post','my_rating_field');
function my_rating_field($post_id){
global $post;
// verify if this is an auto save routine.
// If it is our form has not been submitted, so we dont want to do anything
if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE )
return;
// verify this came from the our screen and with proper authorization,
// because save_post can be triggered at other times
if ( !wp_verify_nonce( $_POST['myplugin_noncename'], plugin_basename( __FILE__ ) ) )
return;
// Check post type
if ($post->post_type != "YOUR_POST_TYPE_NAME")
return;
// OK, we're authenticated: we need to find and save the data
$rating = get_post_meta($post_id,'rating',true);
//if field not exists create it and give it the value of one
if (empty($rating) || !isset($rating)){
update_post_meta($post_id,'rating',1);
}
}