Wie filtere ich Titel- und Alt-Attribute im Galerie-Shortcode?

Ich zeige eine Post-Galerie in einem benutzerdefinierten Post-Typ an, indem ich Folgendes in meiner single-custom.php-Vorlage verwende:

ID.'" link="file" columns="5" orderby="menu_order"]'); ?>

Eines der Dinge, die in der Ausgabe enthalten sind, ist title="filename" im -Tag, so:

DSC_0036

Ich möchte das Titelattribut nicht ausgeben. Meistens möchte ich keine beschissenen Dateinamen im Hover-Over-Text, aber es gibt Hunderte von Bildern und ich bin nicht bereit, in die Mediengalerie zu gehen und den Titel für jeden zu bearbeiten. Am liebsten würde ich auch das alt Attribut in den Post-Namen ändern.

Gibt es eine Möglichkeit, die Galerie zu filtern, um den Postnamen in den Attributen alt und title anstelle des Dateinamens auszugeben?

Solutions Collecting From Web of "Wie filtere ich Titel- und Alt-Attribute im Galerie-Shortcode?"

Der [gallery] shortcode wird von gallery_shortcode() analysiert, der gallery_shortcode() aufruft, der wiederum wp_get_attachment_image() . Diese letztere function schreibt das -Tag mit dem title Attribut. Sie haben Glück, denn die Attribute werden über wp_get_attachment_image_attributes gefiltert, so dass Sie sich daran wp_get_attachment_image_attributes und den title entfernen können.

Dazu befestigen Sie den Haken, bevor Sie den Kurzwahlcode aufrufen, und entfernen ihn, nachdem Sie dies getan haben. Sie können dies entweder in Ihrer Vorlage tun, wenn es einmalig ist, oder, wenn Sie fortgeschrittener sind, “entführen” Sie den [gallery] shortcode mit Ihrer eigenen function, die den Hook hinzufügt, die originale gallery_shortcode() function gallery_shortcode() und entfernt den Haken.

Das ist sehr nützlich, danke euch beiden. Sie können auch ein Copyright- $attr['title'] = '© ' . date("Y") . ' Copyright ' . get_option('blogname'); mit dem automatisch gesetzten Jahr hinzufügen: $attr['title'] = '© ' . date("Y") . ' Copyright ' . get_option('blogname'); $attr['title'] = '© ' . date("Y") . ' Copyright ' . get_option('blogname');