I'm no big programmer, but i consider myself to have a fair understanding of how things work. I roughly spent 10-12 years on the topic internet as a hobby. On average, you could say that besides Job and private life, I spent 45-60 minutes a day programming in PHP or HTML). And there isn't one day I wouldn't have learning something.
I think your optimal starting point depends a little on what you want to do. Things that always help with web based applications (if your interest goes beyond the regular sheer use of the product):
1) Learn how to write valid HTML or at least be able to read HTML code. Make some basic static web sites to get going.
2) Once you know that... approach style sheets. Learn to understand what CSS can do and what not. Learn to seperate code and style.
3) Additionally, get a good book on the subject. This is difficult as what works for me doesn't have to work for you. I like straight forward books that just tell me what the commands and parameters are alongside some basic code to follow. It is not for no reason that the "... for dummies" books are so popular

Ask people you know that know about PHP what book they could recommend. If you know a good book store: go there and ask for a good book for beginners. They might know the one or other pearl.
Get a comprehensive book (I recommend the real thick ones with 500-700 pages that cost around 50-100$). It can be much quicker to find an answer in that than hours of Google. I have my PHP book for roughly 8 years or so... it is is not that up to date but still great to look up basics. As I mostly have German books, I can not recommend any English titles (O'Reilly is good though). No matter how eager you are, get a book in your mother tongue! YOu don't need 5 books. One good book will do. You do not have to understand everything... one day the book will fit you (I am still waiting for it

)
4) Start learning PHP (the language used for this CMS). Start with some brief and simple "hello world" examples. Learn how to calculate, if statements, how to accept parameters and how to store and read data from files... then database.
5) Write an app for yourself... I know there are already 5 billion "maintain your LP or DVD collection", "address book" or "refrigerator inventory" apps out there, but writing such a basic app on your own will bring you to a lot of problems which you will begin to understand once you are willing to spend some nights on the net looking for answers.
6) And for me, the probably most important factor is: Get a mentor!
I started with PASCAL in School and first touched HTML on 386 computers in a project week (ok, I startet with BASIC on a C64... but that doesn't really count

). However, throughout the time I had good "programming mentors" being friends and colleagues, teachers, online-friends, superiors at work...
They can help you to bring your skills to the next level. Sometimes it is just one or two commands that you don't know yet, someone helps to improve your code and then you understand more and there you go. Talk to others who also program about the programming problems you have, what you tried, where you got and what they did (pretty much like in this forum). Depending on your age, you might want to join your schools computer club, find groups in community/church (even if you are an atheist

)...
Talking about the problems and the underlying logic is essential to really understand the whole matter - I think.
Hehe... that's the long path. It depends on how fast you are at getting new stuff and all that, so you might even do all this in a year or 10 (like me).
I would say for an average person spending average hobby time it'll take 3-4 years to understand enough to write his own HTML templates with some basic CSS and probably also basic and solid PHP. At least enough to enjoy a lot of the potential of CMSMS.
Enjoy the matter, don't overdo it... be curious. I do not think that there is a highway to learn all this (especially all the tiny bits you'll come across your way). Solve a problem a day. Brain surgery may help, but I heard there is some risk involved.
I do not use this knowledge in my everyday life, but it revealed that in todays business world - knowing some basic programming can vastly improve your judgment on technological projects. So again, depending on your age and what you want to do in the future - it is worth the effort.
Today I'm 26 and work as an consultant on very interesting Internet projects - I wouldn't be able to do this without such a history.
Do you want the
red or the
blue pill?
Best
Nils