To order a web page, the first thing to know is what needs are there and what is the computer level of the user that will administer the contents of the web. The types of web projects I usually do, are CMS and custom programming.
The CMS are predefined web solutions, the CMS that I install the most is WordPress. In this type of projects, most of the design, layout and programming is done, it is provided by the CMS together with its templates and plugins. To adapt it to what the client requests, it would be necessary to retouch the template, install the appropriate plugins, and make programming modifications if required. With that, once the contents are filled, the project would be finished. This type of project is the most economical since a large part of the work saves you since it is provided by the CMS. It allows to create very colorful web sites with many utilities in a very fast and economic way.
Disadvantages of CMS: The administration panel is not as intuitive as it would be in a custom programming, so it should be used by someone with computer skills at the user level and who has some experience in using that CMS. In addition, in the administration panel almost everything “is open”, so it is more likely to screw up when updating and delete or modify things that should not. In CMS you can not do everything, both at the design and programming level; Being predefined solutions, its customization has a limit, so that something that may be required in a project can not be done and it would have to go to custom programming. CMS are also more prone to hacking, since their source code is in the public domain and hackers automate “robots” to hack any vulnerability they find. This forces to have the CMS, template and plugins as up-to-date as possible.
It is more expensive than a CMS since it is almost part of zero, and everything has to be programmed. Obviously not part of the whole of zero, since you always have your libraries, frameworks or other utilities with which to start. Custom programming allows us to do everything to the client’s taste, without any limit; The customization is total both at the design and programming level. In addition, the administration panel is also made to measure, so that the client will have just what he wants to manage the contents. I usually put my own administration panel