get_posts
doesn’t modify global variables & is safe to use anywhere but setup_postdata
does modify the global variables.
Use the function wp_reset_postdata()
just after the foreach loop. It reverses the changes made by setup_postdata
. The thing it does is basically same as you did in your example, you just won’t need to worry about the temporary variable.
Related Posts:
- When should you use WP_Query vs query_posts() vs get_posts()?
- When to use WP_query(), query_posts() and pre_get_posts
- WP_Query vs get_posts
- meta_query: using BETWEEN with floats and/or casting to DECIMAL
- Get posts from Network (Multisite)
- Using get_posts vs. WP_Query
- Delete all posts from WordPress except latest X posts
- Sanitation needed for WP_Query or get_posts calls?
- Differences Between WP_Query() and get_posts() for Querying Posts?
- Get Recent Posts by Date in Multisite
- get_posts with multiple categories
- Use of caller_ get_ posts
- How-to exclude terms from the main query the most performant way?
- Query all posts where meta value is empty
- Get_post() with meta_key when compare is a date
- get_posts not finding argument: post_name
- Meta Query with date and time on the same Day before given time
- Get posts with condition on comment meta value
- Use post__in and post__not_in together?
- What should I use, get_posts or wp_query for less CPU load?
- Different Results with query(‘s=computer’) vs get_posts(‘s=computer’)?
- How to get post from all Blog Multisite to the Main Site?
- Get all posts without tags
- get_posts() seemingly ignoring post_type
- Can not switch the queried post in pre_get_posts hook
- How to find out what “Blog pages show at most” is set to [duplicate]
- Count posts returned by get_posts in external PHP script
- WP_query category__in not working, only pulls from first category
- SELECT * FROM $wpdb->posts WHERE ID > 160
- Adding multiple post queries with parent and children to page – Best Way
- How do you Query posts with nothing in common?
- WP_Query, tax_query and term_meta: How to?
- get_posts – get all posts by array of author
- Create a sitemap without a plugin – get parent pages only?
- Creating a custom search for a specific post type
- get_posts – find out if querystring was crap and fallback is used
- Creating query to show which editor (classic or block) was last used to edit a post/page
- get_posts() not working with multiple statuses
- Ajax Pagination on Ajax filter
- Return only post(s) which have post_excerpt
- Help with WP_Query – Too many mySQL queries
- WP_Query() and get_posts() can’t handle over a thousand posts?
- WordPress Loop and $post
- Conflict with get_posts and the_content
- WP_Query post_parent parameter always returns children of current page
- get_post_meta slowing down my page load (in a plugin)
- How to show more post at a given category?
- How to count posts with specific arguments
- Check return value of get_posts
- Get all posts which was posted on X Days WordPress
- Query post with meta value in set of values
- get_posts output always same post
- Use WP_Query or query_posts() or get_posts() for optimizing a site?
- get_posts always returning the same number of posts = 5
- Specify strict ‘order by’ in WordPress query
- complex get_posts() query to select child pages
- How I can change the condition or compare operator for WP_Query in pre_get_posts
- Check if searched number is within the post meta value
- Using get_posts to get posts based on a checkbox value with Advanced Custom Fields
- Posts query according to meta box date
- WP_User_Query and user posts
- How to get posts by category and by choosing a taxonomy term?
- Function using get_posts() with tax_query not working when called from functions.php
- get_posts query matches too many results
- Search for pages with permalink
- How to query for a page, get data, then query for child pages of that page
- Execute PHP function inside the admin area
- Why always one post missing
- Prioritising and Ordering Posts By Category Name Using A Custom Loop
- Why my query is not “Main_query”?
- Facing problem with tax_query results
- get_posts query is taking about 40 seconds to execute
- Populate select list with meta values from all posts of a Custom Post Type
- Form checkbox value going to dynamic URL
- get_posts return only first result
- How to get meta key list efficiently?
- how to get wp_query posts only first letter of alphabet A?
- get_posts query caching?
- Get posts with any value in attribute
- Slow query when selecting with large meta query or post__in
- I cannot get tax_query in get_posts() to work with custom taxonomy
- Getting the last X posts, but in ascending order of time
- how to avoid reloading/refresh the page when displaying the post of wp_list_categories
- Ordering Posts by parent category, name ascending
- Use not custom fields in get_posts() meta_query?
- Mathematical operations on custom field values? (updated)
- Both WP_Query and get_posts returning 1 post
- get_posts works but new wp_query doesn’t
- Why WP_Query in functions.php is not working when get_posts works?
- Retrieve posts in custom post type and specific taxonomies
- Query specific number of posts for each post type in specific order
- get_posts shows current post, not defined posts with args
- Weird query with get_posts and WP_Query
- orderby and order filter in get_posts or WP_query function in wordpress not working
- Query custom post types by meta field in a term from custom taxonomy
- How to replecate the _fields parameter in custom REST api endpoint
- How to retrieve _embed (etc) fields in get_posts custom query?
- WordPress extremely slow when using get_posts with multiple meta_query relations
- Sort by multiple columns using get_posts
- How to cache wordpress get_posts query using transients?