it-swarm.com.de

Gibt es eine Benutzeroberfläche zum Bearbeiten des Permalinks eines Anhangs?

Wenn Sie das Tag [gallery] verwenden, wissen Sie, dass Permalinks für Bildanhänge wie blog.com/2011/03/18/post-permalink/attachment-permalink enden.

Die URL-Erweiterung des Post-Permalinks scheint auf dem Titel des Anhangs beim ersten Speichern zu basieren. Meines Wissens wird dieser Permalink jedoch nicht aktualisiert, wenn der Bildtitel in den Medientools bearbeitet wird. Eigentlich kann ich keine Möglichkeit finden, Permalinks für Anhänge zu bearbeiten.

Gibt es eine Benutzeroberfläche, die ich vermisse, mit der Benutzer den Permalink eines Anhangs bearbeiten können?

4
editor

Dadurch wird der Seite zum Bearbeiten von Anhängen ein Slug-Feld hinzugefügt, mit dem Sie es unabhängig ändern können, wann und wie Sie dies möchten.

Ziehen Sie es in ein Plugin oder in den functions.php Ihres Themas.

function wpse_12405_edit_attachment_name( $fields, $post ) {
    $fields['post_name'] = array(
        'label' => __( 'Slug' ),
        'value' => $post->post_name,
    );

    return $fields;
}

add_filter( 'attachment_fields_to_edit', 'wpse_12405_edit_attachment_name', 10, 2 );

function wpse_12405_save_attachment_name( $attachment, $POST_data ) {
    if ( ! empty( $POST_data['post_name'] ) )
        $attachment['post_name'] = $POST_data['post_name'];

    return $attachment;
}

add_filter( 'attachment_fields_to_save', 'wpse_12405_save_attachment_name', 10, 2);
12
TheDeadMedic

Es gibt ein Plugin Rename Media , das den Dateinamen ändert, wenn Sie den Titel bearbeiten.

3
fuxia

Die Lösung von TheDeadMedic funktioniert einwandfrei, aber ich würde empfehlen, beim Speichern des Filters sanitize_title () hinzuzufügen, um sicherzustellen, dass der Wert immer ein gültiger Slug ist:

function __save_attachment_name( $attachment, $POST_data )
{
    if ( !empty( $POST_data['post_name'] ) )
        $attachment['post_name'] = sanitize_title( $POST_data['post_name'] );
    return $attachment;
}
add_filter( 'attachment_fields_to_save', '__save_attachment_name', 10, 2);
2
Ov3rfly

WordPress speichert den ursprünglichen Dateinamen in der Datenbank als eindeutige Kennung für den Anhang. Leider gibt es meines Wissens keine Möglichkeit, dies in der Benutzeroberfläche zu ändern. Es ist nicht besonders praktisch, aber Sie müssten die Datei höchstwahrscheinlich erneut hochladen.

1
jhdenham