Is good knowledge of PHP needed to make an installable template for CMS like Wordpress, Joomla, Drupal?
Or is good knowledge of XHTML and CSS enough?
Is good knowledge of PHP needed to make an installable template for CMS like Wordpress, Joomla, Drupal?
Or is good knowledge of XHTML and CSS enough?
or good knowledge of XHTML CSS and is enough?
No or you must have that knowledge to customize or create templates for the mentioned things.
Is good knowledge must needed to make installable template ( PSD 2 installable themes) for PHP based CMS like Wordpress, Joomla, Drupal?
You got to go through each of these frameworks and learn how to customize their templates because each of them has different way to customize template. You should learn this for each of them.
From my experience - I have a lot with Wordpress, and some with Joomla - I would recommend at least some PHP knowledge and understanding of the underlying code base. For visual styling, HTML/CSS knowledge is enough as long as you work "around" the PHP, but you will be extremely limited when asked to change fundamental characteristics of the template, or implement new functions.
It depends on what you want to offer really. If you are content with offering stylistic customizations only, you may be fine with HTML, CSS and a bit of PHP. The basic PHP functions used in the templates are easy to understand.
But functional customizations, like implementing custom behaviour for certain posts, tags, categories, comments etc., require good knowledge in PHP. If you want to increase your market value, getting into the Wordpress Codex and either Joomla or Drupal is certainly a good idea.
On a side note, I personally have come to dislike Wordpress and its API due to lots of bloat and low code quality. I looked for a more minimalistic blogging platform recently (SO question here). The answer I accepted, Habari, is a marvellously flexible and, even though it has some rough edges here and there and the leading "0" in the version number sometimes shows, elegant platform. It takes some understanding of PHP 5 to get into its templating capabilities, but once you get your head around it, it is unbeatably flexible. It may not be for you, as I know you are targeting popular platforms to get work (which is perfectly fine.) but to have mentioned it.
Well, I suppose you don't really need to know PHP to create a new theme/template : you'll need to know HTML and CSS pretty well, of course -- but for simple templates, there should be no need for PHP.
From what I've heard, there even exist some software to generate themes, whithout having to write HTML/CSS yourself -- maybe the result will be a bit "basic", but it could be OK for many small websites with no specific need.
After that, knowing PHP might/will allow you to enhance your template : it'll allow you to put some additionnal conditions in place, to do some work on the data to present it differently, ...
In the end, I would say it all depends on your needs... But knowing at least a bit of PHP will definitly not hurt ;-)
For instance, it will at least allow you to understand how some things have been done in themes you download -- and it'll make easier for you to adapt them to your needs.
(Note : I don't know about wordpress nor Joomla, but have worked with Drupal for quite some time)
I've been doing websites for about 7 years. (Rather, I started learning website technologies 7 years ago.) I just started Wordpress modding/theming a few weeks ago.
The simple answer is no, PHP isn't strictly required, but:
The default Wordpress theme (called "Kubrick") includes quite a bit of PHP and will be confusing if you do not know what it is talking about.
Any Wordpress template is actually a combination of CSS and multiple PHP files. It is important to understand the flow of the actual Wordpress CMS.
About learning PHP:
I learned HTML/CSS by starting with a graphical tool at then-called freewebs.com, now webs.com. First I googled the <a> tag and eventually did the same for others. At least familiarize yourself with the basics of PHP syntax and logic control flow. The Wordpress APIs are named and documented in such a way that you should be able to keep up with the default theme. Once you've practiced a bit, you can try learning a few more methods every day or at your own pace, until you know the language.
About learning Wordpress:
If you're rolling your own Wordpress theme, I've done a post on my blog with a few tips for getting started. (I'd love feedback.) Feel free to check it out, but bear in mind that I don't claim to be an expert - I'm just sharing my experiences.
Also, Google is your friend, but be warned that many of the Wordpress Theming tutorials are either confusing, incomplete (such as mine), or somewhat dated.
On a final note:
Honestly, I don't yet know about Joomla or Drupal. (I should really learn them.) I would guess that each CMS is different (Hence the qualities and deficiencies that make each one invariably unique.)
Good luck and have fun!