J'ai un site WordPress avec un tas de messages. Mon problème est que je dois changer les URL de
website.com/post-name
à
website.com/specialword/post-name
Le "specialword" est ce que je dois ajouter devant ces noms, mais UNIQUEMENT pour le type de message - posts.
Est-ce que quelqu'un peut m'aider?
J'en ai terriblement besoin, principalement pour des raisons de référencement, afin que je puisse conserver les URL du site Web précédent qui n'ont pas été créées dans WordPress.
Je vous remercie! Slavisa
Vous pouvez le faire à partir de Settings > Permalinks
.
Sélectionnez le bouton radio Custom Structure
et placez-le dans le champ de texte à côté:
/myspecialword/%postname%
Travaux.
Je pense que la seule solution (la plus simple) est de changer permastruct
s pour les types de publication personnalisés après les avoir enregistrés et d'ajouter votre "mot magique" à la structure de lien permanent.
Définissez donc (dans les paramètres de parmalinks) votre structure de lien permanent sur: /my-magic-Word/%postname%/
, puis modifiez manuellement les permastructure de vos types de publication personnalisés.
Vous pouvez le faire comme suit (ajoutez-le à votre fichier functions.php):
function my_init() {
global $wp_rewrite;
// Let's assume you register your CPT Books in here
$args = array( 'public' => true, 'label' => 'Books' );
register_post_type( 'book', $args );
// after registering your CPT, you have to change it's permastruct
$wp_rewrite->extra_permastructs['book']['struct'] = "book/%book%"; // it's without 'my-magic-Word' - you should do this for every CPT that should not have 'my-magic-Word' in url
}
add_action('init', 'my_init');
Accédez ensuite aux paramètres de permalien et enregistrez-les pour effacer les règles de réécriture.
PS Je pense que vous pourriez essayer d'utiliser with_front
param, mais je ne suis pas sûr que ce sera plus facile (ou même si cela fonctionnera) que cette solution.