Recently I was developing a few forms for a project at work and wanted a fairly specific format for the input of one of the fields. It was a time of day, and since the <time> element isn’t very well supported in browsers yet, I opted for my own text input and validation. While I do provide some examples for users and check the input on the server side, I opted for input masks on the front end of development to make the form validation easier, and more importantly, to make using the form easier.
Millennials are so different from everyone else, am I right? In this post I explore how Millennials are probably the worst generation to ever exist.
This week I rolled out a new design for Responsive Design with WordPress’s site. I decided that on top of the site starting to feel a little stale, there wasn’t a whole lot of information about the book aside from a little blurb. I added a bit more that will hopefully give visitors a better idea of what the book is about and what others think about it. Because of this, I want to celebrate by doing the biggest giveaway I’ve done.
Recently I was doing some work where I was importing RSS entries into a Custom Post Type in WordPress. Since there were no common IDs between the feed and WordPress, to prevent duplicate entries I tried comparing titles. This also proved to be an issue as titles aren’t always unique, and they weren’t in this case. I settled on comparing slugs; WordPress creates a unique slug for each post from the title, and there’s a way to know what that slug is going to be before the post is added.
Assuming that our RSS entries are in an Object called
$item, we do this to get the slug:
$title= wp_strip_all_tags($item->title); $slug = sanitize_title($title);
The first function will remove all HTML tags from the title that was passed in; it was unclear if the next function,
sanitize_title(), did that, so I took the extra precaution.
sanitize_title() is where the magic happens. It takes a now HTML-less string and converts it to a string that can be used in URLs; this is the would-be slug. You can then pass that slug to this query to see if a post with this slug already exists:
$post_if = $wpdb->get_var("SELECT count(post_title) FROM $wpdb->posts WHERE post_name like '".$slug."'");
$post_if is < 1 at this point, the post doesn’t exist. Do with it what you will! If that’s the specific slug you want to use, you can also add it to the post array like this(assuming you’re using $post_array):
$post_array['post_name'] = $slug;
And there you have it! Feel free to comment your thoughts, improvements, and clarifications.