Retirer tous les caractères spéciaux des permaliens

Par défaut Word­Press trans­forme les perma­liens pour reti­rer les carac­tères spéciaux fran­çais les plus courants (les lettres) mais il oublie certains utili­sés couram­ment dans la typo­gra­phie fran­çaise et parti­cu­liè­re­ment l’espace insé­cable. Cela donne une URL qu’il est quelque fois impos­sible de parta­ger par les boutons de partage sur les réseaux sociaux. Le code suivant est à placer dans le fichier functions.php de votre thème ou le plugin MU que vous avez créé en l’adaptant à vos besoins. Il suffit de raju­ter les carac­tères visés en s’inspirant de la table suivante dans la ligne (%ef%b8%8f|™|®|©|™|®|©|™|®|© en respec­tant le format |code.

Code

add_action('wp_insert_post_data', __NAMESPACE__ . 'processPermalink');
/**
 * Processes the permalink so we can remove any characters that may cause a problem when communicating
 * with the API.
 *
 * @param  array $data The array of information about the post.
 * @return array $data The data without the malformed information in the post name for the URL.
 */
public function processPermalink($data)
{
    if (!in_array($data['post_status'], array('draft', 'pending', 'auto-draft'))) {
        $data['post_name'] =
            preg_replace(
                '/(%ef%b8%8f|™|®|©|™|®|©|™|®|©)/',
                '',
                $data['post_name']
            );
    }
    return $data;
}

Source : https://​tommc​far​lin​.com/​r​e​m​o​v​e​-​s​p​e​c​i​a​l​-​c​h​a​r​a​c​t​e​r​s​-​f​r​o​m​-​p​e​r​m​a​l​i​n​ks/

If you have found a spel­ling error, please, noti­fy us by selec­ting that text and pres­sing Ctrl+Enter.

Ce site embarque des cookies pour vous offrir la meilleur expérience possible

Spelling error report

The following text will be sent to our editors: