In just a few weeks, I’ll be presenting a session explaining how to write a quick WordPress shortcode, and then explaining how simple it is to turn it into a widget. If you’re interested in attending this presentation, I encourage you to do so.
In addition to my presentation, you can attend six fantastic presentations on marketing strategies and five other awesome sessions on development and technology.
All of these presentations are part of the 2012 .eduGuru Summit, a virtual conference targeted at Web and marketing professionals in education. Just because it’s targeted at people in higher education, though, doesn’t mean that the lessons learned and knowledge shared at the conference are exclusive to higher education.
The conference is being held on April 10 and 11 this year. The best part about the conference? It’s completely virtual. You can attend from the comfort of your own desk (you might, though I do not guarantee this in any way, even be able to attend the conference using your iPad).
A few days ago, I went ahead and installed the Consumer Preview of Windows 8. To say I’m impressed would be understating things a bit. As a Windows Phone 7 user for the last 16 or 17 months, I have become extremely familiar with the metro UI, and am overjoyed to see it coming to the desktop. The whole experience so far has actually inspired me to seriously consider buying a new touch-enabled PC (my current PC is over 5 years old at this point, so it’s probably time to update anyway).
What’s Right About Windows 8?
The new interface is inspired. It’s unique, and it’s easy to use. If you’re a long-time PC user, Windows 8 will require you to entirely rethink how you use your computer; but in a good way. No longer do you have a “Desktop” (well, you do, but it’s an app within Windows 8). Instead, you have a screen full of tiles that you click or tap to open applications. All of your applications (with the exception of apps that have to run inside of the Desktop app) open fullscreen with no chrome around them. Each native app has 3 different formats: Full screen; minimal snapped; and maximum snapped.
When an app is full screen, it takes up the entire screen (duh!). Nothing else appears on the screen at all. You can bring up context menus for various actions by right-clicking (I’m not sure what the multitouch gesture is). You can then “snap” an app to the left or right of your screen. When an app is first “snapped”, it appears in a minimal state. It only takes up about a quarter of your screen’s width, leaving the other three-quarters available for another app. Then, you can open a second app to show up in the larger portion of your screen.
Want to keep an eye on the weather while surfing the Web? Snap your weather app to the left or right, and open IE in the rest of your screen. Want to keep your email visible while you’re playing PinballFX? Snap the Mail app to your screen and open up the game you want to play. If you get an important email while you’re in the middle of your game, you can either handle the email message in it’s minimal state, or you can double click the divider bar to maximize the Mail app (snapping your other active app to the other side of your screen).
It’s been quite a while since I’ve tried to use Brizzly, but I did enjoy the features they offered. For a long time, it was one of the few Web-based interfaces I could use to manage my social media accounts. The other day, when I was temporarily using a computer that didn’t have Chrome installed (so I couldn’t use ChromeDeck), I tried visiting Brizzly only to find that they were shuttering the service.
Today, the official notice went out to Brizzly users. Following is the message that was sent out:
The other day, I was in the process of setting up some custom post meta for an event post type. I needed to add a start date/time and an end date/time for the event as custom meta information. Once I got all of that set up, I needed to modify the loop so that it retrieved the events in order of their start date/time; but I also needed to make sure I only retrieved events that hadn’t yet ended (based on their end date/time).
In the past, this wasn’t really possible with WordPress. You could either order posts by a custom meta value, or you could limit your query to posts that had a specific custom meta value, but you couldn’t do both. Then, in version 3.1 of WordPress, the meta_query was introduced to the WP_Query class. Now, however, you can use the traditional orderby and meta_key properties to sort your posts by a specific meta value; and you can use the meta_query property to limit the posts that are returned.
Whenever you’re working on a new WordPress theme that includes hover (mouseover) effects, especially dropdown or flyout menus, you might want to include hoverIntent. HoverIntent is a term that describes a concept through which you delay a hover action until a certain amount of time has passed, in order to make sure that the user really intended to trigger that action.
We’ve all been on websites with dropdown menus that tend to get in the way of the content, and pop open as soon as your mouse touches even a small portion of them, and we’ve most likely all been annoyed by it. The idea behind hoverIntent is to measure the speed of the mouse movement, attempting to determine whether the user actually intended to stop on the item or not. If the mouse just moves over an item with a hover effect, but doesn’t stop on it, the hover effect should not be triggered; if, however, the user’s mouse does slow down enough or stop on the item, the hover effect should be triggered.
With the update to WordPress 3.3.x, the WordPress core now includes the entire jQueryUI suite packaged in the download. No longer do plugin and theme developers have to include their own custom builds of jQueryUI elements (hopefully they never did include custom builds of the elements, but there are quite a few plugins and themes that did). Instead, you simply need to enqueue the existing scripts.
Following is a full list of the jQueryUI elements included in WordPress, along with their “handles” for use with the wp_enqueue_script() function.