以下のようなset_post_views()関数を作成して呼び出したときにpv_countという名のカスタムフィールドに保存している閲覧数を出力して1足したものをアップデートする簡単なプログラムですが、必ず2足された数がカスタムフィールドに保存されてしまいます。
この関数を2回呼び出しているわけではなく、update_post_metaの前後でアラートにより$sum_countの数を確認するとやはり1ではなく2多くなった数字が表示されます。原因が分かる方は教えていただけないでしょうか?
ちなみに、プラグインをすべて無効にした状態でも同じ結果でした。
PHP
1function set_post_views() { 2 $postID = get_the_ID(); 3 $key = 'pv_count'; 4 $sum_count = get_post_meta( $postID, $key, true ); 5 6 //アクセス数を更新する 7 update_post_meta( $postID, $key, $sum_count + 1 ); 8 9 //試しにここで閲覧数を出力すると必ず1ではなく、2足された数が帰って来てしまう 10 $sum_count = get_post_meta( $postID, $key, true ); 11 echo "<script>alert('$sum_count');</script>"; 12} 13remove_action( 'wp_head', 'adjacent_posts_rel_link_wp_head', 10, 0); 14
回答2件
あなたの回答
tips
プレビュー