-
-
Save brajeshwar/2966576 to your computer and use it in GitHub Desktop.
Set featureed image automaticly on save post/page
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: Set featured image | |
* Plugin URI: http://bueltge.de | |
* Description: Set featureed image automaticly on save post/page | |
* Version: 1.0.0 | |
* Author: Frank Bültge | |
* Author URI: http://bueltge.de | |
* License: GPLv3 | |
*/ | |
// This file is not called by WordPress. We don't like that. | |
! defined( 'ABSPATH' ) and exit; | |
if ( ! function_exists( 'fb_set_featured_image' ) ) { | |
add_action( 'save_post', 'fb_set_featured_image' ); | |
/** | |
* Set featured image on posts | |
* | |
*/ | |
function fb_set_featured_image() { | |
if ( has_post_thumbnail( get_the_ID() ) ) | |
return; | |
$args = array( | |
'numberposts' => 1, | |
'order' => 'ASC', // DESC for the last image | |
'post_mime_type' => 'image', | |
'post_parent' => get_the_ID(), | |
'post_status' => NULL, | |
'post_type' => 'attachment' | |
); | |
$attached_image = get_children( $args ); | |
if ( $attached_image ) { | |
foreach ( $attached_image as $attachment_id => $attachment ) | |
set_post_thumbnail( get_the_ID(), $attachment_id ); | |
} | |
} | |
} | |
if ( ! function_exists( 'fb_add_thumb_column' ) ) { | |
// posts columns | |
add_filter( 'manage_posts_columns', 'fb_add_thumb_column' ); | |
add_action( 'manage_posts_custom_column', 'fb_add_thumb_value', 10, 2 ); | |
// pages columns | |
add_filter( 'manage_pages_columns', 'fb_add_thumb_column' ); | |
add_action( 'manage_pages_custom_column', 'fb_add_thumb_value', 10, 2 ); | |
/** | |
* Add description for table head | |
* | |
* @param $cols Array | |
* @return $cols Array | |
*/ | |
function fb_add_thumb_column( $cols ) { | |
$cols['thumbnail'] = __('Thumbnail'); | |
return $cols; | |
} | |
/** | |
* Add thumbnail, if exist | |
* | |
* @param $column_name String | |
* @param $post_id Integer | |
*/ | |
function fb_add_thumb_value( $column_name, $post_id ) { | |
if ( 'thumbnail' !== $column_name ) | |
return; | |
$width = (int) 35; | |
$height = (int) 35; | |
$args = array( | |
'numberposts' => 1, | |
'order' => 'ASC', // DESC for the last image | |
'post_mime_type' => 'image', | |
'post_parent' => get_the_ID(), | |
'post_status' => NULL, | |
'post_type' => 'attachment' | |
); | |
$attached_image = get_children( $args ); | |
if ( $attached_image ) { | |
foreach ( $attached_image as $attachment_id => $attachment ) | |
echo wp_get_attachment_image( $attachment_id, array( $width, $height ), TRUE ); | |
} else { | |
echo __( 'None' ); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment