Skip to content
Read For Learn
Read For Learn
  • Database
    • Oracle
    • SQL
  • C
  • C++
  • Java
  • Java Script
  • jQuery
  • PHP
Read For Learn
  • Database
    • Oracle
    • SQL
  • C
  • C++
  • Java
  • Java Script
  • jQuery
  • PHP

How to get the total number of meta_values based on a custom post type?

There may not be a need for a custom query, but I’d recommend it rather than hitting the database:
– once for the WP_Query
– once more for each post entry

And then manually working out the math in PHP. Do it all at once with one MySQL statement.

select sum(PM.meta_value) from wp_postmeta PM
join wp_posts P on P.ID = PM.post_id
where P.post_type="page"
    and PM.meta_key='test'

With your code above, replace the $r=... line with this:

$r = $wpdb->get_results( $wpdb->prepare( "
    SELECT SUM(pm.meta_value) FROM {$wpdb->postmeta} pm
    LEFT JOIN {$wpdb->posts} p ON p.ID = pm.post_id
    WHERE pm.meta_key = '%s' 
    AND p.post_status="%s" 
    AND p.post_type="%s"
  ", $key, $status, $type ) );

$r[0] should be your total. 🙂

Related Posts:

  1. Lack of composite indexes for meta tables
  2. Safe to delete blank postmeta?
  3. How to get all term meta for a taxonomy – getting term_meta for taxonomy
  4. delete unused postmeta
  5. Triple meta_key on custom SELECT query
  6. Job of meta_key meta_value fields in database tables
  7. order by multiple meta_keys?
  8. WP_POSTMETA – What do these values mean inside the data structure?
  9. MySQL Query To Select Post By Postmeta
  10. How can I convert postmeta from unserialized to serialized?
  11. why after saving meta value it’s saving all the values the one that i clicked?
  12. Is it safe to add a new field to meta_value field?
  13. How to delete duplicate records in wp_postmeta database table?
  14. How can I use ‘orderby’ => ‘meta_value_num’ to order by the numerical value even if the value starts with a word?
  15. Display current ranking of post as a number in post title
  16. I can not display meta value in extras.php and template-tags.php
  17. Count Post and Page Views based on meta_value Using Shortcode in Dashboard Widget
  18. Negative meta_query if storing multiple post_meta values with shared meta_key
  19. if get_post_meta function returns empty – Do Not Display HTML
  20. How to get the total of two meta values from different meta keys?
  21. How to save a meta_value as a numeric value after I retrieve it via update_post_meta?
  22. How to update/add child posts meta whenever the parent post meta is updated?
  23. why is my postmeta table is so heavy
  24. Display multiple meta_key/meta_values by single SQL query
  25. Multiple meta key and value search in the query
  26. How to sort by meta value num, but ignore zero value?
  27. How do i get value from wp_postmeta?
  28. Using mysql queries to delete custom post types based on meta_value
  29. Export posts with postmeta without ID?
  30. Update post meta array – add new, single value
  31. How do I retrieve the slug of the current page?
  32. Most efficient way to get posts with postmeta
  33. How to only display posts whose meta_value field is not empty?
  34. Get posts by meta value
  35. Explanation of update_post_(meta/term)_cache
  36. How to extract data from a post meta serialized array?
  37. How to save an array with one metakey in postmeta?
  38. WordPress is stripping escape backslashes from JSON strings in post_meta
  39. How can I get the post ID from a WP_Query loop?
  40. Why are simple updates to wp_postmeta’s “_edit_lock” so slow?
  41. Check if Post Title exists, Insert post if doesn’t, Add Incremental # to Meta if does
  42. Use REGEXP in WP_Query meta_query key
  43. How to update_post_meta value as array
  44. Adding meta tag without plugin
  45. What’s the point of get_post_meta’s $single param?
  46. What is the different between an attachment in wp_posts and an attachment in wp_postmeta?
  47. How to edit a post meta data in a Gutenberg Block?
  48. Sanitizing integer input for update_post_meta
  49. post formats – how to switch meta boxes when changing format?
  50. Execute action after post is saved with all related post_meta records (data)
  51. Get a single post by a unique meta value
  52. if get_post_meta is empty do something
  53. How we get_post_meta without post id
  54. How get post id from meta value
  55. What is the code to get the download link for a product in WooCommerce?
  56. Dealing with Many Meta Values, 30+
  57. advanced custom fields update_field for field type: Taxonomy
  58. update_post_meta not saving when value is zero
  59. Content hooks vs User hooks
  60. Meta compare with date (stored as string) not working
  61. Trying to get custom post meta through Jetpack JSON API [closed]
  62. How to update/insert custom field(post meta) data with wordpress REST API?
  63. Restrict post edit/delete based on user ID and custom field
  64. get_post_meta returning empty string when data shows in the database
  65. publish_post action hook doesn’t give post_meta_data
  66. Remove WordPress.org Meta link
  67. Remove post meta keys
  68. How to access the post meta of a post that has just been published?
  69. Why time functions show invalid time zone when using ‘c’ time format?
  70. Why is get_post_meta returning an array when I specify it as single?
  71. How to update/delete array in post meta value?
  72. Adding an assisting editor box to Post page
  73. Migrating non-WordPress CMS to WordPress, lots of data to move — possible solutions?
  74. importing data from non-wordpress mysql db
  75. Should I sanitize custom post meta if it is going to be escaped later?
  76. Add post meta based on another post meta value before publish post
  77. How do I retrieve multi-dimensional arrays from the wp_postmeta table, & display on a website?
  78. Front-end update_post_meta snippet displays white screen?
  79. Query between two meta values?
  80. Save both current and new version of post meta
  81. Get Advanced Custom Fields values before saving [closed]
  82. Give extra post-meta to RSS feeds
  83. How to get meta value in wp_attachment_metadata
  84. How to count post meta key values for all posts in database
  85. WP REST API “rest_no_route” when trying to update meta
  86. Clean up output added via wp_head()
  87. List posts under meta_value heading
  88. WordPress Admin Panel search posts with custom post meta values along with title
  89. Why am I getting an infinite loop with have_posts?
  90. get_post_meta – get a single value
  91. Group posts by meta_key
  92. delete value 0 in post meta [closed]
  93. How to solve slow WordPress site caused by attachment_metadata
  94. Can I safely delete a record, manually, in the wp postmeta table?
  95. How to store post meta in an array?
  96. What action hook updates post meta?
  97. Can’t translate the post meta data (Date) in another language
  98. get_post_meta / update_post_meta array
  99. adding a URL to a post meta
  100. How to break meta values into different items and avoid duplicates?
Categories post-meta Tags meta-value, mysql, post-meta
get_header and hook avoid normal call
Adding content before the loop in category pages

Recommended Hostings

Cloudways: Realize Your Website's Potential With Flexible & Affordable Hosting. 24/7/365 Support, Managed Security, Automated Backups, and 24/7 Real-time Monitoring.

FastComet: Fast SSD Hosting, Free Migration, Hack-Free Security, 24/7 Super Fast Support, 45 Day Money Back Guarantee.

Recent Added Topics

  • Bug in translation system: load_theme_textdomain() returns true, files are available and accessible but the language defaults to english
  • Custom Elementor controls not appearing in the widget Advanced tab using injection hooks
  • Get the name of the template/*html file used
  • Trying to Add Paging to Single Post Page
  • Sharing media files between live and staging servers
  • How to display the description of a custom post type in the dashboard?
  • Critical error on image display
  • Copying WP data and files into new install?
  • How to determine the DirectAdmin WordPress backup date?
  • How to get list of ALL tables in the database?
© 2026 Read For Learn
  • Database
    • Oracle
    • SQL
  • algorithm
  • asp.net
  • assembly
  • binary
  • c#
  • Git
  • hex
  • HTML
  • iOS
  • language angnostic
  • math
  • matlab
  • Tips & Trick
  • Tools
  • windows
  • C
  • C++
  • Java
  • javascript
  • Python
  • R
  • Java Script
  • jQuery
  • PHP
  • WordPress