There are basically two main types of website - static and dynamic.
A static site is one that is usually written in plain HTML and what is in the code of the page is what is displayed to the user.
A dynamic site is one that is written using a server-side scripting language such as PHP, ASP, JSP, or ColdFusion. In such a site the content is called in by the scripting language from other files or from a database depending on actions taken by the user.
Static sites - advantages
Flexibility is the main advantage of a static site - every page can be different if desired, to match the layout to different content, and the designer is free to put in any special effects that a client may ask for in a unique way on different pages. This allows theming - for instance an author may want a different theme for a different book and associated pages or perhaps for a series of books, in order to match the cover designs or the context of the stories.
Cost is generally lower up-front than a dynamic site.
Static sites - disadvantages
The main problem with any static site appears when you wish to update the content. Unless you are conversant with HTML and the design methods used in the site then you have to go back to the designer to have any content changes made. This may be perfectly ok when a new page is required which needs design input, but if all you want to do is change some text then it can be a nuisance for both client and designer.
The second main problem is scalability. If you wish to sell products on your site and you have a lot of them then you may have to construct individual pages for each one, which can take considerable time, effort and cost.
Costs - there are ongoing costs for updating the content.
Dynamic sites - advantages
The main advantages of dynamic sites are that by connecting them to databases you can easily pull in information in an organised and structured way to create product pages or categories of related products sorted in a variety of different ways depending on how the user wants to view them.
This ability to connect to a database means that you can also create a content management system - an interface which allows the client to input and manage data via a web-based series of administration pages. That content can be text for their pages and images to go along with the text, or items in their product range with categories, specifications, short and long descriptions, images, etc. In both these cases it can be as simple or as complex as the client requires.
There are little or no ongoing costs unless there is a change in the basic design or an extra capability added.
Dynamic sites - disadvantages
The design of a dynamic site is more fixed than a static one because many of the pages are essentially a template into which data and content is poured to create multiple pages of a similar type. So for instance all your product pages will be essentially the same page layout with different data being displayed. While some customisation capability can be built in it is usually quite limited, such a selecting from a set of pre-defined options. Individual layout changes to particular pages are not usually possible.
Costs are higher initially than for a static site, and additional functionality may also cost more, particularly if it's something that wasn't envisaged originally and requires re-writing of the core code or database.