Allow dot in wordpress permalinks (only for categories)

I’m using domain names as category.

For instance I have category name google.com

Read More

But wordpress converts dot with hyphen in permalinks.

Can someone tell me how to allow dot in category permalink?

Related posts

1 comment

  1. Well in case you need to change look of generated permalinks take a look to sanitize_title_with_dashes function which is one of filters of the sanitize_title hook filters.

    If that only one request for this filter (avoid replacing .) you can copy/paste this function with a same name and remove original reference and add new.

        remove_filter('sanitize_title', 'sanitize_title_with_dashes');
    add_filter('sanitize_fitler', 'sanitize_filter_se_119069');
    function sanitize_filter_se_119069($title, $raw_title = '', $context = 'display'){
        $title = strip_tags($title);
        // Preserve escaped octets.
        $title = preg_replace('|%([a-fA-F0-9][a-fA-F0-9])|', '---$1---', $title);
        // Remove percent signs that are not part of an octet.
        $title = str_replace('%', '', $title);
        // Restore octets.
        $title = preg_replace('|---([a-fA-F0-9][a-fA-F0-9])---|', '%$1', $title);
    
        if (seems_utf8($title)) {
            if (function_exists('mb_strtolower')) {
                $title = mb_strtolower($title, 'UTF-8');
            }
            $title = utf8_uri_encode($title, 200);
        }
    
        $title = strtolower($title);
        $title = preg_replace('/&.+?;/', '', $title); // kill entities
    
    //  $title = str_replace('.', '-', $title);
    
        if ( 'save' == $context ) {
            // Convert nbsp, ndash and mdash to hyphens
            $title = str_replace( array( '%c2%a0', '%e2%80%93', '%e2%80%94' ), '-', $title );
    
            // Strip these characters entirely
            $title = str_replace( array(
                // iexcl and iquest
                '%c2%a1', '%c2%bf',
                // angle quotes
                '%c2%ab', '%c2%bb', '%e2%80%b9', '%e2%80%ba',
                // curly quotes
                '%e2%80%98', '%e2%80%99', '%e2%80%9c', '%e2%80%9d',
                '%e2%80%9a', '%e2%80%9b', '%e2%80%9e', '%e2%80%9f',
                // copy, reg, deg, hellip and trade
                '%c2%a9', '%c2%ae', '%c2%b0', '%e2%80%a6', '%e2%84%a2',
                // grave accent, acute accent, macron, caron
                '%cc%80', '%cc%81', '%cc%84', '%cc%8c',
            ), '', $title );
    
            // Convert times to x
            $title = str_replace( '%c3%97', 'x', $title );
        }
    
        $title = preg_replace('/[^%a-z0-9 _-]/', '', $title);
        $title = preg_replace('/s+/', '-', $title);
        $title = preg_replace('|-+|', '-', $title);
        $title = trim($title, '-');
    
        return $title;
    }
    

Comments are closed.