Posted Post

Posted People, Posted Life.

Archive for June, 2008

Ultimate WP Post Name URL Sanitize Solution

Few days ago, I was not satisfied with the ugly URL of some post, so I hacked “sanitize_title” function. After I said that time, I also not satisfied with super-long URL and want short them. After short WP category permalink structure today, I put more hacked code in sanitize_title function for short URL. Anyhow, shit happens and I noticed sanitize_title function also used almost everywhere, special when normal visitor visit and process the URL. I don’t want to explain how this mess up, just forget it.

So, I need new method of short and nice URL for article post. I need find a place for “apply_filters” or “do_action“, after quite long time track from /wp-admin/post.php, finally I found at sanitize_post_field function, $value = apply_filters(”pre_$field”, $value); to pretreat all submit data.

Here is my filter: Read the rest of this entry »

Single “Category Permalink Structure”

What is SINGLE “Category Permalink Structure”?

Here is an example:

One of my blog category URL looks like this before:
http://fashion.postedpost.com/category/fashion-house/accessories/ties/

After single it, it will look like:
http://fashion.postedpost.com/category/ties/

Why we need shorter category permalink?

  1. Shorter is better, you know, size is always an issue.
  2. Change categories structure anytime without change urls
  3. Avoid duplicate content issue, because both of URLs are display a same webpage.

How to do it.

Find category-template.php in WordPress wp-includes folder, find this function: function get_category_link($category_id)

Comment the following lines:

//if ( $parent = $category->parent )
// $category_nicename = get_category_parents($parent, false, ‘/’, true) . $category_nicename;

(or get a plugin if you like)

Hack WordPress “sanitize_title” Function

I use English as title only, recently I noticed some of my blog post has “%” in url (e.g.) or too too many dashes “—” in url (e.g.). !!!!! (2008/6/23 .. forget this method, check Ultimate WP Post Name URL Sanitize Solution)

So unacceptable. So I check the wordpress code and update the following:

function sanitize_title($title, $fallback_title = ”) {
$title = strip_tags($title);
$title = preg_replace(’/&.+?;/’, ”, $title); // Kill entities
$title = preg_replace(”/[^a-z0-9]+/i”, ” “, strtolower($title)); // Remove all non-english and non-number code
$title = trim(preg_replace(”/ {2,}/i”, ” “, $title)); // Remove extra space
$title = apply_filters(’sanitize_title’, $title);
if (empty($title)) {
$title = $fallback_title;
}
return $title;
}

at “formatting.php”.

Next thing: I serious think about shorter very long url (the post_name is varchar(200) in database)

Fairness, Idealism and Other Atrocities

I am a republican, I am on the RIGHT hand side of life. Check what I got today, Commencement advice you’re unlikely to hear elsewhere. very decent and useful, worth read and think, by P.J. O’Rourke

Well, here you are at your college graduation. And I know what you’re thinking: “Gimme the sheepskin and get me outta here!” But not so fast. First you have to listen to a commencement speech.

Don’t moan. I’m not going to “pass the wisdom of one generation down to the next.” I’m a member of the 1960s generation. We didn’t have any wisdom.

We were the moron generation. We were the generation that believed we could stop the Vietnam War by growing our hair long and dressing like circus clowns. We believed drugs would change everything — which they did, for John Belushi. We believed in free love. Yes, the love was free, but we paid a high price for the sex. Read the rest of this entry »

Hello My World!

Welcome to PostedPost.com. This is my first post. I already edited it and began blogging! :)