web-dev-qa-db-fra.com

Comment supprimer la section parent de l'URL de pièce jointe?

J'ai buddypress installé. Toutes les URL passent sous la structure d'URL de BP. Si une pièce jointe appartient à un document d'un groupe, l'URL est la suivante:

http://domain.com/groups/group-name/docs/doc-name/attachment-name

J'aimerais apprendre comment changer l'URL de la pièce jointe en:

http://domain.com/?attachment_id=123

Merci!

1
Jenny

L'URL de la pièce jointe est créée dans wp-includes/link-template.php dans la fonction get_attachment_link(). Et il existe un filtre pour vous, en passant l'URL WordPress et l'ID de publication pour la pièce jointe. Vous pouvez vous connecter à ce filtre et renvoyer l'URL dont vous avez besoin:

add_filter( 'attachment_link', 'wpse_56619_unprettify_attachment_url', 10, 2 );

function wpse_56619_unprettify_attachment_url( $link, $id )
{
    return home_url( "/?attachment_id=$id" );
}
2
fuxia