Holen Sie sich Anhang von Slug

Ich möchte ein Bild erhalten, indem ich einen bestimmten Slug festlege und dann diese Adresse im Bild src-Code wiedergebe.

Der Slug für das Bild wäre “Book-Site-Header”

Ich habe die get_wp_attachment und get_wp_attachment_metadata im WordPress-Codex durchgesehen, aber keiner erwähnt den Slug. Schnecken müssen einzigartig sein und werden in der database gespeichert, so dass es möglich sein muss, sie basierend auf der Schnecke zu finden und dann die zugehörige Datei-URL zu bekommen.

Bild von Schneckenbereich

Solutions Collecting From Web of "Holen Sie sich Anhang von Slug"

Ein Anhang ist nur ein Post mit dem post_status = inherit und dem post_type = attachment , also kann mit WP_Query oder get_posts abgefragt werden.

Beachten Sie, dass slug ( post_name ) für jeden post_name eindeutig ist .

 $_header = get_posts('post_type=attachment&name=book-site-header&posts_per_page=1&post_status=inherit'); $header = $_header ? array_pop($_header) : null; $header_url = $header ? wp_get_attachment_url($header->ID) : ''; 

Sie können auch den obigen Code verwenden, um Ihre eigene benutzerdefinierte function zu erstellen

 function get_attachment_url_by_slug( $slug ) { $args = array( 'post_type' => 'attachment', 'name' => sanitize_title($slug), 'posts_per_page' => 1, 'post_status' => 'inherit', ); $_header = get_posts( $args ); $header = $_header ? array_pop($_header) : null; return $header ? wp_get_attachment_url($header->ID) : ''; } 

und dann

 $header_url = get_attachment_url_by_slug('book-site-header');