It mostly boils down to configurability for themes. While you are comfortable editing template files not everyone is. So looking at the template hierarchy you can see the following:
When there is a front-page.php
template it kind of ignores any setting in “Settings → Reading”. (It still loads different content, but the template is forced)
But if you want to leave the choice of how the front page should behave/look to the user you can instead have a home.php
which is only used if the user chooses to display posts on the front page. If he chooses to display a page this is respected as well.
I think if you look at the template hierarchy things will clear up.
Related Posts:
- When to use is_home() vs is_front_page()?
- How does WordPress decide what template to use as frontpage
- How do I show sticky posts on a static front page that also contains content?
- Set front page as static page [closed]
- Disable front-page.php template
- Set a static front-page as a landing page programmatically
- Displaying recent post excerpts on static front page
- How to Find the Page the Front Page is Using?
- How to set wp_options in functions.php for removeing the Default Front Page
- is_home and is_frontpage always true
- Theme Development -> Specific Homepage
- What is the best way to build home pages with a lot of sections for distributable themes [closed]
- Confused by the behaviour of “front page” / “home” templates
- static front page ONLY for certain themes?
- is_front_page use in sidebar.php
- 1 post per category on homepage and counting those posts
- 3 x 3 grid of posts on the home page
- What is the advantage of using home.php over index.php for the front page
- What is $post_id? is it a global variable in WordPress?
- Call dynamic_sidebar but include/exclude named widgets?
- Remove settings if theme is deleted?
- Adding customizer styles with wp_add_inline_style
- Best practices – Should I create a child theme vs. customizing a framework theme? (such as HTML5 reset)
- Adding widgets programatically: how to avoid collisions?
- Why max-width:97.5% on content images?
- How do I get a parent theme modification from a child theme?
- Removing the default sidebar from admin panel
- Is there any need to use both wp_reset_postdata and wp_reset_query together?
- how to pull wordpress post comments to a external page
- How to change the customizer´s sidebar width?
- Single Theme folder for Multiple WordPress
- How i can get widgets areas working in customizer?
- WordPress post arrangement using post_class
- Removing non native customizer settings from a child theme
- Using wp_tag_cloud(‘format=array’) to print tag names without links?
- Link to a .po file in a child theme
- Alias to theme folder for local development
- Responsive embed for the video shortcode
- Access theme options in templates
- How to show post from category select
- Can’t work out why widget contents disappear from admin
- How to create a multiple choice radio group for a single theme option
- Edit footer via customizer
- How to: JQuery multiple wordpress media uploader buttons in the same options page?
- Move default page templates to sub directory
- Migrated WordPress site renders Chinese
- How to modify default controls in WordPress theme customizer
- Why am I getting a white screen without a slash at the end of the address?
- Load sidebar template just once to prevent multiple animations
- How to use custom function in posts and pages templates
- How to Have a Pure HTML Sub Directory In WP Site
- What are the critical theme files when building a custom theme?
- Linking beetween pages in wordpress
- Having issue with WordPress wp_enqueue_style
- search.php file not pointing where it should
- How do I get standard posts to open up in their own template when using get_template_part()?
- Loading issue on Chrome for my WordPress theme
- searchform.php doesn’t work properly
- Adding Bootstrap to WordPress TwentySixteen Theme
- What are the allowable Tags values in a theme file header?
- Following/tracing page construction through theme PHP
- my single.php is mixup on some post for no reason
- How to remove/replace current page template?
- altering search terms
- Creating a theme update notification api [duplicate]
- Custom menu: Link names
- Post thumbnails Retrieve Url
- Stylesheet is not loading on firefox and IE!
- Inconsistent bloginfo information
- How to custom category template based on category?
- add_action for admin_init hook with a parameter
- get_the_terms() returning wrong results inside of loop
- custom post type query causing errors
- Category-specific loop not working
- Is it possible for the enqueue styles function to mess up my CSS?
- How to diagnose wp-env environment problem
- how can i remove js file from my footer in wordpress
- WordPress Admin bar missing from custom theme
- How to dynamically set a background image with the customizer without putting the css as an inline-style
- SIte logo is not displaying
- wordpress custom category post shortcode
- Unable to delete option
- overlay post title over post’s featured image
- how to add jquery to wordpress
- Hook in parent theme Menu function
- How to add custom nav_menu_css_class to certain menu only?
- Need help with adding custom menu content
- Import from HubSpot COS into WordPress 4?
- child comments not displaying as nested
- Simple loop with shortcode rendering problem
- Theme automatically inserting “more” tag on every post
- How get the 10 most viewed pages (not post)
- WordPress widgets manager option for emulating theme layout
- Conditional tags issue for multiple is_page() conditions in sidebar.php
- have_posts() return false on single post
- Im using a right approach to use this class inside WordPress theme?
- Is using display: none the proper way to hide elements in a theme?
- Twenty sixteen – full height
- Correct way to make a custom block theme responsive
- Is there any halfway decent documentation on the wp.media JS class?