Advanced Custom Fields Query with Different Values of the Same Key

One option is to fetch all of the posts to a single array and filter that array 50 ways. This would only generate the one query: $posts = get_posts(array( ‘posts_per_page’ => -1, ‘post_type’ => ‘school’ )); To filter your array you would do something like this: $this_state = “Texas”; $state_posts = array_filter($posts, function($results) use($this_state) { … Read more

How to fix this insert? Don’t work for me!

Make sure that the value portion of the data parameter’s column=>value pairs must be scalar. If you pass an array (or object) as a value to be inserted you will generate a warning similar to mysql_real_escape_string() expects parameter 1 to be string, array given on line 880 in file /var/www/html/wp-includes/wp-db.php”. Rather then above your code … Read more

Include custom table in query

Working code: <?php global $wpdb; $date = date(“Y-m-d”); $querystr = ” SELECT * FROM wp_posts JOIN wp_ftcalendar_events ON wp_posts.ID = wp_ftcalendar_events.post_parent WHERE wp_posts.post_status=”publish” AND wp_posts.post_type=”post” AND wp_ftcalendar_events.start_datetime >= ‘$date’ ORDER BY wp_ftcalendar_events.start_datetime ASC “; $pageposts = $wpdb->get_results($querystr, OBJECT_K); ?> <?php if ($pageposts): ?> <?php global $post; ?> <?php foreach ($pageposts as $post): ?> <?php setup_postdata($post); … Read more

Run an update query in a function

As David pointed out, wpdb::query() does not allow multiple calls. So yes, it is because of having the “SET @newnum = 0;” before your actual query. This kind of query is simply not possible as the backend prevents that in order to protect against SQL injection attacks. Besides of that, the technique I described in … Read more