This question is addition to the following question.
The answers to the linked question say that you have to write THE LOOP inside each php template file, but what is still open is WHY? why is it necessary to write is as part of page.php if this page is not supposed to display any post at all?
another question why when I perform have_posts() inside page.php the return value is 'true'? shouldn't it contain no posts at all in this page?
This question is addition to the following question.
The answers to the linked question say that you have to write THE LOOP inside each php template file, but what is still open is WHY? why is it necessary to write is as part of page.php if this page is not supposed to display any post at all?
another question why when I perform have_posts() inside page.php the return value is 'true'? shouldn't it contain no posts at all in this page?
The wording is (for historical reasons) a bit confusing. Actually Post can mean two things in WordPress:
So there is the Post Type "post" just like there is the Post Type "page".
Here is a link to the Codex which elaborates on that a bit more: https://codex.wordpress/Post_Types