Using template_include
(as suggested by Brad Dalton) only changes the page template on the front end, not in the admin when editing a page.
On the other hand, changing the value in the post object before the metabox is rendered, as suggested by czerspalace, works! I added a check to only apply this when $post->page_template
is not set, like this:
function wpse196289_default_page_template() {
global $post;
if ( 'page' == $post->post_type
&& 0 != count( get_page_templates( $post ) )
&& get_option( 'page_for_posts' ) != $post->ID // Not the page for listing posts
&& '' == $post->page_template // Only when page_template is not set
) {
$post->page_template = "page-mytemplate.php";
}
}
add_action('add_meta_boxes', 'wpse196289_default_page_template', 1);
Related Posts:
- Custom templates not showing up in template dropdown
- Get page id by template
- Change page template programmatically ?
- Listing pages which uses specific template [duplicate]
- Hide page visual editor if certain template is selected?
- Creating a template using a specific slug name, for a page with a parent page
- Limit number of pages that use a specific template?
- Hide page visual editor if template is selected – redux
- WP is not using the select custom template.php that its selected for a page
- Is it possible to set a page template on a dynamic home page (articles list)?
- Page template gives ‘Parse error: syntax error’ when used, but no error found!
- more tag in the $post->content when get_pages were used
- Why is custom template not seen as page with is_page()?
- Page with page template not using template in Preview
- Template for child pages / subpages
- How to dynamically save a selected option from page “Templates” selectbox?
- Include a specific page in your template
- Custom page template not working
- How do I create a separate page for each author?
- How do I pass data from page content to the underlying PHP template
- How do i change page template in bulk?
- Load specific page template based on URI
- I have index.php and other files, how do I display other pages?
- is_home() returns TRUE on page template
- Using Pages to handle calls for custom post types
- How to make tag post listing page working?
- Custom page template with entirely different design. Is it possible in?
- How to make my category archive behave like a page
- Page template no longer exists – metaboxes won’t save
- page-name.php doesn’t execute on custom template
- Remove Content edit box from ALL pages (not posts)
- Is it possible to activate page template without manually selecting it in wp-admin?
- Hide page templates without using ‘unset’
- the_content of template page
- Use same page-mypage.php template for several pages
- pre-existing data, and entities
- Rewrite to load homepage for a different url
- Avoid pages losing template association on site re-deploy
- Need to create a custom page on a website
- List child pages within page template
- Using page-something.php as static front page
- Best way to organize data in this scenario
- creating single page with 2 columns while theme is 3 column
- Using index.php as page template
- How does wordpress link page templates to individual pages
- Create custom page to author.php
- Template field missing in page attributes
- Different template parts when on different pages
- Updating page template pragmatically
- WordPress blog posts template bug [closed]
- Adding styles/scripts to specific page
- WordPress form submit to custom page template does not work
- Display grandchild page content on parent page
- How do you assign custom template for Posts page (under Front page displays setting)
- display different pages content on single page
- How to output different content of page on different places in my template
- Avada Theme – Display results from a specific category [closed]
- Multiple pages to show posts
- How to finish this loop?
- Auto-Create Pages from Template Directory
- Loading custom jQuery and HTML in a WordPress page
- different single.php for different page templates
- how bbPress and buddypress add their own page templates to the page template drop down on the page editing screen
- Naming custom page templates
- How can I use Page editor for two separate templates?
- Display random page
- How to read a page’s “Shortcodes” from the Template File?
- if and else statement not working on the iframe php page
- Custom SINGLE page with custom metaboxes and custom template
- I reached halfway through a WordPress tutorial to find out I began wrong for a new comer to WP
- Custom template is not showing up in templates dropdown list after re-naming it
- May I know where to edit the tax rate?
- Add infinite scroll to content splitted post
- Check if wp-login is current page
- How to get current page ID outside the loop?
- Contact Form on WordPress Sites?
- Page returns 404 with POST variables, but not without
- Page template query with WP_Query
- Using pre_get_posts on true pages and static front pages
- Get the content of a specific page (by ID)
- How to get page title with the page ID?
- Show more than 20 items in pages or posts edit dashboard
- Allowing user to edit only certain pages
- Pass PHP variable to javascript
- How to display last 3 posts (recent posts) in a static page?
- How to give paged links custom title?
- How to set post slug when using wp_insert_post();?
- How can I keep the content of my pages version controlled?
- How to load javascript on custom page template?
- How to configure WordPress to handle 75,000 pages?
- How to update page status from publish to draft and draft to publish
- Check if is on child-page of a particular page
- Conditional tag to check if ‘page.php’ is being used?
- Customizing the URLs of WordPress Login and Sign-up Pages?
- How to disable posts and use pages only
- Searching multiple custom post types and pages
- featured image as background image on pages
- Check IF is a “single product page” and Check the “role” for a Redirect
- A check for if is parent page, if has children, if has grandchildren
- How to load JS and CSS only on specific Pages using is_page()?