-
-
Save chrisdavidmiles/31fd0b6dfb4716ee9bfa34ca68b6cb57 to your computer and use it in GitHub Desktop.
WordPress Plugin: Automatically Set the Featured Image
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Plugin Name: Automatically Set the Featured Image | |
* Plugin URI: https://gist.github.com/chrisdavidmiles/31fd0b6dfb4716ee9bfa34ca68b6cb57 | |
* Description: When a post is saved or updated, if a featured image is not set, the featured image will be set to the first image in the post. | |
* Author: Jonathan Dingman | |
* Author URI: https://web.archive.org/web/20170926163348/http://wpforce.com/automatically-set-the-featured-image-in-wordpress/ | |
* Version: 0.1 | |
*/ | |
if ( ! defined( 'ABSPATH' ) ) die; | |
// Set Featured Image - Function | |
function cdm_autoset_featured() { | |
global $post; | |
$already_has_thumb = has_post_thumbnail($post->ID); | |
if (!$already_has_thumb) { | |
$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" ); | |
if ($attached_image) { | |
foreach ($attached_image as $attachment_id => $attachment) { | |
set_post_thumbnail($post->ID, $attachment_id); | |
} | |
} | |
} | |
} | |
// Set Featured Image - Automation | |
add_action('the_post', 'cdm_autoset_featured'); | |
add_action('save_post', 'cdm_autoset_featured'); | |
add_action('draft_to_publish', 'cdm_autoset_featured'); | |
add_action('new_to_publish', 'cdm_autoset_featured'); | |
add_action('pending_to_publish', 'cdm_autoset_featured'); | |
add_action('future_to_publish', 'cdm_autoset_featured'); | |
?> |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment