How to Create a Theme

If you really want to have full control over your Wordpress build, you have the option to create your own theme. This is not a simple process, so before you proceed, you will need a basic understanding of PHP, HTML, and CSS, as well as the mechnics of the CMS software. For Wordpress, you should head over to the Wordpress Codex documentation on Theme Development, which will give you the resources you need to begin designing your site. Because this is an in-depth activity, I won't go over the steps here. For a guided tutorial, take advantage of Emory's http://www.lynda.com/lynda.com subscription (you will need to find one of the computers in ECDS that is licensed for lynda.com).

Another option is to create a child theme, which involves importing a theme you'd like to edit into a new folder within wp-content/themes/ within your Wordpress installation. All you really need to create a child theme is a style.css file and a functions.php file. These documents will override the imported parent theme. Go to the Wordpress Codex's page on child themes for more information.

For Weebly, creating a custom theme involves going to the Design tab and selecting “Edit HTML/CSS.” Here you are presented with friendly CSS and HTML files that you can edit directly. You can change the name of your theme in the upper left-hand corner of the page and save it in the upper-right. Check out the lynda.com tutorials on CSS and HTML to figure out how the languages work. Also, W3C has definitive resources, standards, and sandboxes (environments where you can try out code in real time).

More generally, for theme creation, you should layout your website beforehand in software such as Adobe Photoshop, where each portion of your site will be organized into groups of layers. The slice tool, which is in the same button as the cropping tool, allows you to select different regions as “slices,” which will be save as separate png (or jpeg) images when you “Save for web and devices…” If you are making just an HTML page, Photoshop will even generate the HTML layout for you, but translating this into a Wordpress theme is an ordeal. That said, converting this HTML file into a theme is unfortunately not a one-click conversion, so if you intend to design a custom theme, you should begin by making sure you are totally comfortable in HTML and willing to devote several hours (or weeks) to crafting code your CMS can understand.