Based on your comment:
1) blog.php What is the file name of your blog custom page template? 2) home.php What is the file name of your front page custom page template?
The answer is simple:
The home.php
file name is a reserved file name in the WordPress template hierarchy, and is used by the template hierarchy to render the blog posts index.
So, WordPress is doing exactly what you’ve told it to do. 🙂
Simple solution:
- Rename
home.php
(your Front Page template) asfront-page.php
- Rename
blog.php
(your blog posts index template) ashome.php
Note: you’ll have no need to select either template explicitly, since WordPress will use both automatically. (You need only configure Settings -> Reading
properly, which you’ve already done.) So, you can also:
- Remove the
Template:
PHP header tag from both files.