In my introductory WordPress course, in first video on WordPress security tweaks (the third video of the third chapter — it's one you need to have bought the course to see), there is some sample Apache configuration shown which is not included in the course files. This was an oversight on my part; we tried to provide everything you would need to save re-typing errors, and this one slipped through the cracks.


I gave a presentation on child themes in WordPress tonight at the SoCal WordPress meetup, and it seemed to go well. Except for one thing: I left Screenflow in pause the whole time.

sad trombone

I promised to record this presentation, and I'm not going to let my incompetence get in the way of a promise. So here it is, re-recorded at home.


I recently worked on the WordPress website of a friend who was having issues with jPlayer not playing the music. We had recently moved her gigs calendar over to GigPress from some other, lesser event manager, and she thought maybe that migration had broken the music player. I didn't build her site initially, but I was pretty sure GigPress didn't have anything to do with it. It seems to be a plugin of pretty high quality, and a good citizen in the WordPress ecosystem.


In Uploading WordPress Files from my introductory WordPress course, I showed you how to upload files using a file transfer application. There's one thing I forgot to mention explicitly: files that start with a dot might not be visible (by default).


In Running the Installer from my introductory WordPress course, I don't talk about situations you can get into where the installer won't run. There potentially many, and they can vary a lot with the different ways people can host a website nowadays, but today I want to take a look at one specific error:


Introducing WordPress - Learn By Video cover Late in 2011, I got involved with the fine video training company video2brain. They're based in Austria and offer a lot of software training, especially with Adobe products, but also WordPress, Joomla, and other goodies too.


Most of the time when I build a website and use a content management system, I use Drupal. I recently finished a site that had basic needs, and decided to give WordPress a go. As I was going through it, I had questions about how to do certain things, and I'm going to post all the answers here.

  1. If there are javascript or other auxiliary files in the theme, and you want to link to them, use bloginfo() function, like this:

    <script src="<?php bloginfo('stylesheet_directory'); ?>/jquery.js"></script>

  2. If you want a page to look different than the other ones, or if there's some code that needs to appear on a particular page that can't be edited by regular users in the WordPress UI, you can make a special template for it. First, start the template with a comment link this one:

    <?php /* Template Name: A Special Page */ ?>

    Then when you create the page, there will be a Page Template selector in the right sidebar. Choose the template you created, and you're in business. I used this to set up a PayPal form and a bit of Javascript on a couple pages.

  3. In your template files, you can check whether you're the home page with the is_home() function, which returns true if you're on the home page (duh).

  4. The WordPress template system has many file names that are magical and recognized for certain purposes, and which can be called by certain functions. Here are a few of them. The complete list is on the WordPress Codex:

    • header.php - included in other templates with get_header()
    • footer.php - included with get_footer()
    • sidebar.php - included with get_sidebar()
    • style.css - the main stylesheet, but also contains the metadata for your template
    • single.php - used for single posts
    • page.php - used for single pages
    • archive.php - If it exists, this is used for anything that's browsed and isn't a single post (date archives, category archives, etc). Otherwise, index.php is used.
    • comments.php - included with comments_template()
  5. To include different selections of posts from the database, use the query_posts() function. For example, you can pull two posts from one category and then the five most recent posts from the entire pool of posts, and display them in different parts of the page.

  6. The WordPress Codex is a large and generally helpful resource. While developing a theme for WordPress, I spend a lot of time with the Template Tags page.

WordPress is very capable for building a complete website, or for just bolting on some quick page editing to an old school, no CMS, website. I like that WordPress feels relatively small and fast compared to Drupal. I do prefer Drupal for general content management and development for websites where blogging is not the major focus, but it's nice to have both tools available.


Subscribe to RSS - WordPress