J'ai besoin de changer le slug du poste d'attachement. Actuellement, il montre le nom de la pièce jointe, je veux qu'il soit remplacé par l'identifiant de la pièce jointe.
Edit: Grâce à la suggestion de TheDeadMedic, je vois maintenant les URL avec leur nom de domaine changé en id dans url (slug of the url.). Mais de toute façon, il ajoute maintenant/attachment/à l’url juste avant slug (id). Comment dois-je supprimer cette/pièce jointe /.
Utilisez le crochet add_attachment
pour mettre à jour le slug une fois la pièce jointe insérée:
function wpse_182454_attachment_id_as_slug( $post_id ) {
if ( get_post_field( 'post_name', $post_id ) != $post_id ) {
wp_update_post(
array(
'ID' => $post_id,
'post_name' => ( string ) $post_id,
)
);
}
}
add_action( 'add_attachment', 'wpse_182454_attachment_id_as_slug' );