web-dev-qa-db-fra.com

Ajouter des liens de page au contenu qui se convertit automatiquement en jolis permaliens?

Est-il possible d'insérer des liens dans l'éditeur wysiwyg de Wordpress qui seront convertis en jolis permaliens lorsqu'ils seront activés?

c'est-à-dire que les liens seraient ceci sans jolis liens permanents:

/? p = 13

Mais avec les permaliens, cela deviendrait:

/ mypagename /

Je pense que je devrais utiliser un shortcode pour le faire correctement? Quelque chose qui utiliserait l'ID et wp_list_pages () pour les pages au moins ... il suffit de penser à un moyen de faire en sorte que les liens dans le contenu fonctionnent lorsque les permaliens sont activés et désactivés.

Merci

osu

1
Osu

Voici un exemple de shortcode simple qui prend ID comme argument et un lien permanent pour lui:

function link_from_id($atts) {

    if( isset($atts['id']) )
        return get_permalink( (int)$atts['id'] );
}

add_shortcode('link', 'link_from_id');

Usage:

[link id=1]

PS en passant, les non-jolies permaliens continueront à fonctionner correctement si vous activez le mode joli plus tard et, si je me souviens bien, seront redirigés vers la jolie version canonique.

2
Rarst