Instructions
The Structure WordPress theme has quite a few features, and I’m assuming you’re trying to figure them out. That’s why you’re reading this page. I’ve tried to lay everything out in an organized manner.
Check out the Structure theme forum for questions that aren’t answered here!
Please read this in full before asking questions. Also, refer all your questions to the theme’s download page. I don’t answer theme-support questions by email. I simply delete them.
Use this list to quickly find what you’re looking for:
- Before using the Structure theme
- Installing the theme
- Theme options
- Widgets
- Adding videos
- Feature articles
- Post thumbnails
- Single post images
- Recent posts block
- Aligning images and other elements
- Supported plugins
- Change Log
- Like this theme?
- Credits
- License
Before using the Structure theme
Before you decide to use this theme, you should know that this takes a little bit of extra work because of adding custom fields and/or optional excerpts. It’s not hard once you learn how to do it, but if you don’t want to learn, that’s okay too. Of course, you can use this theme without custom fields or optional exerpts, but the beauty of it will be lost.
This theme is WordPress 2.3-compatible and up. You can change the feature article thing below to make it compatible with 2.1+.
Please direct all questions to the theme’s page. I will not answer questions through my contact page or email.
This is in no way a complete readme file. There’s so much you can do with this theme as far as customization goes that it would take me forever to write the entire thing. I’ll try to continously update it and make it better.
Before continuing, you might need to do some light reading:
- Read the using custom fields guide from the WordPress Codex.
- Read my tutorial series on using custom fields.
- Learn how to use image and file attachments.
Installation
- Unzip the downloaded file. You’ll get a folder named “structure.”
- Upload the “structure” folder to your “themes” folder
- Login into WordPress admin panel
- Click on the “Presentation” tab
- Click on the “structure” theme screenshot or title
- Then just take a look at your blog and hit refresh to see the new theme..
I suggest downloading the latest version of WordPress at WordPress
Theme Options
The theme options page allows you to easily set some of your theme’s options.
This theme comes packaged with three different home pages styles, “Default,” “Excerpts,” and “Full Posts” and a category tabs section that displays two posts from the categories of your choice. The theme options page helps you display this easily.
In your WordPress Dashboard, under the “Presentation” tab, click “Structure Options.” This will take you to a page that will allow you to customize a few things.
- Theme Style
Choose either “Default,” “Excerpts,” or “Full Posts” to control the layout of the home page. - Display Feature Article?
Select “Yes” or “No” to display a feature article on “home.php.” - Feed URL
Enter your feed URL for the feed section on the front page (defaults to blog’s normal RSS feed). - Feed by Email URL
Enter your feed’s email URL (defaults to blog’s normal RSS feed). - Flickr URL
Enter the URL to your Flickr photostream if you’re using the FlickrRSS plugin (defaults to http://flickr.com). This has nothing to do with the output of the plugin. - Display Category Tabs?
Select “Yes” or “No” to display your category tabs section on “home.php.” - Category 1-8
Input your category slug (probably the same as your category name) for each category you want to display. Note: you don’t have to use every category, and I suggest only using as many that will fit on the page properly (you’ll have to test how this looks on your page).
Read farther down the page for specific information on how to manually input this information.
Widgets
Version 1.1 updates the use of widgets with this theme by allowing you to move specific blocks included with the theme in your widget panel.
I’ve created widgets for each previous content blocks in Version 1.0 (ads.php, ads2.php, tags.php, flickr.php, custom-block.php, video.php, and recent.php).
You have to option to put widgets on the left and right content blocks below the category tabs on “home.php” and your sidebar.
I’ve created several widgets that are specific to this theme that you can move around. You’ll notice them by their name prefix of “Structure.” For example, the video widget is named “Structure Video.”
If you want to edit any of the widgets, you’ll have to open the corresponding “.php” file in your theme directory.
I suggest using any “Structure” widget for your needs first because they were designed for this theme specifically.
The default “FlickrRSS Widget” doesn’t work well with the theme, so I created the new widget “Structure Flickr.” Of course, you’ll need the Flickr RSS plugin for that to work anyway ( Flickr RSS).
Note that “tabs.php” (the Sidebar Tabs) is not widgetized. If you want to edit their content or remove them, you’ll have to do so through the file “sidebar.php.”
Adding Videos
With this theme, you can easily add videos from different video sites. I’ve tested it with YouTube, Google Video, and MetaCafe. This is done by creating a video post. I’ve also written a post on how to add videos to your WordPress sidebar, which might come in handy if you hit a snag. Adding videos is easy if you’ve used custom fields before.
To add a video from YouTube, Google, or Metacafe:
- Find the video that you want and grab the embed code.
- YouTube example: Here’s an example video I have on YouTube.

The embed code is:
<object width="425" height="355">
<param name="movie" value="http://www.youtube.com/v/FE_XpRmtcJw&rel=1"></param>
<param name="wmode" value="transparent"></param>
<embed src="http://www.youtube.com/v/FE_XpRmtcJw&rel=1" type="application/x-shockwave-flash" wmode="transparent" width="425" height="355">
</embed>
</object<
We want to strip that down to the simplest thing we can get it to — the URL
http://www.youtube.com/v/FE_XpRmtcJw&rel=1
Now, remove the “&rel=1” from the end because we don’t need that. Your URL should now look like:
http://www.youtube.com/v/FE_XpRmtcJw
Create a custom field Key named “Video” (it must be capitalized - case-sensitive). In the Value field, add the URL http://www.youtube.com/v/FE_XpRmtcJw.

Now, you can write your post, but it has to be in a Category named “Video.” Your latest video will now show up in the sidebar.
Feature article on the home page
This theme has a feature article that is always listed first on the home page.
- You need to create a tag named “features” or open “home.php” and change the features tag to whatever you want to name it.
- Add the tag “features” to whatever post you want as your feature article.
You can also add a feature image to go along with your article on the front page.
- You need to add an image in the custom fields box.
- Create a Key named “Feature Image.”
- Give it a Value of the URL to your image.
- Optional: Create a Key named “Feature Alt” and give it a Value of “the alt text you want.” If you don’t, the alt text will default to the the post title.
Feature image size is scaled down to 300px by 175px, so it would be best to give your images these dimensions for maximum compatibility and quality. You can change this by opening “sytle.css” and changing the width and height values under “#home .feature img.”
If you would rather put your posts in a featured category, then you’ll have to modify the code a bit (You must do this for WordPress version prior to 2.3).
Create a category called features. Open “features.php” and change:
$my_query = new WP_Query('tag=features&showposts=1');
To this:
$my_query = new WP_Query('category_name=features&showposts=1');
Post thumbnail images
You can add thumbnail images with each post. These show up on each single post page, category and archive pages, the recent block, and in posts using the “Default” and “Full Posts” options.
- Create a custom field Key named “Thumbnail” and give it a Value of the URL of your image just like the feature image.
- Optional: create a Key named “Thumbnail Alt” and give it a Value of the alt text you want displayed (defaults to post title).
- Thumbnails are scaled down to 75px by 75px. I suggest making your images this size before uploading for the best quality.
Single post images with custom fields
To add an image (besides the thumbnail or feature image) to your single post page follow these instructions. If you don’t want to display a specific image, but have created a Thumbnail or Feature Image, the Thumbnail or Feature Image will be displayed.
- Create a custom field Key named “Image” and give it a Value of the URL of your image.
- Optional: Create a Key named “Image Alt” and give it a Value of the alt text you want displayed.
- Optional: Create a Key named “Image Class” and give it a Value of any CSS class you want to use.
Recent posts block
In “recent.php” there is an option to make smaller excerpts by creating a Key named “Excerpt” and giving it a Value of a shorter excerpt than normal. This way, it won’t conflict with your normal excerpts on pages other than “home.php.”
This is just a small aesthetic thing, but could be a feature that makes your theme look better if you use the “recent.php” block. You can control where this block is set on the page through widgets.
Aligning images and other elements
There are three CSS classes that you can use to align things: “left,” “right,” and “center.” For example, if you wanted to align your image to the left of the page, follow this example:
<img class="left" src="image.gif" alt="Sample image" />
You can clear floats, such as left-aligned images, with the CSS class “clear.”
Supported plugins
I’ve built the plugin functions for these plugins into the theme.
Change Log
This section explains the changes made to the theme with each version update. You might be able to make some of these changes without completely updating your theme or by only changing a few files.
Version 1.1.5
- In “style.css,” I fixed a couple of errors in the CSS (see “new-style-rules.css”).
- Deleted “sidebar-single.php” and “sidebar-archive.php” because they weren’t being used anyway. Their functionality was already added to “sidebar.php.” This makes no changes for previous version users.
- Added a new style rule (see “new-style-rules.css”) so images in the Full Posts layout option won’t resize.
- Added the class “full-posts” to the main div in “full-posts.php” at the top of the file.
<div class="excerpts full-posts"> - Added a new style rule for list items on the home page (see “new-style-rules.css”). This is really only relevant to those using the “Full Posts” layout.
- Below
<body>in “header.php,” I added this (for version checks in the theme-support process):
<?php // Structure Version Check
echo '<!-- Structure theme: Version 1.1.5 -->'; ?> - In “video.php,” I changed the ID of the video object, so it would not conflict with the ID of the video in the sidebar when on a single post page (only relevant if user is using the video block in the sidebar).
Changed id="video" to id="video-block-" (see code below).
// Changes made to "video.php"
<object type="application/x-shockwave-flash" data="<?php echo $video[0]; ?>" style="width: 290px; height: 242px; border: none; padding: 0; margin: 0;" id="video-block-<?php echo $i; ?>">
Updated for multiple-paged WordPress Pages. The previous tag was depreciated. In “page.php,” replace this line (thanks to WordPress Modder for pointing this out):
<?php link_pages('<p><strong>Pages:</strong> ', '</p>', 'number'); ?>
With this:
<?php wp_link_pages('before=<p><strong>Pages:</strong>&after=</p>'); ?>
Added the ability to have multiple-paged posts. Below the call for the_content() in “single.php,” I added this line:
<?php wp_link_pages('before=<p><strong>Pages:</strong>&after=</p>'); ?>
See wp_link_pages() for details on how to create multiple-paged posts and pages.
Version 1.1.4
- In “header.php,” I changed the variable for the feed email to
$feed_emailinstead of$feed.
Version 1.1.3
- Placed the
<p>outside ofthe_tagsfuction in “single.php.” - Deleted the extra “s” on “1 Comments” in “features.php.”
- Deleted the extra “l” in the title of one of the feed links in “header.php.”
- Added a “Full Posts” layout option
Changes were made to “functions.php” and “home.php.”
A new file called “full-posts.php” was added. - Several CSS changes were made (see “new-style-rules.css”) for the “Full Posts” style option and a few minor bugs.
- Updated the license details so others can more easily understand its details.
- Fixed the “Response to” to make it display correctly “comments.php.”
Version 1.1.2
- Fixed (I hope) “recent.php” to query correctly in all instances of its use.
- Fixed a style error with the left and right content blocks on “home.php” (see “new-style-rules.css”).
- Added an option to display the feature article and flickr and feed options to the “Structure Options” panel under “Presentation.”
- Changed some styling in case someone decided to not display the feature post.
Version 1.1.1
- Release for a quick bug fix
Fixed Video “content block” problem with Firefox when a user uses widgets to put the video block in the sidebar. - Fixed the
$do_not_duplicateproblem with “recent.php.” Now, the file always displays the three most recent posts, while skipping the “feature” post, no matter if it was one of the last three posts. (Note: Still working on other potential ways to fix this.) - Fixed issues with how custom fields are read in “recent.php” and “video.php.” (Video was working fine, but I wanted to make it better.)
- Cleaned up much of the code in “tabs-categories.php.”
- Cleaned code in a few different files.
- Added “new-style-rules.php” for changes in the style.
- The comments section “
<pre><code></pre></code>” and “<pre></pre>” elements were too wide for their containing elements.
Version 1.1
- Added a theme options page for the category tabs and theme style.
- Widgetized the left and right blocks on “home.php” and “sidebar.php” (sidebar stays the same across all pages with this option).
- Created Widgets for all my content blocks previously packaged with the theme, so that the user can more easily move different blocks of content around.
Like this theme?
- Vote for it on WP Themez.
- Make a donation with your PayPal account (this is completely optional and was added due to a few requests).
Credits
Thanks to this article CSS negative margins by Zoe Gillenwater, I figured out a thing or two with negative margins that was giving me trouble — trying to do something that was probably impossible with the tabs. So, I opted to use relative positioning.
Thanks to Mr Papa for all his help with fixing problems with “recent.php.” We finally got it working correctly in Version 1.1.2. He’s also developed a Structure skin to use with the Simple Forum for WordPress.
Thanks to One Eyed View for catching a mistake with the feed email option, which was updated in Version 1.1.4.
- For translating the theme into many languages, thanks to:
- Myrte: Chinese.
- Ulrich Gerting Bojko: Danish.
- Sebastian Hobert: German
- Francesco Detta: Italian
- Yoichi: Japanese. (See the 日本語での説明.)
- Christian Gimenez: Spanish.
- Nurullah Sonmez: Turkish.
- Timy Dang: Vietnamese.
License
- If you use this theme, you must leave a link back to me on your site. A full copy of the legal code is included with your download in a file called “license.txt.”
- jQuery is dual-licensed under the GPL and MIT licenses.