prepend_attachment( string $content ): string

In this article

Wraps attachment in paragraph tag before content.

Parameters

$contentstringrequired

Return

string

Source

function prepend_attachment( $content ) {	$post = get_post();	if ( empty( $post->post_type ) || 'attachment' !== $post->post_type ) {	return $content;	}	if ( wp_attachment_is( 'video', $post ) ) {	$meta = wp_get_attachment_metadata( get_the_ID() );	$atts = array( 'src' => wp_get_attachment_url() );	if ( ! empty( $meta['width'] ) && ! empty( $meta['height'] ) ) {	$atts['width'] = (int) $meta['width'];	$atts['height'] = (int) $meta['height'];	}	if ( has_post_thumbnail() ) {	$atts['poster'] = wp_get_attachment_url( get_post_thumbnail_id() );	}	$p = wp_video_shortcode( $atts );	} elseif ( wp_attachment_is( 'audio', $post ) ) {	$p = wp_audio_shortcode( array( 'src' => wp_get_attachment_url() ) );	} else {	$p = '<p class="attachment">';	// Show the medium sized image representation of the attachment if available, and link to the raw file.	$p .= wp_get_attachment_link( 0, 'medium', false );	$p .= '</p>';	}	/** * Filters the attachment markup to be prepended to the post content. * * @since 2.0.0 * * @see prepend_attachment() * * @param string $p The attachment HTML output. */	$p = apply_filters( 'prepend_attachment', $p );	return "$p\n$content"; } 

Hooks

apply_filters( ‘prepend_attachment’, string $p )

Filters the attachment markup to be prepended to the post content.

Changelog

VersionDescription
2.0.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.