5ucms论坛

标题: wordpress post view counter通过调用rest api增加 [打印本页]

作者: admin    时间: 2022-7-16 22:18
标题: wordpress post view counter通过调用rest api增加
  1. add_action( 'rest_api_init', function () {
  2.   register_rest_route( 'wp/v2', '/views/(?P<id>\d+)', array(
  3.     'methods' => 'GET',
  4.     'callback' => 'post_view_counter_function',
  5.   ));
  6. });
  7. function post_view_counter_function( WP_REST_Request $request ) {
  8.   $post_id = $request['id'];
  9.     if ( FALSE === get_post_status( $post_id ) ) {
  10.          return new WP_Error( 'error_no_post', 'Not a post id', array( 'status' => 404 ) );
  11.     } else {
  12.         $current_views = (int)get_post_meta( $post_id, 'views', true );
  13.         $views = $current_views + 1;
  14.          update_post_meta( $post_id, 'views', $views );
  15.         return intval($views);
  16.    }
  17. }
复制代码



已测试,可用xxx/views/文章id 号就可以增加浏览量
但这种增加方式 如果结合了cache类插件能否还能起到作用
或者在get这个api的时候,加一个random time结尾


作者: admin    时间: 2022-7-16 23:04
上边的'views' 要看你实际的字段值,WP的插件很多,有的用的不是这个值,你就需要视情况处理了




欢迎光临 5ucms论坛 (http://bbs.5ucms.com/) Powered by Discuz! X3.2