true ) );
unset( $post_types['attachment'] );
if ( empty( $post_types ) )
return;
foreach ( $post_types as $post_type ) {
add_filter( "manage_{$post_type}_posts_columns", array( $this, 'thumbnail_column' ) );
add_action( "manage_{$post_type}_posts_custom_column", array( $this, 'show_thumbnail' ), 10, 2 );
}
add_action( 'admin_enqueue_scripts', array( $this, 'admin_enqueue_scripts' ) );
add_action( 'admin_print_styles', array( $this, 'admin_header_print_styles' ) );
add_action( 'admin_print_footer_scripts', array( $this, 'admin_print_footer_scripts' ) );
}
/**
* Load plugin textdomain for transration
*
* @since 1.0.0
* @access public
*
* @return void
*/
public function load_plugin_textdomain() {
load_plugin_textdomain( 'aft', false, basename( dirname( __FILE__ ) ) . '/languages' );
}
/**
* Add donate link to plugin action links
*
* @since 1.0.0
* @access public
*
* @param array $actions
* @return array
*/
public function donate_link( $actions ) {
$actions['settings'] = '' . __( 'Buy Me A Beer', 'aft' ) . '';
return $actions;
}
/**
* Add thumbnail column
*
* @since 1.0.0
* @access public
*
* @param array $columns An array of column names.
* @return array
*/
public function thumbnail_column( $columns ) {
$columns['aft_featured_thumbnail'] = __( 'Thumbnail', 'aft' );
return $columns;
}
/**
* Show post featured image
*
* @since 1.0.0
* @access public
*
* @param string $column_name The name of the column to display.
* @param int $post_id The current post ID.
* @return void
*/
public function show_thumbnail( $column_name, $post_id ) {
if ( 'aft_featured_thumbnail' != $column_name )
return;
$tid = get_post_thumbnail_id( $post_id );
if ( empty( $tid ) )
return;
$image_attributes = wp_get_attachment_image_src( $tid, 'full' );
$url = $image_attributes[0];
// Print thumbnail elements
printf( '%3$s',
esc_url( $url ),
'aft-magnific-link',
get_the_post_thumbnail( $post_id, 'thumbnail' )
);
}
/**
* Enqueue magnigic scripts
*
* @since 1.0.0
* @access public
*
* @return void
*/
public function admin_enqueue_scripts( $hook ) {
wp_enqueue_style( 'aft-magnific', plugins_url( 'magnific-popup-min.css', __FILE__ ) );
wp_enqueue_script( 'aft-magnific', plugins_url( 'jquery.magnific-popup.min.js', __FILE__ ), array( 'jquery' ), '0.9.9', true );
}
/**
* Print style code
*
* @since 1.0.0
* @access public
*
* @return void
*/
public function admin_header_print_styles() {
$css = '.aft_featured_thumbnail img { width: 40px;height: auto;vertical-align: middle; border-radius: 5px; } .aft-magnific-link{ margin-left: 20px; display: inline-block; }';
wp_add_inline_style( 'wp-admin', $css );
}
/**
* Print script code at the footer
*
* @since 1.0.0
* @access public
*
* @return void
*/
public function admin_print_footer_scripts() {
?>
run();
}