Do no modify the queried_object property, instead use the set methods to modify the query to achieve your desired output. Below example will work. Use only one of the query, page_id(when you are setting a page id) or post__in/p (when you are setting post_id’s array or a post_id respectively).
function replaceQuery( $query ) {
if ( !is_admin() && $query->is_main_query() && $query->is_page ) {
$childQuery = get_post(13);
//to set/query multiple post ids
$query->set( 'post__in', array( $childQuery->ID ) );
//to set/query only a single post id
$query->set( 'p', $childQuery->ID );
//to set/query page id
$query->set( 'page_id', $childQuery->ID );
}
}
add_action( 'pre_get_posts', 'replaceQuery');
Related Posts:
- How to change posts order on Category and Tag archives?
- How to choose between hooking into per_get_posts or into parse_query
- Elementor posts custom query based on tag [closed]
- Using pre_get_posts with WP_Query
- WP_Query orderby post__in remains ineffective in the Loop [closed]
- Changing the meta_query of the main query based on custom query_vars and using pre_get_posts
- Hook/action after WP_Query gets posts to query custom tables for post-related meta
- How to uniquely identify queries?
- Changing Posts Per Page and offset with pre_get_posts
- Want to redirect if search query match exact title of any post
- Overriding The Loop with filter or hook
- Slow SQL_CALC_FOUND_ROWS Query
- “pre_get_posts” firing on every query
- Using is_main_query to select custom post type on certain page
- SQL Statement generated by WP_Query not producing expected results
- Sorting Posts by custom field
- How to pass custom parameter to WP_Query for filtering in pre_get_posts
- Recommended way to drop a pending query (in pre_get_posts)?
- Single page theme that uses pages for the content
- WordPress custom search form with pre_get_posts not work
- How to target the default Recent Posts and Recent Comments widgets with pre_get_posts?
- order by multiple meta keys in pre_get_posts
- How to sort posts in admin by titles with dd.mm.yyyy format?
- Splitting the main query in multiple loops with query_posts and/or pre_get_posts?
- Using pre_get_posts on a specific core/query block
- Best practice custom function, where to echo the variables?
- Searching through different categories on different pages code is not working
- How to display future posts – modified query still yields 404
- Including only current user’s posts in search
- When querying a combination of posts and other meta fields, is there a better solution than directly modifying the WHERE value?
- is_search was called incorrectly
- Formulate a url to show posts with both taxonomy terms
- Offset Page Loops and Pagination
- pre_get_posts order by not working
- Adding a parameter to the default query
- Using WP_Query in “parse_query” or “pre_get_post” in Posts2Posts
- Single meta_query query using OR instead of AND in request’s WHERE statement
- How to do multiple searches (with logical OR) in WP_Query in hook pre_get_posts?
- How to use filter hook “the_posts” with a function that refers to $this?
- How to delete taxonomy term when a wordpress user is removed?
- Store sticky post’s ids in a transient
- How to change main query based on post meta
- new WP_Query to get max price meta value not working
- Display posts from only one post form in custom query and exclude in main query
- Show Sticky Post at the top but do not show again in the loop?
- WP_Query, pre_get_posts and offset
- Complex WP SQL Query
- Using meta_query with multiple keys and compare values
- Can I set my WP_Query to be a Main Query?
- Show scheduled posts in main loop but not in WP_Query?
- Set global $wp_query/$post variable for dynamic page generation
- hide custom post types with specific meta key ON admin backend
- Filtering out child category posts from parent category archive not working
- Order ascending is ignored in meta query?
- Shouldn’t I be able to modify the main query by this filter?
- How Can I Change The Tax Query For The Main Loop For Taxonomy Archives?
- using pre_get_posts for search results not found
- Hide elements outside loop based on query
- How can I override one post and make it display content for another post?
- Woocommerce – exclude only older out-of-stock items
- WP Query – order posts by meta field first and then order the rest
- pre_get_posts – Trying to get property of non-object warning
- Utilising an existing page while using the “s” query parameter
- date_query in pre_get_posts out of memory
- WP_Query – How to get all posts of specific days of week by custom field date?
- Multiple meta_key ordering with pre_get_posts
- Sorting search results with custom dropdown
- Child pages not affected by orderby
- How to apply pre_get_posts to a custom query?
- $wp_query->found_posts not returning correct value
- WP_Query, Paginate by Custom Field
- WP_Query retuning empty array in rest api
- Replace wp_query with wp_user_query
- Block internal search queries with pre_get_posts and regex rules
- Make a products only viewable to a specific user ID in meta_query pre_get_posts
- is_user_logged_in not working from WP-API (wp-json)
- Search Exact on WordPress – Relevannsi Solution Not Working
- Excluding posts from search results page with meta query not working
- pre_user_query vs pre_get_posts
- Can I alter the main loop to ‘orderby’ a custom callback?
- order posts by a secondary query that counts items
- How can I re-query post_type and rewrite the url?
- SEARCH QUERY PLEASE HELP | call_user_func_array() expects parameter 1 to be a valid callback php
- How order by works?
- Woocomerce – Order products by float attribute in archive pages
- Custom Order Current Query: By Meta Key and Category
- Using the same WP_Query for shop and widgets in WooCommerce shop
- Modify query to exclude certain ids and certain parents and its corresponding children
- Adding a Theme Customizer Control for Posts_Per_Page
- wp_query – Modify $query to include duplicate content
- pre_get_posts or $where, which one to use?
- Filter WP_Query output before it is accessed (pre_get_posts)?
- $wp_query when new WP_Query
- Sort posts in dashboard using custom field; also include posts where field isn’t set
- Looking for a way to exclude frontpage and nav menu from query filter
- Avoiding page loop
- Custom post types loop on a page template
- Pre_get_post on CPT archive page
- Search query alteration not working for meta values
- How to put posts with some taxonomy on top of others in `pre_get_posts`