Make WordPress Core

Opened 16 years ago

Closed 15 years ago

#12956 closed enhancement (duplicate)

© and ™ not stripped from sanitize_title

Reported by: thomask Owned by: ryan
Priority: normal Milestone:
Component: Permalinks Version:
Severity: normal Keywords:
Cc: Focuses:

Description

© and ™ (© ™) and probably many other symbols are not stripped out when sanitizing title.

quick workaround:

function mc_sanitize_title( $title ) {
	return str_replace(array("%e2%84%a2", "%c2%a9"), "", $title);
}
add_filter('sanitize_title', 'mc_sanitize_title');

but i guess that there should be some most robust and standard solution, e.g. using PHP transliteration first and then removing anything but alphanumeric, coma and underscore like in this function

function friendly_url($raw_title) {
    $url = $raw_title;
    $url = preg_replace('~[^\\pL0-9_]+~u', '-', $url);
    $url = trim($url, "-");
    $url = iconv("utf-8", "us-ascii//TRANSLIT", $url);
    $url = strtolower($url);
    $url = preg_replace('~[^-a-z0-9_]+~', '', $url);
    return $url;
}

this should also create nice url even for special alphabets. (setlocale must be set, but imho it is somewhere in wordpress core)

Change History (6)

#1 @unsalkorkmaz
16 years ago

  • Cc unsalkorkmaz added

#3 @sivel
16 years ago

  • Milestone 3.03.1
  • Type defect (bug)enhancement
  • Version 3.0

Punting to 3.1.

#4 @hakre
16 years ago

I wonder if those chars should be stripped at all. They look valid in a posts, title, aren't they?

#5 @nacin
16 years ago

  • Milestone Awaiting TriageFuture Release

#6 @SergeyBiryukov
15 years ago

  • Milestone Future Release
  • Resolutionduplicate
  • Status newclosed

Merged into the patch in #10797.

Note: See TracTickets for help on using tickets.