diff --git a/includes/class-displayfeaturedimagegenesis-admin.php b/includes/class-displayfeaturedimagegenesis-admin.php
index 6eff733..8926f3d 100644
--- a/includes/class-displayfeaturedimagegenesis-admin.php
+++ b/includes/class-displayfeaturedimagegenesis-admin.php
@@ -114,7 +114,7 @@ class Display_Featured_Image_Genesis_Admin {
$taxonomy = filter_input( INPUT_POST, 'taxonomy', FILTER_SANITIZE_STRING );
$taxonomy = ! is_null( $taxonomy ) ? $taxonomy : get_current_screen()->taxonomy;
- $image_id = is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : Display_Featured_Image_Genesis_Common::get_image_id( $term_meta['term_image'] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $term_meta['term_image'] );
$args = array(
'image_id' => $image_id,
diff --git a/includes/class-displayfeaturedimagegenesis-common.php b/includes/class-displayfeaturedimagegenesis-common.php
index 2f6ea8c..357c0e5 100644
--- a/includes/class-displayfeaturedimagegenesis-common.php
+++ b/includes/class-displayfeaturedimagegenesis-common.php
@@ -109,13 +109,8 @@ class Display_Featured_Image_Genesis_Common {
$displaysetting = get_option( 'displayfeaturedimagegenesis' );
$postspage_image = get_post_thumbnail_id( $postspage );
$fallback = $displaysetting['default'];
- $medium = absint( get_option( 'medium_size_w' ) );
-
- $fallback_id = $fallback;
- if ( ! is_numeric( $fallback ) ) {
- $fallback_id = self::get_image_id( $fallback ); // gets image id with attached metadata
- }
- $fallback_id = absint( $fallback_id );
+ $medium = (int) get_option( 'medium_size_w' );
+ $fallback_id = displayfeaturedimagegenesis_check_image_id( $fallback );
/**
* create a filter to use the fallback image
@@ -129,7 +124,7 @@ class Display_Featured_Image_Genesis_Common {
$image_id = $fallback_id;
if ( in_array( get_post_type(), $use_fallback ) ) {
- return $image_id;
+ return (int) $image_id;
}
}
@@ -152,7 +147,7 @@ class Display_Featured_Image_Genesis_Common {
$post_type = $object->post_type;
}
if ( ! empty( $displaysetting['post_type'][ $post_type ] ) ) {
- $image_id = is_numeric( $displaysetting['post_type'][ $post_type ] ) ? $displaysetting['post_type'][ $post_type ] : self::get_image_id( $displaysetting['post_type'][ $post_type ] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $displaysetting['post_type'][ $post_type ] );
/**
* use the custom post type featured image
@@ -161,7 +156,7 @@ class Display_Featured_Image_Genesis_Common {
*/
$use_cpt = apply_filters( 'displayfeaturedimagegenesis_use_post_type_image', array() );
if ( in_array( get_post_type(), $use_cpt ) ) {
- return $image_id;
+ return (int) $image_id;
}
}
}
@@ -174,7 +169,7 @@ class Display_Featured_Image_Genesis_Common {
$term_meta = get_option( "displayfeaturedimagegenesis_$t_id" );
// if there is a term image
if ( ! empty( $term_meta['term_image'] ) ) {
- $image_id = is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : self::get_image_id( $term_meta['term_image'] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $term_meta['term_image'] );
}
}
@@ -192,7 +187,7 @@ class Display_Featured_Image_Genesis_Common {
$use_tax_image = apply_filters( 'display_featured_image_genesis_use_taxonomy', array() );
if ( in_array( get_post_type(), $use_tax_image ) ) {
- return $image_id;
+ return (int) $image_id;
}
}
diff --git a/includes/class-displayfeaturedimagegenesis-settings.php b/includes/class-displayfeaturedimagegenesis-settings.php
index 948ad43..a7d0068 100644
--- a/includes/class-displayfeaturedimagegenesis-settings.php
+++ b/includes/class-displayfeaturedimagegenesis-settings.php
@@ -385,7 +385,7 @@ class Display_Featured_Image_Genesis_Settings {
return;
}
- $id = is_numeric( $id ) ? $id : Display_Featured_Image_Genesis_Common::get_image_id( $id );
+ $id = displayfeaturedimagegenesis_check_image_id( $id );
$preview = wp_get_attachment_image_src( (int) $id, 'medium' );
$image = sprintf( '

', $preview[0] );
return $image;
@@ -400,7 +400,7 @@ class Display_Featured_Image_Genesis_Settings {
* @since 2.3.0
*/
public function render_buttons( $id, $name ) {
- $id = is_numeric( $id ) ? $id : Display_Featured_Image_Genesis_Common::get_image_id( $id );
+ $id = displayfeaturedimagegenesis_check_image_id( $id );
$id = $id ? (int) $id : '';
printf( '', esc_attr( $name ), esc_attr( $id ) );
printf( '',
@@ -544,8 +544,8 @@ class Display_Featured_Image_Genesis_Settings {
*/
protected function validate_image( $new_value, $old_value, $label, $size_to_check ) {
- $new_value = is_numeric( $new_value ) ? $new_value : (int) Display_Featured_Image_Genesis_Common::get_image_id( $new_value );
- $old_value = is_numeric( $old_value ) ? $old_value : (int) Display_Featured_Image_Genesis_Common::get_image_id( $old_value );
+ $new_value = displayfeaturedimagegenesis_check_image_id( $new_value );
+ $old_value = displayfeaturedimagegenesis_check_image_id( $old_value );
$source = wp_get_attachment_image_src( $new_value, 'full' );
$valid = $this->is_valid_img_ext( $source[0] );
$width = $source[1];
@@ -588,8 +588,7 @@ class Display_Featured_Image_Genesis_Settings {
protected function validate_taxonomy_image( $new_value ) {
// if the image was selected using the old URL method
- $new_value = is_numeric( $new_value ) ? $new_value : Display_Featured_Image_Genesis_Common::get_image_id( $new_value );
- $new_value = (int) $new_value;
+ $new_value = displayfeaturedimagegenesis_check_image_id( $new_value );
$medium = get_option( 'medium_size_w' );
$source = wp_get_attachment_image_src( $new_value, 'full' );
$valid = $this->is_valid_img_ext( $source[0] );
diff --git a/includes/helper-functions.php b/includes/helper-functions.php
index 13b8f4e..15a0d9c 100644
--- a/includes/helper-functions.php
+++ b/includes/helper-functions.php
@@ -15,9 +15,8 @@
*
* @since 2.1.0
*/
-function display_featured_image_genesis_get_term_image_id() {
+function display_featured_image_genesis_get_term_image_id( $image_id = '' ) {
- $image_id = '';
$taxonomies = get_taxonomies();
$args = array( 'orderby' => 'count', 'order' => 'DESC' );
$terms = wp_get_object_terms( get_the_ID(), $taxonomies, $args );
@@ -26,12 +25,12 @@ function display_featured_image_genesis_get_term_image_id() {
$t_id = $term->term_id;
$term_meta = get_option( "displayfeaturedimagegenesis_$t_id" );
if ( ! empty( $term_meta['term_image'] ) ) {
- $image_id = is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : Display_Featured_Image_Genesis_Common::get_image_id( $term_meta['term_image'] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $term_meta['term_image'] );
break;
}
}
- return absint( $image_id );
+ return (int) $image_id;
}
@@ -57,14 +56,13 @@ function display_featured_image_genesis_get_term_image_url( $size = 'displayfeat
*
* @since 2.1.0
*/
-function display_featured_image_genesis_get_default_image_id() {
+function display_featured_image_genesis_get_default_image_id( $image_id = '' ) {
- $image_id = '';
$displaysetting = get_option( 'displayfeaturedimagegenesis' );
$fallback = $displaysetting['default'];
- $image_id = is_numeric( $fallback ) ? $fallback : Display_Featured_Image_Genesis_Common::get_image_id( $fallback );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $fallback );
- return absint( $image_id );
+ return (int) $image_id;
}
@@ -90,9 +88,9 @@ function display_featured_image_genesis_get_default_image_url( $size = 'displayf
*
* @since 2.1.0
*/
-function display_featured_image_genesis_get_cpt_image_id() {
+function display_featured_image_genesis_get_cpt_image_id( $image_id = '' ) {
- $image_id = $post_type = '';
+ $post_type = '';
$displaysetting = get_option( 'displayfeaturedimagegenesis' );
$object = get_queried_object();
if ( ! $object || is_admin() ) {
@@ -107,10 +105,10 @@ function display_featured_image_genesis_get_cpt_image_id() {
$post_type = $object->post_type;
}
if ( ! empty( $displaysetting['post_type'][ $post_type ] ) ) {
- $image_id = is_numeric( $displaysetting['post_type'][ $post_type ] ) ? $displaysetting['post_type'][ $post_type ] : Display_Featured_Image_Genesis_Common::get_image_id( $displaysetting['post_type'][ $post_type ] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $displaysetting['post_type'][ $post_type ] );
}
- return absint( $image_id );
+ return (int) $image_id;
}
/**
@@ -186,3 +184,15 @@ function display_featured_image_genesis_add_archive_thumbnails() {
);
}
+
+/**
+ * function to check image_id value, convert from URL if necessary
+ * @param string $image_id int or URL string
+ * @return int image ID
+ *
+ * @since 2.3.0
+ */
+function displayfeaturedimagegenesis_check_image_id( $image_id = '' ) {
+ $image_id = is_numeric( $image_id ) ? $image_id : Display_Featured_Image_Genesis_Common::get_image_id( $image_id );
+ return $image_id;
+}
diff --git a/includes/widgets/displayfeaturedimagegenesis-cpt-archive-widget.php b/includes/widgets/displayfeaturedimagegenesis-cpt-archive-widget.php
index 5258428..554f251 100644
--- a/includes/widgets/displayfeaturedimagegenesis-cpt-archive-widget.php
+++ b/includes/widgets/displayfeaturedimagegenesis-cpt-archive-widget.php
@@ -104,12 +104,8 @@ class Display_Featured_Image_Genesis_Widget_CPT extends WP_Widget {
echo $args['before_title'] . apply_filters( 'widget_title', $instance['title'], $instance, $this->id_base ) . $args['after_title'];
}
- $image = '';
- if ( 'post' === $instance['post_type'] ) {
- $image_id = $postspage_image;
- } else {
- $image_id = is_numeric( $option['post_type'][ $post_type->name ] ) ? $option['post_type'][ $post_type->name ] : Display_Featured_Image_Genesis_Common::get_image_id( $option['post_type'][ $post_type->name ] );
- }
+ $image = '';
+ $image_id = 'post' === $instance['post_type'] ? $postspage_image : displayfeaturedimagegenesis_check_image_id( $option['post_type'][ $post_type->name ] );
$image_src = wp_get_attachment_image_src( $image_id, $instance['image_size'] );
if ( $image_src ) {
$image = '
';
diff --git a/includes/widgets/displayfeaturedimagegenesis-taxonomy-widget.php b/includes/widgets/displayfeaturedimagegenesis-taxonomy-widget.php
index c5db546..50a9d87 100644
--- a/includes/widgets/displayfeaturedimagegenesis-taxonomy-widget.php
+++ b/includes/widgets/displayfeaturedimagegenesis-taxonomy-widget.php
@@ -97,7 +97,7 @@ class Display_Featured_Image_Genesis_Widget_Taxonomy extends WP_Widget {
}
if ( $term_meta ) {
- $image_id = is_numeric( $term_meta['term_image'] ) ? $term_meta['term_image'] : Display_Featured_Image_Genesis_Common::get_image_id( $term_meta['term_image'] );
+ $image_id = displayfeaturedimagegenesis_check_image_id( $term_meta['term_image'] );
$image_src = wp_get_attachment_image_src( $image_id, $instance['image_size'] );
if ( $image_src ) {
$image = '
';