Of course you can set up a WordPress site anyway you like. But specifically here, I am discussing how I do it for information based websites that use content marketing to build traffic.
I know some people prefer to use pages for everything, but that might be based on the misconception that pages are somehow better, less problematic, less dated or less ordered than posts. Not really.
Pages do differ (subtly) to posts in that they are far less flexible. So I don't use them for anything I want a search engine to find and rank. We need all the tools in our toolbox if we're always trying to tweak things to help with SEO. Posts give you very slightly greater opportunity to do so, than pages.
I normally place my main content inside posts. This means they will have a category. Let's assume I am creating a new WordPress website about vegan recipes. The categories I might choose are :
Do you see how I am getting lots of the keyword vegan in there? LOL.
This structure already helps my SEO as it will physically silo all the recipes posts under their categories, and cause the category pages to automatically benefit from plenty of internal linking, which will enable the category pages to rank well.
Although WordPress allows you to place posts in any number of categories, I have a rule that says each post can go in one and only one category. This helps to minimise duplicate content.
Whenever I write a post if it is a main post, then it will probably contain affiliate links or maybe promote something to be sold. If a post contains affiliate links or is promotional, it is not usually the sort of post that people like to share. To mitigate this to some extent, always write at least 5 shorter posts, each say between 500 and 1000 words, that are related to the main post. You can write :
Whatever you create as supporting posts, it's important they promote nothing. Each supporting post should link back to the main post. You can also link out from the supporting post to to one of the other supporting posts. A tag of main can be added to each main post to identify it as a main post. The tag main should be no-indexed however.
I find after building so many blogs, that the pages needed are generally as follows :
I place all landing pages under a lander parent page, legals pages under a legal parent page and thank you pages under a confirmations parent page. The reason I do this is for my sanity as otherwise they become impossible to find when there are inevitable so many pages and they are all mixed together in a list.
While I always have a sitemap.xml file on my site, I also add a blog post page on the home page to help with indexing, where the latest 45 main posts are listed.