Log in

Stephanie C. Leary [entries|archive|friends|userinfo]
Stephanie C. Leary

[ website | stephanieleary.com ]
[ userinfo | livejournal userinfo ]
[ archive | journal archive ]

some thoughts on asexuality [Jun. 27th, 2016|01:49 pm]
Stephanie C. Leary
[Tags|, ]

Over on Tumblr, I got into a dialogue with an internet friend/fellow writer on asexuality, and how we both completely fubared our early relationships thanks to our unrecognized sexual identities. Hooray for the internets, helping people figure out our sexualities after the age of 35! Or at least, giving us names for things we sorta-kinda knew all along.

In related news, my unrevised YA novel has sprouted a sequel. In thinking hard about that plot, I found the thing that was missing from the first draft: my heroine is also asexual, and confused about it, and is... fubaring her early relationships as a result. Ahem.

Write what you know, they said. That's great, I said, but first I have to figure out what I know!

So that's my revision plan: make the sexual identity question the connecting thread of the failed relationships that are already in the book, and lay the groundwork among the secondary characters for the Big Gay Sequel.

That is not where I thought this book would go, but this is better.

How are you doing, internet friends?
LinkLeave a comment

WordPress Hidden Gem: enter_title_here filter [Jun. 21st, 2016|09:42 am]
Stephanie C. Leary
[Tags|, , , ]

When you’re working with custom post types, sometimes the post title isn’t a title. It might be a person’s name, a building number, or a course code (just to take a few examples from universities). So it’s great that WordPress has a simple filter that makes it easy to customize the “Enter title here” placeholder text to make it fit your content:

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

Upcoming events for 2016: WPCampus, Content Strategy Summit, HighEdWeb [Jun. 16th, 2016|11:03 am]
Stephanie C. Leary
[Tags|, , , , , , , , , ]

Tonight (and about once a month from now on), I’ll be at the College Station WordPress Meetup. We’re going to build a site from scratch as a demo for newbies. The second, smaller conference room will be available for advanced developers to chat. Locals, I hope to see you there!

Next month, I’ll be in Florida for WPCampus, the first WordPress conference specifically for higher education. Here’s the summary of my talk:

Getting to WordPress

Getting started with WordPress is easy — unless you got started a long time ago in some other CMS, or Dreamweaver or even (shudder) FrontPage. But you and WordPress can still have a happy relationship despite your baggage! In this session, I’ll show you how to import almost anything into WordPress. I’ll share examples from real projects for each step of the import process:

  • Setting up your ideal content model in WordPress
  • Cleaning up your import for best results
  • Importing from any other CMS, database, or HTML files
  • Converting old content to custom post types, taxonomies, and modular fields
  • Auditing and cleaning up content in WordPress
  • Processes for long-term content strategy and maintenance

In August, I’ll be part of the online Content Strategy Summit with a new talk that isn’t just about WordPress:

Content First in Action

We know that a content-first approach to design is a best practice, but knowing is only half the battle. We’re accustomed to our legacy workflows–and so are our clients. For years, we’ve trained clients to expect designs first, prototypes later, and writing last of all.

Win clients over to your new workflow by showing them what’s in it for them: not just a better user experience for their readers, but a better authoring experience for the content editors.

With a CMS that lets you modify the admin interface, you can make not only the design but the CMS itself fit the content. When coupled with a responsive design workflow, setting up the model first helps clients think more concretely about:

  • modular content
  • prioritizing chunks for mobile, search, and archived contexts
  • user roles and access
  • editorial UX

This content-first approach lets you design the CMS to fit the organization’s content model and workflow. You can:

  • dogfood throughout the prototyping and design processes
  • spot areas of confusion early
  • change the admin interface
  • add inline help
  • plan documentation to be a backup or a last resort

I’ve done a number of these virtual conferences with Environments for Humans, and they’re always outstanding.

And finally, in October I’ll be back at HighEdWeb for the first time since my son was born. I’m so excited to be returning with a new half-day workshop:

WordPress for the 99%

Tame the wild web that’s grown over decades of decentralized web services by providing a central self-service solution that’s prettier, cheaper, and (as far as the customer is concerned) maintenance-free — without hiring a small army. Texas A&M and Berkeley are maintaining WordPress networks of thousands of sites with web teams of two to five, and you can do it, too.

WordPress is popular because it’s easy for users to grasp and easy for developers to extend. Why not take advantage of that to provide branded websites for your campus constituents? Sure, there are a few groups who need a custom site and have the money to pay for it–but what about everyone else? A little structured content here, some inline help there, and you have a one-size-fits-most solution for virtually every small website on your campus. Go beyond the student blog network! WordPress is for everybody: faculty, staff… even that events coordinator who needs a website by 5 because she’s opening up registration in the morning and what do you mean, is the content written?

Using case studies from Texas A&M University and The University of California at Berkeley, I’ll demonstrate how to set up common content models, templates, and workflows for:

  • Departments
  • Research teams
  • Conferences & symposia
  • Committees

I’ll also talk about integrating the 1% into these WordPress networks without sacrificing security, branding, and accountability.

The workshop will include specific code examples and plugin recommendations from the case study projects.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

Category (or taxonomy) drill-down pages [Jun. 14th, 2016|09:46 am]
Stephanie C. Leary
[Tags|, , , , ]

WordPress category archives are very inclusive. They list all the posts in a category, including all the child categories. This is also true for all other hierarchical taxonomies.

If you have a deep hierarchy, it might make more sense to have your users drill down until they reach a term that doesn’t have children, and then they’d see the list of posts.

Diagram of three category pages. On the first two, for categories that have children, only a list of linked child categories is shown. The third, for a category with no more children, shows the usual post loop.
Categories with children will show a list of those children. No posts are shown until we reach a category that has no children.

To do this, we can add some code to the taxonomy archive template to check whether the current term has children, and if it does, display a list of child terms instead of the Loop.

Here’s a category.php file (or an taxonomy.php file) that displays intermediate terms as links instead of listing posts.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

WordPress Hidden Gem: Closed meta boxes filter [Jun. 7th, 2016|09:28 am]
Stephanie C. Leary
[Tags|, , , ]

Sometimes, rather than hiding a meta box via screen options altogether, I want the box to be closed until the user opens it. WordPress has a filter that lets you add box IDs to the list of things that should be closed.

The filter names are different for each post type. If you want to close a box on all post types, you’ll need to loop through them:


Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

WordPress Hidden Gem: screen option defaults filter [Jun. 3rd, 2016|02:43 pm]
Stephanie C. Leary
[Tags|, , ]

I love the fact that a lot of the meta boxes on the WordPress Edit screens are hidden by default. Did you know that it’s really easy to specify which boxes should be hidden? This is great if you’re building sites for clients with lots of plugins that add meta boxes, but you want new users’ administrative experience to be as simplified as possible.

The names in this array match the IDs of the meta boxes you want to hide. To find the ID, just inspect your screen.

Note that this filter affects only the screen options for new users. Anyone with an existing user account already has screen options set, and won’t receive the new default settings.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

Redirect imported content to WordPress URLs [May. 25th, 2016|10:21 am]
Stephanie C. Leary
[Tags|, , , , , ]

Are you importing posts from another CMS? Do you want to avoid an .htaccess file with a million redirects? Of course you do!

Step 1: store your old pages’ paths in a custom field during your import.

Step 2: adapt this little function to your site. When a user lands on a 404 error, WordPress checks to see if the requested path exists in a custom field. If so, it redirects the user to the correct post.

In this case, my posts imported from Drupal had the old paths stored in the ‘drupal_path’ field.  Change your ‘meta_key’ to match your custom field name.

Try visiting one of the old URLs. You should be whisked to the new location.

This function also prevents WordPress’s default behavior of trying to guess where to redirect an incorrect URL. If you want WordPress to keep doing that after it has checked for the custom field path, simply remove the “else return false;” lines.

Redirects for HTML Import

Since the HTML Import plugin stores the old URLs, you can use this to redirect your old files to the new WordPress pages:

Note the difference here: parse_url() isn’t used, because in this case the full URL has been stored, not just a relative path.

This works only if you have entered the old URL correctly in the plugin’s settings.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

Better 404 error messages for private posts and pages [May. 18th, 2016|09:16 am]
Stephanie C. Leary
[Tags|, , , ]

When a non-logged-in reader visits a private WordPress post or page, she gets a 404 “not found” error message, as if the post didn’t exist at all. That’s great if you don’t want the world to know that the post exists, but what if you’re doing something less clandestine, like members-only content?  You do want people to know the post is there–they haven’t followed a bad link!–but they need to log in to see it. Then “not found” is misleading.

There are two ways you could make the user experience better: redirecting private 404s to the login screen with a message, or changing the 404 error text.

Redirecting private 404s to the login screen

If you’re going with the redirect option, you’ll need two small functions in your custom plugin or your theme’s functions.php file. The first checks whether the queried object (in this case, the post/page) is private, and if so, redirects to the login URL with a custom query argument and instructions to return the user to the original page after they’ve logged in.

The second function runs on the login screen. If the custom query argument is set, it adds a message telling the user they need to log in before viewing the original page.

Changing the 404 error text (in Genesis)

If you want to be a little less presumptuous about whisking users off to a login screen, you can instead filter the error message and give them the option of following the login link.

In most WordPress themes, you can edit your template files directly to add a wp_login_url() link. In Genesis, you need to filter the noposts text instead:

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

A better color scheme chooser for Genesis [May. 12th, 2016|11:00 am]
Stephanie C. Leary
[Tags|, ]

Most Genesis themes come with several color schemes. However, most of the time, these feature one prominent color. The built-in color scheme chooser is therefore a simple dropdown list of color names: Red, Green, and so on.

When I started talking to the Berkeley College of Engineering‘s Marketing staff about creating a flexible WordPress theme for the College’s various divisions to use, they mentioned early on that they’d like several different color schemes based on the university’s brand guide. Berkeley, as it turns out, has a fantastic color guide.

colorgrid800I had so much fun mixing up the colors that I couldn’t stop, and I very quickly found myself with twelve color schemes. (Really six, but each has a light and dark variation.)

The problem was that none of the color schemes had one single standout color; they each had more like four. And that meant that the usual Genesis color-name dropdown was not going to cut it.

Instead, I removed the original Genesis Color Schemes meta box and replaced it with a new one based on the Layout Settings box. I created icon images for each color scheme, added a few lines of CSS to accommodate my images’ taller height, add space for captions, and make the selector border stand out a little more.

The end result gives site owners a much better idea of what the color schemes look like.


Here’s the PHP. You’d need to copy this to your theme (probably in functions.php) to create something like this for your site:

Note that there are images for each color scheme, all stored in the theme’s /images subdirectory. You might need to change the filename and path logic, depending on your setup.

And here’s the admin-style.css file referenced:

Read more about the Berkeley College of Engineering theme project.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

Where has Stephanie been for the last year? [Apr. 27th, 2016|01:17 pm]
Stephanie C. Leary
[Tags|, ]

To sum up in one word: depression.

There are lots and lots of other symptoms and side effects wrapped up in that. Chronic fatigue. Insomnia. (Often in combination; what fun!) Medication changes, with all the shenanigans that entails. Apathy. Lack of focus, also known as “brain fog,” which sounds like a diagnosis out of Joe vs. the Volcano.

brain-cloudThings depression did not help me accomplish: Anything. No writing to speak of, no print edition of Content Strategy for WordPress, no posts here, no plugin updates or support, no WordCamps, no pithy livetweeting, no hanging out in the #wordpress IRC or Slack channels, not much social media at all. I basically didn’t work for five months last year, and then worked really really hard for a few months to catch up.

I’m slowly coming out of hibernation and getting back into my usual circles. I’ll be at Paradise Lost this weekend, WPCampus in July and HighEdWeb in October. In the meantime, I hope to update CS4WP and get a second edition out–in both print and digital this time.

If you’ve pinged me on Facebook or Twitter to see how I was doing–thank you! It’s reassuring that my disappearance did not go unnoticed, and I appreciate your kindness.

Originally published at Stephanie Leary. You can comment here or there.

LinkLeave a comment

[ viewing | most recent entries ]
[ go | earlier ]