WordPress Basics: Categories and Tags
When new bloggers get started on WordPress, they need to understand the basics of what Categories and Tags are. Both can help people find the content they want on your blog, but they serve slightly different purposes.
Categories are big. Broad topics that will repeat again and again on your blog. For example, web education is a topic mentioned over and over again on this blog. It should be a Category.
Under the overarching Category of web education, however, there might be many specific ideas that would be used just once, or perhaps infrequently. For example, a post about web education could be something as specific as how to write good alt text or what ARIA roles are. These very specific topics should be added to the post as tags. Tags are also helpful to search engines in figuring out what a post is about.
Depending on your theme in WordPress, the categories may become part of the menu. For example, on my blog Old Ain’t Dead, I only have 5 categories. These categories are Movies, TV series, Web series, Streaming, and News. These categories are shown as a menu. On this blog, Web Teacher, I have dozens of categories and it would not be useful to list them as menu items. The categories are, however, shown in the sidebar in a pull-down menu.
Blogs can be searched by category. For example, if you select the category blogging from the list of categories on this blog, every post in that category shows up as a search result.
Tags are also searchable, for example a search on the tag alt text. The tag alt text might be used in posts in several Categories, so the search results for a tag would include posts from all those Categories.
Choose meaningful category names. Don’t create category names that convey nothing about your content. For example, category names like “This & That” or “Misc” are not helpful to your readers or to search engines.
Women and Social Media Study (Infographic)
BlogHer conducted a study of women in social media. The first part of the results were released today and summarized in an infographic that divides the findings into data for marketers and for influencers.
Click to make it full screen.
Making Images Responsive

I’ve been attempting to sort out in my own mind exactly what I needed to be teaching students about responsive images. For a while, things have been a bit wobbly in this area and there were no definite best practice ideas. Thanks to the Responsive Images Community Group, I think a consensus on best practice has gelled for now.
Srcset and sizes
I’m sure you’ve heard about the new picture
element. Before you think about using it, you need to know when you can use the familiar img
element.
The majority of the time, the srcset
and sizes
attributes of the img
element will be what front end developers use.
This example shows srcset
with img
and options for display density.
<img src="image500px.jpg"
srcset="image750px.jpg 1.5x, image1000px.jpg 2x"
width="500px" alt="great image">
The src
attribute is the fallback image. The “1.5x” means 1.5 device pixels per CSS pixel, and is a larger image. The 2x means 2 device pixels per CSS pixel, and again, refers to a larger image. It means you have prepared 3 versions of the same image and uploaded them.
Here’s an example of code using an img
element with srcset
and sizes
attributes.
<img srcset="large.jpg 1024w,
medium.jpg 640w,
small.jpg 320w"
sizes="(min-width: 36em) 33.3vw,
100vw"
src="small.jpg"
alt="A great image">
The srcset
attribute lets you give a comma separated list of image file paths. The second example used w
to specify width to the browser and vw
to specify viewport width. Instead of display density, the second example uses media queries to designate images from the list. Again, you have prepared 3 images in different sizes and have them on the server.
Whether you’ve prepared your code to work with pixel density or using widths, the result is the browser makes a choice as to which image will work best. The browser decides which image of the listed images fits the situation by evaluating resolution, viewport size, even bandwidth, and chooses the best image for the situation.
You can also add add the sizes
attribute. The sizes
attribute tells the browser how many pixels it needs by describing the final rendered width of the image. To make the image occupy a third of the viewport, the code would be:
sizes="33.3vw"
With sizes
, you provide a CSS length that describes the image’s rendered width. CSS lengths can be either absolute (150px
or 20em
) or relative to the viewport as in 33.3vw
. As with fonts or other relative measures, the relative to the viewport value is what offers the responsive rendering. The 100vw
measure is the default length and would be used if no other conditions matched.
Value can be in px
, ems
, or vw
.
In the second example above the sizes
attribute uses media query width descriptors with values in ems or vw (viewport width). The first value is a media condition (a media query without the media type) and the second value is a length. Note, the default length is not matched to a media query.
You can use only the srcset
or both srcset
and sizes
attributes with the img
element.
When you need to do more than resize an image
So, when do you use the picture
element?
Sometimes an image won’t work if it is simply sized differently for different devices. It might need to be cropped or have some other type of what is called art direction work done on it. In this situation, you want to give a list of different images to the browser to use in different situations. Perhaps they’ve been cropped. If the image contain words, perhaps the text has been reworked for different size displays. They are not merely resized versions of a single image, but completely reworked images meant to fit different situations.
Use the picture
element with multiple source
elements for this situation.
<picture>
<source media="(min-width: 40em)"
srcset="big.jpg 1x, big-hd.jpg 2x">
<source
srcset="small.jpg 1x, small-hd.jpg 2x">
<img src="fallback.jpg" alt="">
</picture>
Embedded in the picture
element are source
elements with images paths, media queries, display density designations – all the things we saw with the img
element, but here the source
elements link to images that have been altered in some way. The last thing nested in the picture
element is a fallback img
element.
OMG
That’s a lot of new information for someone who grew up on the old style image tags. New length measures, new elements, new attributes. I’m not sure I really have it clearly understood. Writing this was one way to help me work it all out in my mind. If any of you see where I’m foggy or misunderstand something, please offer suggestions.
Learn More
Twitter Writes a Post about role=presentation
There is an ARIA role called “presentation” in the WAI ARIA spec. With Twitter’s help, Denis Boudreau wrote this post about it.
This is how it started:
@goodwitch We need a really clear post on when to actually use role=“presentation”.
— Virginia DeBolt (@vdebolt) September 17, 2014
Then @jsutt took up the idea with this:
Anyone game? MT @vdebolt: We need a really clear post on when to actually use role=“presentation”.
— Jennifer Sutton (@jsutt) September 17, 2014
Denis Boudreau to the rescue!
@jsutt The post only needs to be this long: “Use it only when you really, purposefully want to strip away the HTML semantics.” /cc @vdebolt — Denis Boudreau (@dboudreau) September 17, 2014
@jsutt on 2nd thought, a caveat: If you’re unsure what purposefully stripping away semantics means, then you can never use it. /cc @vdebolt
— Denis Boudreau (@dboudreau) September 17, 2014
@dboudreau That’s a two bullet post. *That’s* what I call a simple post. @jsutt @vdebolt
— Adrian Roselli (@aardrian) September 17, 2014
As you see, this ARIA role has specific and limited use. I wasn’t sure where a front end developer who was only working with semantic HTML would even consider using it.
@dboudreau @jsutt Okay. So it’s used in apps more than in POSH docs. Now it’s starting to make some sense.
— Virginia DeBolt (@vdebolt) September 17, 2014
Oh, at last the light dawns. This is what developers building apps sometimes need to do. Even at that, go back to point one about only using it when you really know what you’re doing and are absolutely sure you want to strip an element of its semantics.
Denis draws us to a sensible conclusion.
@vdebolt Don’t like the output? Just change the markup instead of hiding the semantics under a presentation role. /cc @jsutt
— Denis Boudreau (@dboudreau) September 17, 2014
Some Teaching Tips for HTML5 and CSS3 7th Edition
Where I teach, we use HTML5 & CSS3 Visual QuickStart Guide (7th Edition) to teach both the basic HTML and the CSS class. This version of the book came out in 2011.
There’s an 8th Edition released in 2013, but we haven’t switched to it yet. I’m sure we will soon, but for the moment, we are using the 7th edition.
Here are a few teaching tips if you are using the 7th edition, as I currently am.
- At the time this book was written, there was no
<main>
element in the spec. I suggest you change the layout suggested in Chapter 3 to use the<main>
element for the left column. Use the landmark rolerole="main"
with it. - Chapter 3 contains a clear explanation of the purposes and uses of both the
<section>
and<article>
element. If you want, you can include an example of these two elements inside the<main>
element. - Remember that <hgroup> has disappeared from the spec.
- The example files all show empty elements such as
<img>
with a closing forward slash included:<img />
. This provides a perfect opportunity to talk about backwards compatibility, XHTML, and some of the personal choices that are acceptable when writing HTML5.
Meet Megan Smith, New US Chief Technology Officer
MAKERS have several video profiles of Megan Smith, who was recently named Chief Technology Officer for the United States by President Obama.
You can find more films and a biography of Megan Smith at the MAKERS site.
When the video ends, you will be able to see several more short conversations with Megan Smith about technology.