Welcome to the Zend Framework Blog application tutorial series. I’m writing this series because for one I enjoy writing but also as hopefully a help to the open source community. I’ve taken much from the open source community over the years but besides a few bug patches and some help on documentation I haven’t really given back much. So this is an attempt to do that as well as to teach somebody step by step from the beginning how to create an application with the Zend Framework.
I am not going to try and compete with any of the big blog applications currently available such as WordPress. I am doing this because I like to tinker and would like to run a blog that I created myself. Before anybody gets all excited, I know there is currently already a series of tutorials by Padraic Brady. It is one of the first tutorials I read when starting to learn ZF and it is definitely worth reading. ZF has undergone some changes since the tutorials were written and I don’t particularly care for the implementation of the model layer.
Another reason for reinventing this particular wheel is that it’s an easy application for people to think about. Almost everybody in the current digital age knows what a blog is and how it operates. If you’re reading this I’m assuming you know that you’re reading a blog. You can also understand how to model a blog because it is a simple model. I will be going into model design in this series even though my design will be overkill. A blog application could be developed with an extremely basic model layer but if you spend a little time to design a better model it will help down the road when it’s time to design models for complex applications. You can use all these steps in that situation as well.
What We Want From the Application
Let’s define a few use cases for this application:
- Visitors can view blog posts and pages.
- Author authentication.
- Administrator authentication.
- Authors can create/edit/delete posts.
- Authors can create/edit/delete categories.
- Authors can create/edit/delete tags.
- Authors can create/edite/delete pages.
- Administrators can create/edit/delete authors.
- Visitors can leave comments on posts.
- Publish posts as RSS.
- Creating SEO friendly permalinks.
Required Knowledge
This list of use cases may grow yet. That is the original list of features I came up with. Now onto what you need to already know before starting these tutorials. For starters I’m not going to teach you programming. There is already thousands of sites that can do that for you. I’m also not planning on teaching you how to program PHP. In fact, I expect you to be able to program in the object-oriented (OO) paradigm. If you have no OO experience please do some research on this before starting the tutorials. You should also have some RDBMS experience such as MySql. I will be using MySql in these tutorials and you should have a basic knowledge of this as well as basic SQL knowledge. You should also have access to an Apache server, hopefully installed locally on your computer. Below is the short list of things you need to know.
- Proficient in object-oriented PHP programming
- Some SQL knowledge
- Know how RDBMS’ work (MySql is the one we’ll be using)
- Have access to an Apache server with PHP and MySql locally
If you don’t know how to setup an Apache server with the required components I will publish a post in few days with links on how to get it working in a Windows, Mac, or Linux environment. If you have a host that supports all of this you could use that as well but it is much easier to do this on your own setup for development.
To prepare you early, the first few posts will contain little to no code. They will be laying the groundwork for the application and cover some very necessary topics. The schedule I’m hoping to keep to is one big post a week on Mondays. If I get too busy with other things they may be late but I’ll have posts if that happens. The first few posts might not be a week apart but we’ll see.
There is two resources that you will use a lot when using the Zend Framework. The Programmer’s Reference Guide and the API Documentation will become your best friends as you start learning ZF. So my homework for you is to get familiar with the documentation.
No related posts.
Related posts brought to you by Yet Another Related Posts Plugin.
