Attachments
Extensive usage instructions are available on GitHub Attachments allows you to simply append any number of items from your WordPress Media Library to Posts, Pages, and Custom Post Types. Associate Media items with posts The idea behind Attachments is to give developers the ability to directly associate Media items with any post. This is accomplished by adding a meta box to post edit screens as determined by the developer. Once Media items have been associated with a post, you’re able to retrieve those Attachments and include them directly within your template files using any specific markup you wish. Integrate Attachments within your theme with fine grained control Attachments does not automatically integrate itself with your theme. Since the idea behind Attachments is to allow integration of Media within posts using developer-crafted, unique markup, it’s up to you to integrate with your theme. The most basic integration includes editing the appropriate template file and adding your call(s) to Attachments. For example, if you have set up Attachments to be used with your Posts entries, edit single.php to include the following within The Loop: exist() ) : ?> Attachments Total Attachments: total(); ?> get() ) : ?> ID: id(); ?> Type: type(); ?> Subtype: subtype(); ?> URL: url(); ?> Image: image( 'thumbnail' ); ?> Source: src( 'full' ); ?> Size: filesize(); ?> Title Field: field( 'title' ); ?> Caption Field: field( 'caption' ); ?> That snippet will request all of the existing Attachments defined for the current Post within The Loop, and retrieve each itemized property for that Attachment. Using the provided details you’re able to integrate the attached Media items in any way you please. There is a lot more information on Attachments’ GitHub page. Please contribute! Roadmap Please see Attachments on GitHub Usage Extensive usage instructions are available on GitHub
Disable Media Pages
Completely disable “attachment” pages created by WordPress. By default, WordPress creates a page for each of your attachments. This is can be undesirable because of two reasons: Search engine optimization Attachment pages don’t have any content, except an image, so they provide little value and can negatively affect your SEO because they are so-called thin content. Even worse, attachment pages may in some cases rank higher than your actual content pages which leads to a poor user experience. Reserved slugs Attachment pages can accidentally reserve slugs on your site. Let’s say you upload an image named contact.jpeg, an attachment page https://example.com/contact is automatically created. If you then try to create a page named Contact, the URL for that page will be https://example.com/contact-2 which isn’t that great. How it works This plugin works by automatically setting all attachment slugs to an unique id, so they won’t conflict with your pages. If an attachment page is accessed, the plugin will set a 404 status code and display the “page not found” template. You can also mangle any existing attachment slugs so they won’t cause any issues in the future. WP CLI support The plugin supports WP CLI. Mangle existing attachment slugs wp disable-media-pages mangle Restore attachment slugs wp disable-media-pages restore Note for WordPress 6.4 WordPress 6.4 includes a new feature that allows you to disable attachment pages. However, this feature redirects attachment pages to the file URL instead of returning a 404 error. To completely disable attachment pages, you should use this plugin instead. The WP 6.4 feature also does not fix the issue where attachment pages reserve slugs for pages. Also, there is not user interface to enable or disable media pages, they are automatically disabled for new sites but remain enabled for existing sites. Because of these issues, I recommend you to use this plugin instead of the built-in feature. The plugin will be updated in the foreseeable future, at least until attachment pages are completely removed from WordPress core and older WordPress versions are no longer in use. Thanks Special thanks to Greg Schoppe for his research and inspiration that helped a lot with developing this plugin. Support the plugin Maintaining a WordPress plugin is a lot of work. If you like the plugin, please consider rating it on WordPress.org. You can also support me on GitHub sponsors. Thank you! If you are interested, you can also check out my other WordPress plugins: Disable Customizer Disable Drop Cap ACF Image Aspect Ratio Crop