Archive for June, 2011

80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Advertisement in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos
 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos  in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos  in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop is a wonderful tool that not only lets you create amazing graphics but also automate your work and improve your workflow. With Photoshop Actions, you can perform your repetitive tasks with a simple click that not only saves you time but helps improving your efficiency.

Photoshop actions allow you to record a sequence of commands and operations that you can set aside and can access afterward. They can also perform some extremely complex techniques with just a push of a button.

Here we have compiled a list of 80+ top-quality Photoshop actions to share with you, so you can expedite your design work. Before presenting our hand-picked collection of downloadable Photoshop Actions, however, we would like to offer a short explanation on how to install and create your own Photoshop Actions.

Creating Photoshop Actions

Creating Photoshop actions is very simple. All you need to do is open up the “Actions� palette and click the New Action button as seen in the picture below:

Actiontut1b in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

A new window pops up giving you different options for creating actions. Name the action and then place it in a set. For quick access, you can assign a shortcut to your action that will immediately activate it in Photoshop. This is a useful option to be used for those actions that you use with regularity.

Actiontut2b in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Hitting the “Record� button allows you to record your desired actions by carrying out the necessary steps. The only thing that needs to be remembered here is selection sizes, saving and other specific steps will be duplicated precisely as you perform them in the action. So, you need to keep your steps as generic as possible so that they will work on the complete range of the images you want the action to apply to.

Once you’re done, hit the “Stop� button in the action menu. Your action has been recorded. Now you can hit the “Play� button if you want to perform the action on another file.

Installing Photoshop Actions

There are numbers of ways to install Photoshop actions. Dragging the downloaded actions into the ‘Actions� folder enclosed within the “Presets� folder in your Photoshop application folder is the easiest way. Note: you may need to restart Photoshop so that the installed actions can appear in the actions menu.

On the other hand, hit the little arrow on the right of the actions menu and then click the “Load Actions� option to quickly install the downloaded actions into the Photoshop.

Actiontut4b in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Useful Photoshop Action Sets

Photoshop Actions – 4

Photoshopactions8 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Red Action

Photoshopactions1 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action Contagious

Photoshopactions12 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Polaroid GENERATOR V1

Photoshopactions2 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Antique Action

Photoshopactions36 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Infection

Photoshopactions47 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Once Upon a Time – Vintage ATN

Photoshopactions4 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Magical effect 4.0

Photoshopactions49 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Toasted Photoshop Actions

Photoshopactions7 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Ghost Stories Photoshop Action

Photoshopactions9 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

JJ’s Durazno-Melon Actions

Photoshopactions10 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

LIGHT BULB

Photoshopactions59 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action 01

Photoshopactions11 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Oldmatic Photoshop Action

Photoshopactions6 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Forest Action

Photoshopactions13 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action 15

Photoshopactions15 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Landscape Action

Photoshopactions72 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action: Foliage

Photoshopactions16 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop actions – 11

Photoshopactions17 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Polaroid Generator 2

Photoshopactions18 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Fearless Action

Photoshopactions19 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Color Actions 2

Photoshopactions20 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Black white sepia PS action

Photoshopactions21 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Bright Eyes

Photoshopactions77 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Retro Action

Photoshopactions78 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Blue action

Photoshopactions22 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action: Diabolic

Photoshopactions23 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

300 Action

Photoshopactions24 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Vintage Photoshop Action

Photoshopactions5 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

sa-cool Action 2.02 Retro

Photoshopactions25 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Cool photo effect action

Photoshopactions26 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Thinking of you action

Photoshopactions27 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action Set 1

Photoshopactions28 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

set 28

Photoshopactions29 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Portrait Action

Photoshopactions30 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Coffee

Photoshopactions31 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Dazzle Effects

Photoshopactions32 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action Set 07

Photoshopactions33 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Teeth Whitening Action

Photoshopactions34 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Black And White

Photoshopactions35 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Alibi

Photoshopactions37 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Summer Heat Action

Photoshopactions38 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action 25

Photoshopactions39 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Fairytale actions

Photoshopactions40 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

24 Photoshop Actions

Photoshopactions41 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Not Like the Movies Action

Photoshopactions42 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Remember Me Action

Photoshopactions43 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Almost Exclusive Action

Photoshopactions44 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Vanilla Tones II Action

Photoshopactions45 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Cross-Processing ATN

Photoshopactions3 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

FrostBite

Photoshopactions46 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

16 yellow fog

Photoshopactions48 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Ghost Stories

Photoshopactions50 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

HDR Tools

Photoshopactions51 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Darker effect 5.0

Photoshopactions52 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action Liberty walk

Photoshopactions54 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

10 dark vintage

Photoshopactions55 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Supernova Effect

Photoshopactions56 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

The Photographer Photoshop Action

Photoshopactions57 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action 1

Photoshopactions58 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Create round photo stickers or add sticky tapes!

Photoshopactions60 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

OUT OF BOUNDS Photoshop actions

Photoshopactions61 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Lomography Action

Photoshopactions62 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Blurred Frame Action

Photoshopactions63 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Soften skin effect

Photoshopactions64 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Crystal Ball Action

Photoshopactions65 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Old Parchment

Photoshopactions66 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Fun FX: Digital Corruption

Photoshopactions67 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Fun FX: Film Urban Blue

Photoshopactions68 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Magic Skin Action Set

Photoshopactions69 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

FilmStrip Action!

Photoshopactions70 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

2011 Calendar – Photoshop Action

Photoshopactions71 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Color Correction Action

Photoshopactions73 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

InfraRed Photography Action

Photoshopactions74 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Action 008

Photoshopactions75 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Magical effect 4.2

Photoshopactions76 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Photoshop Action Variety

Photoshopactions79 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Crime Action

Photoshopactions80 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Unspoken action

Photoshopactions81 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

Vintage action set 4

Photoshopactions82 in 80+ Time Saving and Free Photoshop Action Sets To Enhance your Photos

(rb)


How To Build A Media Site On WordPress (Part 1)

Advertisement in How To Build A Media Site On WordPress (Part 1)
 in How To Build A Media Site On WordPress (Part 1)  in How To Build A Media Site On WordPress (Part 1)  in How To Build A Media Site On WordPress (Part 1)

WordPress is amazing. With its growing popularity and continual development, it is becoming the tool of choice for many designers and developers. WordPress projects, though, are pushing well beyond the confines of mere “posts” and “pages”. How do you go about adding and organizing media and all its complexities? With the introduction of WordPress 3.1, several new features were added that make using WordPress to manage media even more practical and in this tutorial, we’re going to dive in and show you how.

Wordpress-media-site-part1 in How To Build A Media Site On WordPress (Part 1)

In part one, we’re going to setup custom post types and custom taxonomies, without plugins. After that, we’ll build a template to check for and display media attached to custom posts. Then, in part two, we’ll use custom taxonomy templates to organize and relate media (and other types of content).

As we focus on building a media centric site, I also want you to see that the principles taught in this series offer you a set of tools and experience to build interfaces for and organize many different types of content. Examples include:

  • A “Media” center, of any type, added to an existing WordPress site
  • A repository of videos, third party hosted (e.g. Vimeo, YouTube, etc), organized by topics and presenters
  • A music site, with streaming and song downloads, organized by bands and associated by albums
  • An author-driven Q&A site, with user submitted questions organized by topics and geographical location
  • A recipe site with videos and visitor ratings, organized by category and shared ingredients

In a future tutorial, we will focus on customizing the WordPress backend (with clients especially in mind) to manage a media site and in another tutorial we will use the foundation laid to build a dynamic filtering interface that allows visitors to quickly sort their way through hundreds or even thousands of custom posts.

Requirements

  • WordPress 3.1 – With the release of 3.1, several new features related to the use of custom post types and taxonomies were introduced that are essential to the techniques taught in this series.
  • Basic Familiarity with PHP (or “No Fear”) – To move beyond copying and pasting the examples I’ve given will require a basic familiarity with PHP or, at least, a willingness to experiment. If the code samples below are intimidating to you and you have the desire to learn, then I encourage you to tackle it and give it your best. If you have questions, ask in the comments.

Working Example

In April, 2011 we (Sabramedia, of which I am a co-founder) worked with an organization in Southern California to develop a resource center on WordPress to showcase their paid and free media products. On the front-end, we built a jQuery powered filtering interface to allow visitors to filter through media on-page. We’ll cover the ins and outs of building a similar interface in part three.

Screenshot-arise-illu in How To Build A Media Site On WordPress (Part 1)
The “Resource Center” on ARISE, with a custom taxonomy filter (“David Asscherick”) pre-selected.

Working With Custom Post Types

By default, WordPress offers two different types of posts for content. First, you have the traditional “postâ€�, used most often for what WordPress is known best for – blogging. Second, you have “pagesâ€�. Each of these, as far as WordPress is concerned, is a type of “postâ€�. A custom post type is a type of post that you define.

Note: You can learn more about post types on the WordPress Codex.

In this series, we are going to use custom post types to build a media based resource center. I will be defining and customizing a post type of “resource�.

Setting Up Your Custom Post Type

You can setup your custom post types by code or by plugin. In these examples, I will be setting up the post type by code, storing and applying the code directly in the functions file on the default WordPress theme, Twenty Ten. You can follow along by using a plugin to setup the post types for you or by copying the code samples into the bottom of your theme’s custom functions file (functions.php).

Note: As a best practice, unless you use an existing plugin to create the post types, you may want to consider creating your own WordPress plugin. Setting up custom post types and taxonomies separate from your theme becomes important if and when you want to make major changes to your theme or try a new theme out. Want to save some typing? Use the custom post code generator.

Alright, let’s setup our custom post type. Paste the following code into your theme’s functions.php:

add_action('init', 'register_rc', 1); // Set priority to avoid plugin conflicts

function register_rc() { // A unique name for our function
 	$labels = array( // Used in the WordPress admin
		'name' => _x('Resources', 'post type general name'),
		'singular_name' => _x('Resource', 'post type singular name'),
		'add_new' => _x('Add New', 'Resource'),
		'add_new_item' => __('Add New Resource'),
		'edit_item' => __('Edit Resource'),
		'new_item' => __('New Resource'),
		'view_item' => __('View Resource '),
		'search_items' => __('Search Resources'),
		'not_found' =>  __('Nothing found'),
		'not_found_in_trash' => __('Nothing found in Trash')
	);
	$args = array(
		'labels' => $labels, // Set above
		'public' => true, // Make it publicly accessible
		'hierarchical' => false, // No parents and children here
		'menu_position' => 5, // Appear right below "Posts"
		'has_archive' => 'resources', // Activate the archive
		'supports' => array('title','editor','comments','thumbnail','custom-fields'),
	);
	register_post_type( 'resource', $args ); // Create the post type, use options above
}

The code above tells WordPress to “register” a post type called “resource”. Then, we pass in our options, letting WordPress know that we want to use our own labels, that we want our post type to be publicly accessible, non-hierarchal, and that we want it to show up right below “posts” in our admin menu. Then, we activate the “archive” feature, new in WordPress 3.1. Finally, we add in “supports”: the default title field, the WordPress editor, comments, featured thumbnail, and custom fields (I’ll explain that  later).

Note: For more information on setting up the post type and for details on all the options you have (there are quite a few available), refer to the register_post_type function reference on the WordPress Codex.

If the code above was successful, you will see a new custom post type, appearing below “Posts” in the WordPress admin menu. It will look something like this:

Wordpress-screenshot-admin in How To Build A Media Site On WordPress (Part 1)
A view of the WordPress Admin, after adding a custom post type

We’re in good shape! Next, let’s setup our custom taxonomies.

Working With Custom Taxonomies

A “taxonomy” is a way of organizing and relating information. WordPress offers two default taxonomies, categories and tags. Categories are hierarchal (they can have sub-categories) and are often used to organize content on a more broad basis. Tags, are non-hierarchal (no sub-tags) and are often used to organize content across categories.

A “term” is an entry within a taxonomy. For a custom taxonomy of “Presenters”, “John Smith” would be a term within that taxonomy.

In this series, we will be creating two different custom taxonomies to organize the content within our resource center.

  • Presenters – Each media item in our resource center will have one or more presenters. For each presenter, we want to know their name and we want to include a short description. Presenters will be non-hierarchal.
  • Topics – Our resource center will offer media organized by topics. Topics will be hierarchal, allowing for multiple sub-topics and even sub-sub-topics.

Note: Interested in working with more than the title and short description? Take a look at How To Add Custom Fields To Custom Taxonomies on the Sabramedia blog.

Setting Up Presenters

Our goal with presenters is to create a presenter profile, referenced on the respective media pages, that will give more information about the presenter and cross-reference other resources that they are associated with.

Add the following code to your theme’s functions.php file:

$labels_presenter = array(
	'name' => _x( 'Presenters', 'taxonomy general name' ),
	'singular_name' => _x( 'Presenter', 'taxonomy singular name' ),
	'search_items' =>  __( 'Search Presenters' ),
	'popular_items' => __( 'Popular Presenters' ),
	'all_items' => __( 'All Presenters' ),
	'edit_item' => __( 'Edit Presenter' ),
	'update_item' => __( 'Update Presenter' ),
	'add_new_item' => __( 'Add New Presenter' ),
	'new_item_name' => __( 'New Presenter Name' ),
	'separate_items_with_commas' => __( 'Separate presenters with commas' ),
	'add_or_remove_items' => __( 'Add or remove presenters' ),
	'choose_from_most_used' => __( 'Choose from the most used presenters' )
); 

register_taxonomy(
	'presenters', // The name of the custom taxonomy
	array( 'resource' ), // Associate it with our custom post type
	array(
		'rewrite' => array( // Use "presenter" instead of "presenters" in the permalink
			'slug' => 'presenter'
			),
		'labels' => $labels_presenter
		)
	);

Let’s break that down. First, we setup the labels to be used when we “register” our taxonomy. Then, we give it a name, in this case “presenters”, and assign it to the post type of “resource”. If you had multiple post types, you would add them in with a comma, like this:

array( 'resource', 'other-type' ), // Associate it with our custom post types

After that,  we change the URL (or “permalink”) to satisfy our desire for grammatical excellence. Rather than being “/presenters/presenter-name” we update the “slug” (what is a slug?) to remove the “s” so that the permalink will read “/presenter/presenter-name”.

In our example, you should now notice a new menu option labeled “Presenters” under “Resources” in the admin sidebar. When you go to create a new resource you should also notice a meta box on the right side that looks like this:

Meta-box-wp-admin1 in How To Build A Media Site On WordPress (Part 1)
My custom taxonomy of "Presenters" now shows up between the "Publish" box and "Featured Image".

Note: To learn more about setting up custom taxonomies and the options available, take a look at the register_taxonomy function reference on the WordPress Codex.

Setting Up Topics

Our goal with topics is to allow for a hierarchal set of topics and sub-topics, each with their own page, showing the resources that are associated with each respective topic.

Add the following code to your theme’s functions.php file:

$labels_topics = array(
	'name' => _x( 'Topics', 'taxonomy general name' ),
	'singular_name' => _x( 'Topic', 'taxonomy singular name' ),
	'search_items' =>  __( 'Search Topics' ),
	'all_items' => __( 'All Topics' ),
	'parent_item' => __( 'Parent Topic' ),
	'parent_item_colon' => __( 'Parent Topic:' ),
	'edit_item' => __( 'Edit Topic' ),
	'update_item' => __( 'Update Topic' ),
	'add_new_item' => __( 'Add New Topic' ),
	'new_item_name' => __( 'New Topic Name' ),
); 

register_taxonomy(
	'topics', // The name of the custom taxonomy
	array( 'resource' ), // Associate it with our custom post type
	array(
		'hierarchical' => true,
		'rewrite' => array(
			'slug' => 'topic', // Use "topic" instead of "topics" in permalinks
			'hierarchical' => true // Allows sub-topics to appear in permalinks
			),
		'labels' => $labels_topics
		)
	);

That was easy enough! The code above is similar to setting up presenters, except this time we are using a few different labels, specific to hierarchal taxonomies. We set hierarchal to true (it’s set to “false” by default), we update the slug to be singular instead of plural, then, just before referencing our labels, we set the rewriting to be hierarchal. A hierarchal rewrite allows permalinks that look like this: /topic/topic-name/sub-topic-name.

With the above code implemented, you should notice another option below “Resources” in the WordPress admin and a new meta box that looks like this:

Tutorial-admin-4 in How To Build A Media Site On WordPress (Part 1)
My custom taxonomy of "Topics" now shows up, albeit a bit empty looking, below "Presenters".

Adding Custom Fields To Custom Post Types

In many cases, the “title” and “editor” (the default content editor in WordPress) aren’t going to be enough. What if you want to store extra information about a particular custom post? Examples might include:

  • Duration of a media file – HH:MM:SS format, useful to pre-populate your media player with the duration on page load.
  • Original recording date – Stored as a specific date with day, month, and year.

We call this “meta” information and it is a set of details that are specific to the individual item and usually make the most sense to store as meta data, as opposed to terms within a custom taxonomy. While you could put all these details in the “editor” field, it gives you very little flexibility with how this is displayed within your template.

So, let’s setup some custom fields. Use the custom fields interface at the bottom of an individual custom post to add some extra details about your custom post.

For our example, we’re going to add two fields. For each field, I will list the name, then an example value:

  • recording_length - Example: 00:02:34
  • recording_date – Example: March 16, 2011

Here’s how that looks after adding two custom fields:

Tutorial-admin-5 in How To Build A Media Site On WordPress (Part 1)
An example of the custom fields interface after adding two "keys" and their respective "values"

Note: The default custom fields interface can be a bit limiting. If you’d like to make use of a plugin, try More Fields. The functionality is the same (just be mindful of what you name your custom fields) – a plugin typically offers you a better interface. If you want to build your own interface, take a look at WP Alchemy. To learn more about using custom fields, take a look at using custom fields on the WordPress Codex.

Custom Taxonomies vs. Custom Fields

At this point, you may run into a situation where you’re uncertain whether a particular piece of information should be stored as a custom taxonomy or as a custom field. Let’s use the recording date as an example. If we were to log the complete date, then it would probably make the most sense to store it within a custom field on the individual item. If we were to just use the year, though, we could store it as a term within a custom taxonomy (we’d probably call it “year”) and use it to show other resources recorded that same year.

The question is whether or not you want to relate content (in our case, “resources”) by the information you’re considering. If you don’t see any need to relate content (and don’t have plans to) then a custom field is the way to go. If you have a need to relate content or see a potential need down the road, then a custom taxonomy is the way to go.

Media Storage – WordPress vs. Third Party

Now that we have our custom post type and custom taxonomies in place, it’s time to upload some media. Our goal is to make this as simple a process for the end-user as possible. There are two ways that we can manage the media, either directly within WordPress or via third party.

  • WordPress Managed - WordPress has a media management system built-in. You can upload media directly from your post type interface or from the “media” section in the WordPress admin. If storage or bandwidth becomes an issue, you can use a plugin (such as WP Super Cache) to offload the storage of the media to a third party content delivery network (CDN) to optimize delivery speed and save on bandwidth.
  • Third Party – Going this route, you can use a media hosting service like YouTube, Vimeo, Scribd (PDFs), Issuu (ebooks), or any media hosting service that offers you an embed option.

Going the internal route, the media is stored inside of WordPress and associated with the individual custom post. We then access it as an attachment within the template. Going the third party route, we get the embed code (or the media ID) and store it inside of WordPress within a custom field. We’ll look at examples of both options further on.

Note: Working with images? Take a look at a recent Smashing article that covers better image management with WordPress.

Preparing The Stage – Adding New Media

We’re about to start working with the templates. Before we do that, though, we need to have some media to work with within our new custom post type. Before proceeding, make sure you’ve done the following:

  • Create a new “resource” post (or whatever your post type may be) and give it a title and a description in the main content editor.
  • Associate your resource with a non-hierarchical custom taxonomy you’ve created (e.g. A presenter named “Jonathan Wold”).
  • Associate your resource with a hierarchical custom taxonomy you’ve created (e.g. A topic of “Family” and a sub-topic of “Children”)
  • Add one or more custom fields with a unique “key” and “value” (e.g. a key of “recording_duration” and a value of “00:02:34″).
  • Upload a video file to your custom post using the WordPress media manager (click the “video” icon just below the title field and right above the editor).

Note: If you’re hosting your videos via third party, create a custom field to hold either the entire embed code or the ID of the video. I’ll give you an example using Vimeo a bit later that will use the video ID.

Note #2: Depending on your hosting provider, you may run into trouble with a default upload limit, often 2MB or 8MB. Check out how to increase the WordPress upload limit.

After you’ve created a new post, previewing it should show you a screen, depending on your theme, will look something like this:

Tutorial-frontend-1 in How To Build A Media Site On WordPress (Part 1)
A preview of my custom post, displaying title and description, on the Twenty Ten theme.

Note: If you preview your post and get a “404″ error, you may need to update your Permalinks. From the WordPress Admin, Go to “Settings”, then “Permalinks”, and click “Save Changes”. Refresh and you should be good to go.

Displaying Our Media – Working With Custom Post Templates

If you previewed your custom post, you probably saw something similar to what I showed in my example – not much. Where are the custom taxonomy terms, custom fields, and videos? Missing – but not for long! In the following steps, we’re going to create a custom template that tells WordPress what data to display and how to display it.

Creating A Custom Post Type Template

The WordPress template engine has a hierarchy that it follows when deciding what theme template it uses to display data associated with a post. In the case of our “resource” post type, the WordPress hierarchy (as of 3.1) is as follows:

  • single-resource.php – WordPress will check the theme folder for a file named single-resource.php, if it exists, it will use that file to display the content. For different post types, simple replace “resource” with the name of your custom post type.
  • single.php – If no post type specific template is found, the default single.php is used. This is what you probably saw if you did an early preview.
  • index.php – If no single template is found, WordPress defaults to the old standby – the index.

I’ll be using minimal examples for each of the templates, modified to work with Twenty Ten. Each example will replace and build on the previous example. Expand to your heart’s content or copy the essentials into your own theme.

To get started with our example, create a file called single-resource.php and upload it to your theme folder. Add the following code:

<?php get_header(); ?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-content">
					<?php the_content();?>
				</div>
			</div>

		<?php endwhile; ?>
		</div>
	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

The code above will give you a rather unexciting, but working template that will display the title and content (drawn directly from the main editor). What about our custom fields? Let’s add them in next.

Replace the code in single-resource.php with the following:

<?php get_header(); ?>

<?php // Let's get the data we need
	$recording_date = get_post_meta( $post->ID, 'recording_date', true );
	$recording_length = get_post_meta( $post->ID, 'recording_length', true );
?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-meta">
					<span>Recorded: <?php echo $recording_date ?> | </span>
					<span>Duration: <?php echo $recording_length ?> </span>
				</div>
				<div class="entry-content">
					<?php the_content();?>
				</div>
			</div>

		<?php endwhile; ?>
		</div>
	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

We’re making progress! Now, using the examples above, you should see the date your resource was published and the duration of the media file.

Let’s take a look at how that works. In WordPress, data stored in custom fields can be accessed several ways. Here, we are using a function called get_post_meta. This function requires two parameters, the unique ID of the post you want to get the data from and the name of the field (its “key”) whose data you’re after. Here’s the code again:

$recording_date = get_post_meta( $post->ID, 'recording_date', true );

First, we set a variable with PHP – we name it “$recording_date”. Then, we use the “get_post_meta” function. Remember, it needs two parameters, ID and the “key” of the field we want. “$post->ID” tells WordPress to use the ID of the post it is currently displaying. If we wanted to target a specific post, we’d put its ID instead:

$recording_date = get_post_meta( 35, 'recording_date', true ); // Get the date from post 35

The next parameter is the “key”, or “name” of our custom field. Be sure you get that right. The last parameter tells the function to return the result as a single “string” – something that we can use as text in our template below. To display our data in the template, we write:

<?php echo $recording_date ?>

Ok, let’s keep going and get our custom taxonomies showing up.

Replace the code in single-resource.php with the following:

<?php get_header(); ?>

<?php // Let's get the data we need
	$recording_date = get_post_meta( $post->ID, 'recording_date', true );
	$recording_length = get_post_meta( $post->ID, 'recording_length', true );
	$resource_presenters = get_the_term_list( $post->ID, 'presenters', '', ', ', '' );
	$resource_topics = get_the_term_list( $post->ID, 'topics', '', ', ', '' );
?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-meta">
					<span>Recorded: <?php echo $recording_date ?> | </span>
					<span>Duration: <?php echo $recording_length ?> | </span>
					<span>Presenters: <?php echo $resource_presenters ?> | </span>
					<span>Topics: <?php echo $resource_topics ?></span>
				</div>
				<div class="entry-content">
					<?php the_content();?>
				</div>
			</div>

		<?php endwhile; ?>
	 	</div>
 	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Now we’re starting to get more dynamic. You should see your custom fields and, assuming that your custom post has “presenters” and “topics” associated with it, you should see a list of one or more custom taxonomy terms as links. If you clicked the link, you probably saw a page that didn’t look quite what you expected – we’ll get to that soon. Check out get_the_term_list on the WordPress Codex to learn more about how it works.

Adding A Media Player

Now that we have some basic data in place, it’s time to add our media player. In this example, we will be working with the JW Media Player, a highly customizable open-source solution.

Installing JW Media Player

You can access basic installation instructions here. I recommend the following steps:

  1. Download the player from the Longtail Video website.
  2. Create a folder within your theme to hold the player files – In this case, I’ve named the folder “jw”.
  3. Upload jwplayer.js and player.swf to the JW Player folder within your theme.

JW Player is now installed and ready to be referenced.

Now, replace the code in single-resource.php with the following:

<?php get_header(); ?>

<?php // Let's get the data we need
	$recording_date = get_post_meta( $post->ID, 'recording_date', true );
	$recording_length = get_post_meta( $post->ID, 'recording_length', true );
	$resource_presenters = get_the_term_list( $post->ID, 'presenters', '', ', ', '' );
	$resource_topics = get_the_term_list( $post->ID, 'topics', '', ', ', '' );	

	$resource_video = new WP_Query( // Start a new query for our videos
	array(
		'post_parent' => $post->ID, // Get data from the current post
		'post_type' => 'attachment', // Only bring back attachments
		'post_mime_type' => 'video', // Only bring back attachments that are videos
		'posts_per_page' => '1', // Show us the first result
		'post_status' => 'inherit', // Attachments require "inherit" or "all"
		)
	);
?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-meta">
					<span>Recorded: <?php echo $recording_date ?> | </span>
					<span>Duration: <?php echo $recording_length ?> | </span>
					<span>Presenters: <?php echo $resource_presenters ?></span>
				</div>
				<div class="entry-content">
					<?php while ( $resource_video->have_posts() ) : $resource_video->the_post(); ?>
						<p>Video URL: <?php echo $post->guid; ?></p>
					<?php endwhile; ?>

					<?php wp_reset_postdata(); // Reset the loop ?>

					<?php the_content(); ?>
				</div>
			</div>

		<?php endwhile; ?>
		</div>
	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Note: You may notice the somewhat mysterious reference to “wp_reset_postdata”. We are creating a loop within a loop and, to prevent strange behavior with template tags like “the_content” (try removing “wp_reset_postdata” to see what happens), we need to run a reset after any new loops we add within the main loop. Learn more about the loop on the WordPress Codex.

Now we’re getting somewhere! If everything went as expected, you should see a direct, plain text URL to your video. That’s not very exciting (yet), but we want to make sure we are getting that far before we add in the next step – the player.

If you’re having trouble at this point, check back through your code and look for any mistakes that may have been made. If you are trying to vary widely from this example, simplify your variations and start as close to this example as you can – get that to work first then branch back out.

With the URL to our video available, we are ready to add in the player. Let’s go!

Replace the code in single-resource.php with the following:

<?php get_header(); ?>

<?php // Let's get the data we need
	$recording_date = get_post_meta( $post->ID, 'recording_date', true );
	$recording_length = get_post_meta( $post->ID, 'recording_length', true );
	$resource_presenters = get_the_term_list( $post->ID, 'presenters', '', ', ', '' );
	$resource_topics = get_the_term_list( $post->ID, 'topics', '', ', ', '' );

	$resource_video = new WP_Query( // Start a new query for our videos
	array(
		'post_parent' => $post->ID, // Get data from the current post
		'post_type' => 'attachment', // Only bring back attachments
		'post_mime_type' => 'video', // Only bring back attachments that are videos
		'posts_per_page' => '1', // Show us the first result
		'post_status' => 'inherit', // Attachments require "inherit" or "all"
		)
	);
?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-meta">
					<span>Recorded: <?php echo $recording_date ?> | </span>
					<span>Duration: <?php echo $recording_length ?> | </span>
					<span>Presenters: <?php echo $resource_presenters ?> | </span>
					<span>Topics: <?php echo $resource_topics ?></span>
				</div>

				<div class="entry-content">
				<?php while ( $resource_video->have_posts() ) : $resource_video->the_post(); // Check for our video ?>
					<div id="player">
						<script type="text/javascript" src="<?php bloginfo('stylesheet_directory'); ?>/jw/jwplayer.js"></script>
						<div id="mediaspace">Video player loads here.</div>
						<script type="text/javascript">
						    jwplayer("mediaspace").setup({
						        flashplayer: '<?php bloginfo( 'stylesheet_directory' ); ?>/jw/player.swf',
						        file: '<?php echo $post->guid; ?>',
						        width: 640,
						        height: 360
						    });
						</script>
					</div>
				<?php endwhile; ?>				

				<?php wp_reset_postdata(); // Reset the loop ?>

				<?php the_content(); ?>
				</div>
			</div>

		<?php endwhile; ?>
		</div>
	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Note carefully the assumptions I’m making in the code above. First, I am assuming that you are storing the JW player files in a folder called “jw” inside the WordPress theme folder of the currently activated theme. If you load the page and the player is not working (and you did have the video URL displaying in the previous step), view the source code on your page, copy the URLs that WordPress is generating to your respective JW player files (jwplayer.js and player.swf) and try accessing them in your browser to make sure each is valid. If there is a problem, update your references accordingly.

Otherwise, there you have it! Your video details and the video itself is now displaying on the page and you should see something like this:

Tutorial-frontend-complete-e1305143493456 in How To Build A Media Site On WordPress (Part 1)
A view of the player, complete with title, description, custom field values and custom taxonomies terms.

Note: There is a lot that you can do to customize the appearance and behavior of the JW Player. A good place to start is the JW Player Setup Wizard. Customize the player to your liking, then implement the code changes in your template accordingly.

Using Vimeo Instead

Let’s say you wanted to use Vimeo, instead of uploading the videos into WordPress. First, you need to add a custom field to store the ID of your Vimeo video. Assuming you’ve done that, and assuming that you’ve entered a valid Vimeo ID in your custom field (we named the field “vimeo_id” in our example), the following code will work:

<?php get_header(); ?>

<?php // Let's get the data we need
	$recording_date = get_post_meta( $post->ID, 'recording_date', true );
	$recording_length = get_post_meta( $post->ID, 'recording_length', true );
	$resource_presenters = get_the_term_list( $post->ID, 'presenters', '', ', ', '' );
	$resource_topics = get_the_term_list( $post->ID, 'topics', '', ', ', '' );

	$vimeo_id = get_post_meta( $post->ID, 'vimeo_id', true );
?>

	<div id="container">
		<div id="content">
		<?php if ( have_posts() ) while ( have_posts() ) : the_post(); ?>

			<div class="resource">
				<h1 class="entry-title"><?php the_title(); ?></h1>
				<div class="entry-meta">
					<span>Recorded <?php echo $recording_date ?> | </span>
					<span>Duration: <?php echo $recording_length ?> | </span>
					<span>Presenters: <?php echo $resource_presenters ?> | </span>
					<span>Topics: <?php echo $resource_topics ?></span>
				</div>

				<div class="entry-content">
					<?php if ($vimeo_id) { // Check for a video ?>
						<iframe src="http://player.vimeo.com/video/<?php echo $vimeo_id; ?>?byline=0&title=0&portrait=0" width="640" height="360" frameborder="0" class="vimeo"></iframe>
					<?php } ?>

					<?php the_content(); ?>
				</div>
			</div>

		<?php endwhile; ?>
		</div>
	</div>

<?php get_sidebar(); ?>
<?php get_footer(); ?>

We use “$vimeo_id” to retrieve and store the ID from our custom field (named “vimeo_id”, in this case) and then, in the code below, we first check to make sure the $vimeo_id field has data in it, then we use Vimeo’s iframe code (details here) to load the video.

Tutorial-vimeo-id in How To Build A Media Site On WordPress (Part 1)
In Vimeo's case, the ID is a series of numbers (notice the selected text) after "vimeo.com/".

Conclusion

And that concludes part one! You’ve learned how to setup custom post types and custom taxonomies without using plugins. You’ve also learned how to setup custom fields and display their data, along with a video player and custom taxonomy terms, within a custom post template. In part two, we’ll look at how to customize the custom taxonomy templates and make them a whole lot more useful. Stay tuned!

Credits

Though this article keeps things basic, the conclusions in part two and a lot of the techniques developed in conjunction with the projects that inspired this series would have been much more difficult without the help of the WordPress Stack Exchange community. If you have a question directly related to this post, ask it here. If you have anything else WordPress related, though, WPSE is the place to go. Also, a big thank you to Joshua, Nick, CJ, and Matt for their many hours spent reviewing, testing code samples, and providing feedback while I worked on this series.


© Jonathan Wold for Smashing Magazine, 2011. | Permalink | Post a comment | Smashing Shop | Smashing Network | About Us
Post tags: ,


Community Roundtable: Who Makes Up Your Web Design Dream Team?

Advertisement in Community Roundtable: Who Makes Up Your Web Design Dream Team?
 in Community Roundtable: Who Makes Up Your Web Design Dream Team?  in Community Roundtable: Who Makes Up Your Web Design Dream Team?  in Community Roundtable: Who Makes Up Your Web Design Dream Team?

Many of us in the web design and development fields have worked, are currently working, or will work as part of a team on a project. This can provide invaluable insight for how we ourselves would build a team of our own, were we the ones calling those shots. Make no mistake about it, team building is a delicate science. You must have the right mix of skills and abilities to have the team and the project live up to its full potential. But what is the right mix? That is the subject of this month’s Community Roundtable discussion.

CRheader in Community Roundtable: Who Makes Up Your Web Design Dream Team?

If you had the chance to create the proverbial Dream Team for your next web design/development project, would you get the mix right? Is there an optimal equation, so to speak, to solve this perfect team question? Using your experience as a member of a team, or just your experience with what it takes to fully pull off a web design project, could you assemble all the right pieces to get the website on its feet by the required deadline? And the more pressing question…

Who Makes Up Your Web Design/Development Dream Team?

Below we have a couple of different approaches you could take to assembling your team. Who are you must haves, who are your fallbacks, etc? Take a look through and think it over, then fill us in via the comment section on who and how many would make the cut.

Break it down however you like. By special abilities:

  • Communicators
  • Motivators
  • Innovators
  • Work Horses
  • Problem Solvers

…or by titles:

  • Graphic Designers
  • Web Designers
  • UX Designers (UI Designers, Content Strategists)
  • Back-End Web Developers
  • Front-End Web Developers
  • Copywriters

(rb)


Centering button elements and input buttons

In a recent project I needed to add a button to a column on the page. The design called for the button to be centered in the column. This turned out to be slightly less straightforward than I initially thought.

Centering elements is normally taken care of by giving them a width and auto for horizontal margins. In this case I didn’t want to set a width on the button since the site will be available in several different languages, so the amount of text on the button will differ.

My first thought was to just avoid setting a width since form controls are replaced elements and have an intrinsic width anyway once rendered by the browser, so I might be able to get away with this:

.button {
    display:block;
    margin:0 auto;
}

Read full post

Posted in , .

Copyright © Roger Johansson



CSS3 and HTML5 Toolbox Starter

Advertisement in CSS3 and HTML5 Toolbox Starter
 in CSS3 and HTML5 Toolbox Starter  in CSS3 and HTML5 Toolbox Starter  in CSS3 and HTML5 Toolbox Starter

As designers and developers we tend to always be on the look out for awesome resources to add to our virtual toolboxes. With the web design landscape moving in the direction of CSS3 and HTML5 we thought that we would help our readers find a few choice tools to start building up their toolboxes. So we went out across the web looking for some of the top offerings from the development and design community that can help get you started on using CSS3 and HTML5 today.

So take a look down through the round up of available resources that you can hopefully find some tools that you have not come across before, and that can help aid both designers and developers alike.

CSS3 Tools

CSS3 Button Maker

This intuitive tool from CSS-Tricks is labeled a “CSS3″ button maker owing to the fact that it makes use of gradients, shadows, and rounded corners which are generally not supported in older browsers. However, whenever these properties are not supported, the buttons degrade naturally and nicely. To use, you simply adjust the settings until the example looks like you want it to then you just click the button to get the CSS code. Then you copy and paste it into your stylesheet.

Button-maker in CSS3 and HTML5 Toolbox Starter

CSS3 Maker

Another uber easy and user-friendly code generator is CSS3 Maker which supports “border radius” “gradient” “css transform” “css animation” “css transform” “RGBA” “Text Shadow” “Box Shadow” “Text Rotation” and “@Font Face” with browser and mobile compatibility. Users can also create an account to save snippets created during your session. (If you want essentially the same service with a different ui, give http://css3generator.com/ a try)

Image2 in CSS3 and HTML5 Toolbox Starter

CSS3 Please

How about a handy cross-browser CSS3 rule generator? Just say please! CSS3 Please is an online stylesheet with an inlaid code generated example so you can see the changes you make take immediate effect. And the best part is, change one value, and all the corresponding values update to reflect these changes as well. Then when you are ready and have the box styled as you like, then just copy the whole code or just part of the code and paste it into your own stylesheet. With great annotations this is an awesome learning tool to boot as you are working directly with the code itself.

Image3 in CSS3 and HTML5 Toolbox Starter

Modernizr

Need a compact, easy to use JavaScript library to aid in implementing emerging web technologies like CSS3 or HTML5, without sacrificing function and control in older browsers that have not made it ahead of the curve? Modernizr might be the answer. With feature detection for browser testing supporting “RGBA”, “Border-Radius”, “CSS Transitions” and more, this is a great way to get started modernizing your site while keeping control of the fallbacks for older browsers.

Image4 in CSS3 and HTML5 Toolbox Starter

CSS3 Transforms

If it is transforms that you are interested in, then step right up! With this useful tool you can rotate, scale, skew, and otherwise transform your HTML elements with CSS3. (This resource is supported in multiple browsers such as Opera 10.5, Firefox 3.5 and Safari 4 and higher).

Transform-origin in CSS3 and HTML5 Toolbox Starter

CSS3 Pie

If it is progressive enhancement that you are looking for, and you are tired of holding off on using CSS3 due to older versions of IE, then CSS3 PIE is for you. Progressive Internet Explorer (PIE) makes Internet Explorer versions 6 through 8 capable of rendering many of CSS3′s most promising and decorative features. Currently, PIE fully or partially supports the following CSS3 features:

  • Border-radius
  • Box-shadow
  • Border-image
  • Multiple background images
  • Linear-gradient as background image
  • Other features are under active development

Css3-pie-screenshot in CSS3 and HTML5 Toolbox Starter

CSS3 Menu

Time for menus, don’t you think? With CSS3 Menu you can build a rounded navigation menu, without using any images or Javascript. And the fun doesn’t stop there, you can also effectively make use of the new CSS3 properties border-radius and animation. This menu works with Firefox, Opera, Chrome and Safari. The dropdown elements also work on non-CSS3 compatible browsers such as IE7+ in limited fashion, without the rounded corners and shadow effects.

Image7 in CSS3 and HTML5 Toolbox Starter

CSS3 Pattern Gallery

What toolbox would be complete without some patterns and textures that you can use for your web projects. CSS3 Pattern Gallery is a growing collection of both simple, repeating textures and patterns created using pure CSS3. This is useful for reducing load time on large patterned backgrounds for websites.

Css-buttons-colorful in CSS3 and HTML5 Toolbox Starter

CSS3 Watch

As far as CSS3 inspiration goes, CSS3 Watch is a fantastic resource that provides examples of extremely creative, innovative and at times unexpected uses of CSS3. This is a great way to kick start your outside the box thinking with regards to the style of your site.

Css3-watch-screenshot in CSS3 and HTML5 Toolbox Starter

CSS3 Power Tools Tut

And now that you have all of these great tools to play with, you need to be sure that you completely understand the elements of CSS3 that you will be creating. Enter the NetTuts tutorial, Getting to Work with CSS3 Power Tools, which is a wonderful starting point.

Css3-power-tools-screenshot in CSS3 and HTML5 Toolbox Starter

More on CSS3

HTML5 Tools

Initializr

As generators go, Initializr is a nifty little one that specializes in creating HTML5 templates to get you started with any of your HTML5 projects. Initializr will generate you a crisp, clean fully customizable template based on Boilerplate with just what you need to get rolling.

Image11 in CSS3 and HTML5 Toolbox Starter

Switch to HTML5

Making the switch over to HTML5 is one timely task that keeps many on hold, rather than moving forward, but with Switch to HTML5 that not be a bother or barrier anymore. With this tool you can generate a bare bones html5 framework, making it easy to both start new HTML5 projects or convert existing sites to HTML5. This is the first step…

Image12 in CSS3 and HTML5 Toolbox Starter

HTML5 Demos

Once again, if it is a matter of inspiration you are looking to amass and creatively pour through, then HTML5 Demos should be a stop over you make soon. This is a growing collection of HTML5 experiments complete with the source code so you can see the full scope of the project.

Image13 in CSS3 and HTML5 Toolbox Starter

Canvas Demos

If you want to get a little more specific for your sampling of HTML5 in use, then head over to Canvas Demos. It is home to applications, games, tools and tutorials that all use the HTML 5 canvas element which allows for dynamic scriptable rendering of bitmap images.

Image14 in CSS3 and HTML5 Toolbox Starter

HTML5 Rocks

One tool that is something of a toolbox in and of itself, is HTML5 Rocks. This is Google’s full featured HTML5 resource hub including an interactive presentation, an HTML5 playground, demos and tutorials, oh my. Certainly a place worth checking out for the coding enthusiast and expert alike.

Html5-rocks-screenshot in CSS3 and HTML5 Toolbox Starter

HTML5 Boilerplate

Most of our readers are probably already familiar with HTML5 Boilerplate, but we couldn’t do a toolbox post and not include this fully customizable coding base. This template base that comes ready to rock for any of your HTML/CSS/JS needs, has a reputation that precedes it when it comes to future-proofing your site. Through years of development it is ready for cross-browser normalization, performance optimizations, even optional features like cross-domain Ajax and Flash.

Html5-boilerplate in CSS3 and HTML5 Toolbox Starter

HTML5 Doctor

HTML5 Doctor is a dedicated blog focused on helping you implement HTML5 today. Their archives are loaded with articles relating to HTML5, its semantics, and how to use it without delays in your current web design projects. There is also a section for submitting questions for help with your troubleshooting and more, the answers to which are posted in future articles on the blog.

Image17 in CSS3 and HTML5 Toolbox Starter

Sproutcore

App developers around the web are very excited about this latest development in the field with regards to HTML5 and beyond. That is SproutCore. With their bindings system you can create your very own data-centric applications. Simply input your app details, down to your data flow specs and this resource handles the rest. These semantic templates allow you to write HTML and CSS that automatically updates with each of your alterations. With data management and syncing features to boot it is easy to see what all the excitement is about.

Sproutcore-screenshot in CSS3 and HTML5 Toolbox Starter

Dive into HTML5

Speaking of those eager to learn, Dive Into HTML5 by Mark Pilgrim is another fantastic tool that can assist you on this quest for knowledge. Here Pilgrim seeks to expand on certain features, one he has hand-picked in fact, from the HTML5 specification and other fine standards for anyone interested in bulking up on their grasp of this expansive version of this programming powerhouse.

Image20 in CSS3 and HTML5 Toolbox Starter

More on HTML5

(rb)


  •   
  • Copyright © 1996-2010 BlogmyQuery - BMQ. All rights reserved.
    iDream theme by Templates Next | Powered by WordPress