*/ class Advanced_Related_Posts_Data { public static function get_arp_validated_data_from_array(){ global $wpdb; // Array for related posts validated options $settings = array(); $options = array(); $name_prefix = 'arp_'; $default_thumbnail = ADVANCED_RELATED_POSTS_ADMIN_URL . '/images/icons/icon-arp-default.png'; $results = Advanced_Related_Posts_Settings_Actions::ays_get_all_settings( 'under_posts' ); $options = array(); foreach($results as $o_key => $o_value){ if(isset($o_value)){ $meta_key = isset($o_value['meta_key']) ? $o_value['meta_key'] : ""; $meta_value = isset($o_value['meta_value']) ? $o_value['meta_value'] : ""; $options[$meta_key] = $meta_value; } } // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ====================== General Tab ====================== // ======================== START ========================= // enable Uunder posts $settings[ $name_prefix . 'under_posts_enable_under_post' ] = ( isset($options[ $name_prefix . 'under_posts_enable_under_post' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_under_post' ] )) == 'off' ) ? 'off' : 'on'; // Uunder posts count $settings[ $name_prefix . 'under_posts_count' ] = (isset($options[ $name_prefix . 'under_posts_count' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_count' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_count' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_count' ] ) ) : 3; // Enable for all post types $options[ $name_prefix . 'under_posts_all_post_type' ] = ( isset($options[ $name_prefix . 'under_posts_all_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_all_post_type' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_all_post_type' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_all_post_type' ] = (isset($options[ $name_prefix . 'under_posts_all_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_all_post_type' ] ) == 'on') ? true : false; // For selected post types $settings[ $name_prefix . 'under_posts_selected_post_type' ] = ( isset($options[ $name_prefix . 'under_posts_selected_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_selected_post_type' ] ) != '' ) ? array_map('sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'under_posts_selected_post_type' ] ) , true) ) : array(); // Exclude for categories $settings[ $name_prefix . 'under_posts_exclude_categories_ids' ] = ( isset($options[ $name_prefix . 'under_posts_exclude_categories_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_exclude_categories_ids' ] ) != '' ) ? array_map('sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'under_posts_exclude_categories_ids' ] ) , true) ) : array(); // Exclude posts ids $settings[ $name_prefix . 'under_posts_exclude_post_ids' ] = (isset($options[ $name_prefix . 'under_posts_exclude_post_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_exclude_post_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_exclude_post_ids' ] ) : ''; // Display on the front page $options[ $name_prefix . 'under_posts_display_front_page' ] = ( isset($options[ $name_prefix . 'under_posts_display_front_page' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_display_front_page' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_display_front_page' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_display_front_page' ] = (isset($options[ $name_prefix . 'under_posts_display_front_page' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_display_front_page' ] ) == 'on') ? true : false; // ============================================================= // ====================== General Tab ====================== // ======================= END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ===================== Relevance Tab ===================== // ======================== START ======================== // Order posts query $settings[ $name_prefix . 'under_posts_order_posts_query' ] = (isset($options[ $name_prefix . 'under_posts_order_posts_query' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_order_posts_query' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_order_posts_query' ] ) : 'random'; // Only from same $settings[ $name_prefix . 'under_posts_only_from_same' ] = ( isset($options[ $name_prefix . 'under_posts_only_from_same' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_only_from_same' ] ) != '' ) ? array_map( 'sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'under_posts_only_from_same' ] ) , true) ) : array('same_post_type'); // Strongness of matching $settings[ $name_prefix . 'under_posts_strongness_of_matching' ] = (isset($options[ $name_prefix . 'under_posts_strongness_of_matching' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_strongness_of_matching' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_strongness_of_matching' ] ) : 'gradually_weakening'; // Limit to same author $options[ $name_prefix . 'under_posts_limit_to_same_author' ] = ( isset($options[ $name_prefix . 'under_posts_limit_to_same_author' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_limit_to_same_author' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_limit_to_same_author' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_limit_to_same_author' ] = (isset($options[ $name_prefix . 'under_posts_limit_to_same_author' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_limit_to_same_author' ] ) == 'on') ? true : false; // Display Order results $settings[ $name_prefix . 'under_posts_display_order_results' ] = (isset($options[ $name_prefix . 'under_posts_display_order_results' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_display_order_results' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_display_order_results' ] ) : 'default'; // Category exclude IDs $settings[ $name_prefix . 'under_posts_general_exclude_cat_ids' ] = (isset($options[ $name_prefix . 'under_posts_general_exclude_cat_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_general_exclude_cat_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_general_exclude_cat_ids' ] ) : ''; // Post/page IDs to exclude $settings[ $name_prefix . 'under_posts_general_exclude_post_ids' ] = (isset($options[ $name_prefix . 'under_posts_general_exclude_post_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_general_exclude_post_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_general_exclude_post_ids' ] ) : ''; // Display only posts from the past $options[ $name_prefix . 'under_posts_enable_posts_from_past' ] = ( isset($options[ $name_prefix . 'under_posts_enable_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_from_past' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_from_past' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_enable_posts_from_past' ] = (isset($options[ $name_prefix . 'under_posts_enable_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_from_past' ] ) == 'on') ? true : false; // Count only posts from the past $settings[ $name_prefix . 'under_posts_posts_from_past_period' ] = (isset($options[ $name_prefix . 'under_posts_posts_from_past_period' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_posts_from_past_period' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_posts_from_past_period' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_posts_from_past_period' ] ) ) : 12; // Time only posts from the past $settings[ $name_prefix . 'under_posts_time_posts_from_past' ] = (isset($options[ $name_prefix . 'under_posts_time_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_time_posts_from_past' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_time_posts_from_past' ] ) : 'month'; // Display only posts older than current post $options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ] = ( isset($options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_enable_posts_older_current_post' ] = (isset($options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_posts_older_current_post' ] ) == 'on') ? true : false; // ============================================================= // ===================== Relevance Tab ===================== // ======================== END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ====================== Settings Tab ===================== // ======================== START ======================== // Show metabox $options[ $name_prefix . 'under_posts_enable_meta_box' ] = ( isset($options[ $name_prefix . 'under_posts_enable_meta_box' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_enable_meta_box' ] = (isset($options[ $name_prefix . 'under_posts_enable_meta_box' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box' ] ) == 'on') ? true : false; // Limit meta box to Admins only $options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ] = ( isset($options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ] = (isset($options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_meta_box_to_admin_only' ] ) == 'on') ? true : false; // Limit post title length $options[ $name_prefix . 'under_posts_enable_post_title_length' ] = ( isset($options[ $name_prefix . 'under_posts_enable_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_title_length' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_title_length' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_enable_post_title_length' ] = (isset($options[ $name_prefix . 'under_posts_enable_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_title_length' ] ) == 'on') ? true : false; // Limit post title length count $settings[ $name_prefix . 'under_posts_post_title_length' ] = (isset($options[ $name_prefix . 'under_posts_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_title_length' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_title_length' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_post_title_length' ] ) ) : 7; // Limit post title length type $settings[ $name_prefix . 'under_posts_post_title_type' ] = (isset($options[ $name_prefix . 'under_posts_post_title_type' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_title_type' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_post_title_type' ] ) : 'in_words'; // Show date $options[ $name_prefix . 'under_posts_show_date' ] = ( isset($options[ $name_prefix . 'under_posts_show_date' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_show_date' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_show_date' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_show_date' ] = (isset($options[ $name_prefix . 'under_posts_show_date' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_show_date' ] ) == 'on') ? true : false; // Show author $options[ $name_prefix . 'under_posts_show_author' ] = ( isset($options[ $name_prefix . 'under_posts_show_author' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_show_author' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_show_author' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_show_author' ] = (isset($options[ $name_prefix . 'under_posts_show_author' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_show_author' ] ) == 'on') ? true : false; // Show author $options[ $name_prefix . 'under_posts_links_on_new_window' ] = ( isset($options[ $name_prefix . 'under_posts_links_on_new_window' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_links_on_new_window' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_links_on_new_window' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_links_on_new_window' ] = (isset($options[ $name_prefix . 'under_posts_links_on_new_window' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_links_on_new_window' ] ) == 'on') ? true : false; // Show post excerpt $options[ $name_prefix . 'under_posts_enable_post_excerpt' ] = ( isset($options[ $name_prefix . 'under_posts_enable_post_excerpt' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_excerpt' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_excerpt' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_enable_post_excerpt' ] = (isset($options[ $name_prefix . 'under_posts_enable_post_excerpt' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_post_excerpt' ] ) == 'on') ? true : false; // Show post excerpt length $settings[ $name_prefix . 'under_posts_post_excerpt_length' ] = (isset($options[ $name_prefix . 'under_posts_post_excerpt_length' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_excerpt_length' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_excerpt_length' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_post_excerpt_length' ] ) ) : 10; // Show post excerpt type $settings[ $name_prefix . 'under_posts_post_excerpt_type' ] = (isset($options[ $name_prefix . 'under_posts_post_excerpt_type' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_post_excerpt_type' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_post_excerpt_type' ] ) : 'in_words'; // Title of the box $settings[ $name_prefix . 'under_posts_box_title' ] = (isset($options[ $name_prefix . 'under_posts_box_title' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_box_title' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_box_title' ] ) : __( 'Related Posts' , 'advanced-related-posts' ); // Description of the box $settings[ $name_prefix . 'under_posts_box_desc' ] = (isset($options[ $name_prefix . 'under_posts_box_desc' ]) && $options[ $name_prefix . 'under_posts_box_desc' ] != '') ? stripslashes( $options[ $name_prefix . 'under_posts_box_desc' ] ) : ''; // Read more text $settings[ $name_prefix . 'under_posts_read_more_text' ] = (isset($options[ $name_prefix . 'under_posts_read_more_text' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_read_more_text' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_read_more_text' ] ) : __( 'Read more' , 'advanced-related-posts' ); // Show when no posts are found $settings[ $name_prefix . 'under_posts_no_post_found' ] = (isset($options[ $name_prefix . 'under_posts_no_post_found' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_no_post_found' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_no_post_found' ] ) : 'blank_output'; // Dispaly custom text $settings[ $name_prefix . 'under_posts_no_post_found_custom_text' ] = (isset($options[ $name_prefix . 'under_posts_no_post_found_custom_text' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_no_post_found_custom_text' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_no_post_found_custom_text' ] ) : __( 'No related posts found' , 'advanced-related-posts' ); // Disable on mobile devices $options[ $name_prefix . 'under_posts_display_on_mobile' ] = ( isset($options[ $name_prefix . 'under_posts_display_on_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_display_on_mobile' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_display_on_mobile' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_display_on_mobile' ] = (isset($options[ $name_prefix . 'under_posts_display_on_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_display_on_mobile' ] ) == 'on') ? true : false; // Enable author name link $options[ $name_prefix . 'under_posts_enable_author_name_link' ] = ( isset($options[ $name_prefix . 'under_posts_enable_author_name_link' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_author_name_link' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_author_name_link' ] ) : 'off'; $settings[ $name_prefix . 'under_posts_enable_author_name_link' ] = (isset($options[ $name_prefix . 'under_posts_enable_author_name_link' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_author_name_link' ] ) == 'on') ? true : false; // ============================================================= // ====================== Settings Tab ===================== // ======================== END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ====================== Styles Tab ===================== // ======================== START ======================== // Thumbnail Width / Height $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ] = ( isset($options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ] = (isset($options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height' ] ) == 'on') ? true : false; // Responsive Width/Height Ratio $settings[ $name_prefix . 'under_posts_thumbnail_responsive_width_height_ratio' ] = (isset($options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height_ratio' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height_ratio' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height_ratio' ] ) != 0 ) ? floatval( sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_responsive_width_height_ratio' ] ) ) : 0.75; // Thumbnail width $settings[ $name_prefix . 'under_posts_thumbnail_width' ] = (isset($options[ $name_prefix . 'under_posts_thumbnail_width' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_width' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_width' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_width' ] ) ) : 300; // Thumbnail height $settings[ $name_prefix . 'under_posts_thumbnail_height' ] = (isset($options[ $name_prefix . 'under_posts_thumbnail_height' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_height' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_height' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_height' ] ) ) : 300; // Thumbnail size $settings[ $name_prefix . 'under_posts_thumbnail_size' ] = (isset($options[ $name_prefix . 'under_posts_thumbnail_size' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_size' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_size' ] ) : 'medium_large'; // Get first image $options[ $name_prefix . 'under_posts_first_image' ] = ( isset($options[ $name_prefix . 'under_posts_first_image' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_first_image' ] = (isset($options[ $name_prefix . 'under_posts_first_image' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image' ] ) == 'on') ? true : false; // Get first image mobile $options[ $name_prefix . 'under_posts_first_image_mobile' ] = ( isset($options[ $name_prefix . 'under_posts_first_image_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image_mobile' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image_mobile' ] ) : 'on'; $settings[ $name_prefix . 'under_posts_first_image_mobile' ] = (isset($options[ $name_prefix . 'under_posts_first_image_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_first_image_mobile' ] ) == 'on') ? true : false; // Image Sizing $settings[ $name_prefix . 'under_posts_image_sizing' ] = (isset($options[ $name_prefix . 'under_posts_image_sizing' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_image_sizing' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_image_sizing' ] ) : 'contain'; // Enable Image Sizing Mobile $settings[ $name_prefix .'enable_under_posts_image_sizing_mobile' ] = ( isset( $options[ $name_prefix .'enable_under_posts_image_sizing_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_image_sizing_mobile'] == 'off' ) ? false : true; // Image Sizing Mobile if ( $settings[ $name_prefix .'enable_under_posts_image_sizing_mobile' ] ) { $settings[ $name_prefix . 'under_posts_image_sizing_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_image_sizing_mobile' ] ) && $options[ $name_prefix .'under_posts_image_sizing_mobile' ] != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_image_sizing_mobile' ] ) : $settings[ $name_prefix . 'under_posts_image_sizing' ]; } else { $settings[ $name_prefix . 'under_posts_image_sizing_mobile' ] = $settings[ $name_prefix . 'under_posts_image_sizing' ]; } // Image position $settings[ $name_prefix . 'under_posts_image_position' ] = (isset($options[ $name_prefix . 'under_posts_image_position' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_image_position' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_image_position' ] ) : 'center center'; // Enable Image Position Mobile $settings[ $name_prefix .'enable_under_posts_image_position_mobile' ] = ( isset( $options[ $name_prefix .'enable_under_posts_image_position_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_image_position_mobile'] == 'off' ) ? false : true; // Image Position Mobile if ( $settings[ $name_prefix .'enable_under_posts_image_position_mobile' ] ) { $settings[ $name_prefix . 'under_posts_image_position_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_image_position_mobile' ] ) && $options[ $name_prefix .'under_posts_image_position_mobile' ] != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_image_position_mobile' ] ) : $settings[ $name_prefix . 'under_posts_image_position' ]; } else { $settings[ $name_prefix . 'under_posts_image_position_mobile' ] = $settings[ $name_prefix . 'under_posts_image_position' ]; } // Default thumbnail $settings[ $name_prefix . 'under_posts_default_thumbnail' ] = ( isset($options[ $name_prefix . 'under_posts_default_thumbnail' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_default_thumbnail' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_default_thumbnail' ] ) : $default_thumbnail; // Custom Class $settings[ $name_prefix . 'under_posts_custom_class' ] = ( isset($options[ $name_prefix . 'under_posts_custom_class' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_custom_class' ] ) != '' ) ? stripslashes( esc_attr( sanitize_text_field( $options[ $name_prefix . 'under_posts_custom_class' ] ) ) ) : ''; // Layouts $settings[ $name_prefix . 'under_posts_layouts' ] = ( isset($options[ $name_prefix . 'under_posts_layouts' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_layouts' ] ) != '' ) ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'under_posts_layouts' ] ) ) : 'elegant'; // Thumbnail columns count $settings[ $name_prefix . 'under_posts_thumbnail_columns_count' ] = ( isset($options[ $name_prefix . 'under_posts_thumbnail_columns_count' ]) && absint(sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_columns_count' ] ) ) != '') ? absint(sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_columns_count' ] )) : 3; // Enable Thumbnail columns count Mobile $settings[ $name_prefix .'enable_under_posts_thumbnail_columns_count_mobile' ] = ( isset( $options[ $name_prefix .'enable_under_posts_thumbnail_columns_count_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_thumbnail_columns_count_mobile'] == 'off' ) ? false : true; // Thumbnail columns count Mobile if ( $settings[ $name_prefix .'enable_under_posts_thumbnail_columns_count_mobile' ] ) { $settings[ $name_prefix . 'under_posts_thumbnail_columns_count_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_thumbnail_columns_count_mobile' ] ) && $options[ $name_prefix .'under_posts_thumbnail_columns_count_mobile' ] != '' ) ? sanitize_text_field( $options[ $name_prefix . 'under_posts_thumbnail_columns_count_mobile' ] ) : $settings[ $name_prefix . 'under_posts_thumbnail_columns_count' ]; } else { $settings[ $name_prefix . 'under_posts_thumbnail_columns_count_mobile' ] = $settings[ $name_prefix . 'under_posts_thumbnail_columns_count' ]; } // Text Color $settings[ $name_prefix . 'under_posts_text_color' ] = ( isset($options[ $name_prefix . 'under_posts_text_color' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_text_color' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'under_posts_text_color' ] ) ) : '#333'; // Enable Text Color Mobile $settings[ $name_prefix .'enable_under_posts_text_color_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_text_color_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_text_color_mobile'] == 'off') ? false : true; // Text Color Mobile if ( $settings[ $name_prefix .'enable_under_posts_text_color_mobile' ] ) { $settings[ $name_prefix . 'under_posts_text_color_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_text_color_mobile' ]) && $options[ $name_prefix .'under_posts_text_color_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_text_color_mobile' ] ) : $settings[ $name_prefix . 'under_posts_text_color' ]; } else { $settings[ $name_prefix . 'under_posts_text_color_mobile' ] = $settings[ $name_prefix . 'under_posts_text_color' ]; } // Title font size $settings[ $name_prefix . 'under_posts_title_font_size' ] = ( isset($options[ $name_prefix . 'under_posts_title_font_size' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_title_font_size' ] ) ) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_title_font_size' ] )) : 16; // Enable Title font size Mobile $settings[ $name_prefix .'enable_under_posts_title_font_size_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_title_font_size_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_title_font_size_mobile'] == 'off') ? false : true; // Title font size Mobile if ( $settings[ $name_prefix .'enable_under_posts_title_font_size_mobile' ] ) { $settings[ $name_prefix . 'under_posts_title_font_size_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_title_font_size_mobile' ]) && $options[ $name_prefix .'under_posts_title_font_size_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_title_font_size_mobile' ] ) : $settings[ $name_prefix . 'under_posts_title_font_size' ]; } else { $settings[ $name_prefix . 'under_posts_title_font_size_mobile' ] = $settings[ $name_prefix . 'under_posts_title_font_size' ]; } // Image border radius $settings[ $name_prefix . 'under_posts_image_border_radius' ] = ( isset($options[ $name_prefix . 'under_posts_image_border_radius' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_image_border_radius' ] ) ) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_image_border_radius' ] )) : 0; // Enable Image border radius Mobile $settings[ $name_prefix .'enable_under_posts_image_border_radius_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_image_border_radius_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_image_border_radius_mobile'] == 'off') ? false : true; // Image border radius Mobile if ( $settings[ $name_prefix .'enable_under_posts_image_border_radius_mobile' ] ) { $settings[ $name_prefix . 'under_posts_image_border_radius_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_image_border_radius_mobile' ]) && $options[ $name_prefix .'under_posts_image_border_radius_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_image_border_radius_mobile' ] ) : $settings[ $name_prefix . 'under_posts_image_border_radius' ]; } else { $settings[ $name_prefix . 'under_posts_image_border_radius_mobile' ] = $settings[ $name_prefix . 'under_posts_image_border_radius' ]; } // Enable Border $settings[ $name_prefix . 'under_posts_enable_border' ] = (isset($options[ $name_prefix . 'under_posts_enable_border' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_enable_border' ] )) == 'on' ) ? true : false; $default_border_radius = ''; if($settings[ $name_prefix . 'under_posts_layouts' ] == 'elegant' && $settings[ $name_prefix . 'under_posts_enable_border' ]){ $default_border_radius = '0'; }elseif ($settings[ $name_prefix . 'under_posts_layouts' ] == 'classy' && $settings[ $name_prefix . 'under_posts_enable_border' ]) { $default_border_radius = '5'; }elseif ($settings[ $name_prefix . 'under_posts_layouts' ] == 'grid' && $settings[ $name_prefix . 'under_posts_enable_border' ]) { $default_border_radius = '0'; } // Border width $settings[ $name_prefix . 'under_posts_border_width' ] = (isset($options[ $name_prefix . 'under_posts_border_width' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_width' ] )) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_width' ] )) : 1; // Enable Border width Mobile $settings[ $name_prefix .'enable_under_posts_border_width_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_border_width_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_border_width_mobile'] == 'off') ? false : true; // Border width Mobile if ( $settings[ $name_prefix .'enable_under_posts_border_width_mobile' ] ) { $settings[ $name_prefix . 'under_posts_border_width_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_border_width_mobile' ]) && $options[ $name_prefix .'under_posts_border_width_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_border_width_mobile' ] ) : $settings[ $name_prefix . 'under_posts_border_width' ]; } else { $settings[ $name_prefix . 'under_posts_border_width_mobile' ] = $settings[ $name_prefix . 'under_posts_border_width' ]; } // Border radius $settings[ $name_prefix . 'under_posts_border_radius' ] = (isset($options[ $name_prefix . 'under_posts_border_radius' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_radius' ] )) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_radius' ] )) : $default_border_radius; // Enable Border radius Mobile $settings[ $name_prefix .'enable_under_posts_border_radius_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_border_radius_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_border_radius_mobile'] == 'off') ? false : true; // Border radius Mobile if ( $settings[ $name_prefix .'enable_under_posts_border_radius_mobile' ] ) { $settings[ $name_prefix . 'under_posts_border_radius_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_border_radius_mobile' ]) && $options[ $name_prefix .'under_posts_border_radius_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_border_radius_mobile' ] ) : $settings[ $name_prefix . 'under_posts_border_radius' ]; } else { $settings[ $name_prefix . 'under_posts_border_radius_mobile' ] = $settings[ $name_prefix . 'under_posts_border_radius' ]; } // Border style $settings[ $name_prefix . 'under_posts_border_style' ] = (isset($options[ $name_prefix . 'under_posts_border_style' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_style' ] )) != '') ? stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_style' ] )) : 'solid'; // Enable Border style Mobile $settings[ $name_prefix .'enable_under_posts_border_style_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_border_style_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_border_style_mobile'] == 'off') ? false : true; // Border radius style if ( $settings[ $name_prefix .'enable_under_posts_border_style_mobile' ] ) { $settings[ $name_prefix . 'under_posts_border_style_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_border_style_mobile' ]) && $options[ $name_prefix .'under_posts_border_style_mobile' ] != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'under_posts_border_style_mobile' ] ) ) : $settings[ $name_prefix . 'under_posts_border_style' ]; } else { $settings[ $name_prefix . 'under_posts_border_style_mobile' ] = $settings[ $name_prefix . 'under_posts_border_style' ]; } // Border color $settings[ $name_prefix . 'under_posts_border_color' ] = (isset($options[ $name_prefix . 'under_posts_border_color' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_color' ] )) != '') ? stripslashes(sanitize_text_field( $options[ $name_prefix . 'under_posts_border_color' ] )) : '#000000'; // Enable Border Color Mobile $settings[ $name_prefix .'enable_under_posts_border_color_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_border_color_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_border_color_mobile'] == 'off') ? false : true; // Border Color Mobile if ( $settings[ $name_prefix .'enable_under_posts_border_color_mobile' ] ) { $settings[ $name_prefix . 'under_posts_border_color_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_border_color_mobile' ]) && $options[ $name_prefix .'under_posts_border_color_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_border_color_mobile' ] ) : $settings[ $name_prefix . 'under_posts_border_color' ]; } else { $settings[ $name_prefix . 'under_posts_border_color_mobile' ] = $settings[ $name_prefix . 'under_posts_border_color' ]; } $default_bg_color; $default_bg_color_hover; if($settings[ $name_prefix . 'under_posts_layouts' ] == 'elegant'){ $default_bg_color = 'rgba(255,255,255,0)'; $default_bg_color_hover = 'rgba(255,255,255,0)'; }elseif ($settings[ $name_prefix . 'under_posts_layouts' ] == 'classy') { $default_bg_color = 'rgba(255,255,255,0)'; $default_bg_color_hover = 'rgba(255,255,255,0)'; }elseif ($settings[ $name_prefix . 'under_posts_layouts' ] == 'grid') { $default_bg_color = 'rgba(255,255,255,0)'; $default_bg_color_hover = 'rgba(255,255,255,0)'; } // Background Color $settings[ $name_prefix . 'under_posts_background_color' ] = ( isset($options[ $name_prefix . 'under_posts_background_color' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_background_color' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'under_posts_background_color' ] ) ) : $default_bg_color; // Enable Background Color Mobile $settings[ $name_prefix .'enable_under_posts_background_color_mobile' ] = (isset( $options[ $name_prefix .'enable_under_posts_background_color_mobile' ] ) && $options[ $name_prefix .'enable_under_posts_background_color_mobile'] == 'off') ? false : true; // Background Color Mobile if ( $settings[ $name_prefix .'enable_under_posts_background_color_mobile' ] ) { $settings[ $name_prefix . 'under_posts_background_color_mobile' ] = ( isset( $options[ $name_prefix . 'under_posts_background_color_mobile' ]) && $options[ $name_prefix .'under_posts_background_color_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'under_posts_background_color_mobile' ] ) : $settings[ $name_prefix . 'under_posts_background_color' ]; } else { $settings[ $name_prefix . 'under_posts_background_color_mobile' ] = $settings[ $name_prefix . 'under_posts_background_color' ]; } // Background Color hover $settings[ $name_prefix . 'under_posts_background_color_hover' ] = ( isset($options[ $name_prefix . 'under_posts_background_color_hover' ]) && sanitize_text_field( $options[ $name_prefix . 'under_posts_background_color_hover' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'under_posts_background_color_hover' ] ) ) : $default_bg_color_hover ; // ============================================================= // ====================== Styles Tab ===================== // ======================== END ======================== return $settings; } public static function get_arp_widget_validated_data_from_array(){ global $wpdb; // Array for related posts validated options $settings = array(); $options = array(); $name_prefix = 'arp_'; $default_thumbnail = ADVANCED_RELATED_POSTS_ADMIN_URL . '/images/icons/icon-arp-default.png'; $results = Advanced_Related_Posts_Settings_Actions::ays_get_all_settings( 'widget' ); $options = array(); foreach($results as $o_key => $o_value){ if(isset($o_value)){ $meta_key = isset($o_value['meta_key']) ? $o_value['meta_key'] : ""; $meta_value = isset($o_value['meta_value']) ? $o_value['meta_value'] : ""; $options[$meta_key] = $meta_value; } } // disable Under widgets $settings[ $name_prefix . 'widget_enable_under_widget' ] = ( isset($options[ $name_prefix . 'widget_enable_under_widget' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_enable_under_widget' ] )) == 'off' ) ? 'off' : 'on'; // Under posts count $settings[ $name_prefix . 'widget_count' ] = (isset($options[ $name_prefix . 'widget_count' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_count' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_count' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_count' ] ) ) : 1; // Enable for all post types $options[ $name_prefix . 'widget_all_post_type' ] = ( isset($options[ $name_prefix . 'widget_all_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_all_post_type' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_all_post_type' ] ) : 'on'; $settings[ $name_prefix . 'widget_all_post_type' ] = (isset($options[ $name_prefix . 'widget_all_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_all_post_type' ] ) == 'on') ? true : false; // For selected post types $settings[ $name_prefix . 'widget_selected_post_type' ] = ( isset($options[ $name_prefix . 'widget_selected_post_type' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_selected_post_type' ] ) != '' ) ? array_map('sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'widget_selected_post_type' ] ) , true) ) : array(); // Exclude for categories $settings[ $name_prefix . 'widget_exclude_categories_ids' ] = ( isset($options[ $name_prefix . 'widget_exclude_categories_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_exclude_categories_ids' ] ) != '' ) ? array_map('sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'widget_exclude_categories_ids' ] ) , true) ) : array(); // Exclude posts ids $settings[ $name_prefix . 'widget_exclude_post_ids' ] = (isset($options[ $name_prefix . 'widget_exclude_post_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_exclude_post_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_exclude_post_ids' ] ) : ''; // Display on the front page $options[ $name_prefix . 'widget_display_front_page' ] = ( isset($options[ $name_prefix . 'widget_display_front_page' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_display_front_page' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_display_front_page' ] ) : 'off'; $settings[ $name_prefix . 'widget_display_front_page' ] = (isset($options[ $name_prefix . 'widget_display_front_page' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_display_front_page' ] ) == 'on') ? true : false; // ============================================================= // ====================== General Tab ====================== // ======================= END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ===================== Relevance Tab ===================== // ======================== START ======================== // Order posts query $settings[ $name_prefix . 'widget_order_posts_query' ] = (isset($options[ $name_prefix . 'widget_order_posts_query' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_order_posts_query' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_order_posts_query' ] ) : 'random'; // Only from same $settings[ $name_prefix . 'widget_only_from_same' ] = ( isset($options[ $name_prefix . 'widget_only_from_same' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_only_from_same' ] ) != '' ) ? array_map( 'sanitize_text_field', json_decode( sanitize_text_field( $options[ $name_prefix . 'widget_only_from_same' ] ) , true) ) : array('same_post_type'); // Strongness of matching $settings[ $name_prefix . 'widget_strongness_of_matching' ] = (isset($options[ $name_prefix . 'widget_strongness_of_matching' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_strongness_of_matching' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_strongness_of_matching' ] ) : 'gradually_weakening'; // Limit to same author $options[ $name_prefix . 'widget_limit_to_same_author' ] = ( isset($options[ $name_prefix . 'widget_limit_to_same_author' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_limit_to_same_author' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_limit_to_same_author' ] ) : 'off'; $settings[ $name_prefix . 'widget_limit_to_same_author' ] = (isset($options[ $name_prefix . 'widget_limit_to_same_author' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_limit_to_same_author' ] ) == 'on') ? true : false; // Display Order results $settings[ $name_prefix . 'widget_display_order_results' ] = (isset($options[ $name_prefix . 'widget_display_order_results' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_display_order_results' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_display_order_results' ] ) : 'default'; // Category exclude IDs $settings[ $name_prefix . 'widget_general_exclude_cat_ids' ] = (isset($options[ $name_prefix . 'widget_general_exclude_cat_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_general_exclude_cat_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_general_exclude_cat_ids' ] ) : ''; // Post/page IDs to exclude $settings[ $name_prefix . 'widget_general_exclude_post_ids' ] = (isset($options[ $name_prefix . 'widget_general_exclude_post_ids' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_general_exclude_post_ids' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_general_exclude_post_ids' ] ) : ''; // Display only posts from the past $options[ $name_prefix . 'widget_enable_posts_from_past' ] = ( isset($options[ $name_prefix . 'widget_enable_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_from_past' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_from_past' ] ) : 'off'; $settings[ $name_prefix . 'widget_enable_posts_from_past' ] = (isset($options[ $name_prefix . 'widget_enable_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_from_past' ] ) == 'on') ? true : false; // Count only posts from the past $settings[ $name_prefix . 'widget_posts_from_past_period' ] = (isset($options[ $name_prefix . 'widget_posts_from_past_period' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_posts_from_past_period' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_posts_from_past_period' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_posts_from_past_period' ] ) ) : 12; // Time only posts from the past $settings[ $name_prefix . 'widget_time_posts_from_past' ] = (isset($options[ $name_prefix . 'widget_time_posts_from_past' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_time_posts_from_past' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_time_posts_from_past' ] ) : 'month'; // Display only posts older than current post $options[ $name_prefix . 'widget_enable_posts_older_current_post' ] = ( isset($options[ $name_prefix . 'widget_enable_posts_older_current_post' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_older_current_post' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_older_current_post' ] ) : 'off'; $settings[ $name_prefix . 'widget_enable_posts_older_current_post' ] = (isset($options[ $name_prefix . 'widget_enable_posts_older_current_post' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_posts_older_current_post' ] ) == 'on') ? true : false; // ============================================================= // ===================== Relevance Tab ===================== // ======================== END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ====================== Settings Tab ===================== // ======================== START ======================== // Limit post title length $options[ $name_prefix . 'widget_enable_post_title_length' ] = ( isset($options[ $name_prefix . 'widget_enable_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_title_length' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_title_length' ] ) : 'on'; $settings[ $name_prefix . 'widget_enable_post_title_length' ] = (isset($options[ $name_prefix . 'widget_enable_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_title_length' ] ) == 'on') ? true : false; // Limit post title length count $settings[ $name_prefix . 'widget_post_title_length' ] = (isset($options[ $name_prefix . 'widget_post_title_length' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_post_title_length' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_post_title_length' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_post_title_length' ] ) ) : 4; // Limit post title length type $settings[ $name_prefix . 'widget_post_title_type' ] = (isset($options[ $name_prefix . 'widget_post_title_type' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_post_title_type' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_post_title_type' ] ) : 'in_words'; // Show date $options[ $name_prefix . 'widget_show_date' ] = ( isset($options[ $name_prefix . 'widget_show_date' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_show_date' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_show_date' ] ) : 'off'; $settings[ $name_prefix . 'widget_show_date' ] = (isset($options[ $name_prefix . 'widget_show_date' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_show_date' ] ) == 'on') ? true : false; // Show author $options[ $name_prefix . 'widget_show_author' ] = ( isset($options[ $name_prefix . 'widget_show_author' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_show_author' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_show_author' ] ) : 'off'; $settings[ $name_prefix . 'widget_show_author' ] = (isset($options[ $name_prefix . 'widget_show_author' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_show_author' ] ) == 'on') ? true : false; // Show author $options[ $name_prefix . 'widget_links_on_new_window' ] = ( isset($options[ $name_prefix . 'widget_links_on_new_window' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_links_on_new_window' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_links_on_new_window' ] ) : 'off'; $settings[ $name_prefix . 'widget_links_on_new_window' ] = (isset($options[ $name_prefix . 'widget_links_on_new_window' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_links_on_new_window' ] ) == 'on') ? true : false; // Show post excerpt $options[ $name_prefix . 'widget_enable_post_excerpt' ] = ( isset($options[ $name_prefix . 'widget_enable_post_excerpt' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_excerpt' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_excerpt' ] ) : 'on'; $settings[ $name_prefix . 'widget_enable_post_excerpt' ] = (isset($options[ $name_prefix . 'widget_enable_post_excerpt' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_post_excerpt' ] ) == 'on') ? true : false; // Show post excerpt length $settings[ $name_prefix . 'widget_post_excerpt_length' ] = (isset($options[ $name_prefix . 'widget_post_excerpt_length' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_post_excerpt_length' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_post_excerpt_length' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_post_excerpt_length' ] ) ) : 7; // Show post excerpt type $settings[ $name_prefix . 'widget_post_excerpt_type' ] = (isset($options[ $name_prefix . 'widget_post_excerpt_type' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_post_excerpt_type' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_post_excerpt_type' ] ) : 'in_words'; // Title of the box $settings[ $name_prefix . 'widget_box_title' ] = (isset($options[ $name_prefix . 'widget_box_title' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_box_title' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_box_title' ] ) : __( 'Related Posts' , 'advanced-related-posts' ); // Description of the box $settings[ $name_prefix . 'widget_box_desc' ] = (isset($options[ $name_prefix . 'widget_box_desc' ]) && $options[ $name_prefix . 'widget_box_desc' ] != '') ? stripslashes( $options[ $name_prefix . 'widget_box_desc' ] ) : ''; // Show when no posts are found $settings[ $name_prefix . 'widget_no_post_found' ] = (isset($options[ $name_prefix . 'widget_no_post_found' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_no_post_found' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_no_post_found' ] ) : 'blank_output'; // Dispaly custom text $settings[ $name_prefix . 'widget_no_post_found_custom_text' ] = (isset($options[ $name_prefix . 'widget_no_post_found_custom_text' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_no_post_found_custom_text' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_no_post_found_custom_text' ] ) : __( 'No related posts found' , 'advanced-related-posts' ); // Disable on mobile devices $options[ $name_prefix . 'widget_display_on_mobile' ] = ( isset($options[ $name_prefix . 'widget_display_on_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_display_on_mobile' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_display_on_mobile' ] ) : 'off'; $settings[ $name_prefix . 'widget_display_on_mobile' ] = (isset($options[ $name_prefix . 'widget_display_on_mobile' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_display_on_mobile' ] ) == 'on') ? true : false; // Enable author name link $options[ $name_prefix . 'widget_enable_author_name_link' ] = ( isset($options[ $name_prefix . 'widget_enable_author_name_link' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_author_name_link' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_enable_author_name_link' ] ) : 'off'; $settings[ $name_prefix . 'widget_enable_author_name_link' ] = (isset($options[ $name_prefix . 'widget_enable_author_name_link' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_enable_author_name_link' ] ) == 'on') ? true : false; // ============================================================= // ====================== Settings Tab ===================== // ======================== END ======================== // ======================= // ======================= // ======================= // ======================= // ======================= // // ============================================================= // ====================== Styles Tab ===================== // ======================== START ======================== // Thumbnail Width / Height $options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ] = ( isset($options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ] ) : 'on'; $settings[ $name_prefix . 'widget_thumbnail_responsive_width_height' ] = (isset($options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height' ] ) == 'on') ? true : false; // Responsive Width/Height Ratio $settings[ $name_prefix . 'widget_thumbnail_responsive_width_height_ratio' ] = (isset($options[ $name_prefix . 'widget_thumbnail_responsive_width_height_ratio' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height_ratio' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height_ratio' ] ) != 0 ) ? floatval( sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_responsive_width_height_ratio' ] ) ) : 1; // Thumbnail width $settings[ $name_prefix . 'widget_thumbnail_width' ] = (isset($options[ $name_prefix . 'widget_thumbnail_width' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_width' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_width' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_width' ] ) ) : 300; // Thumbnail height $settings[ $name_prefix . 'widget_thumbnail_height' ] = (isset($options[ $name_prefix . 'widget_thumbnail_height' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_height' ] ) != '' && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_height' ] ) != 0 ) ? absint( sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_height' ] ) ) : 300; // Thumbnail size $settings[ $name_prefix . 'widget_thumbnail_size' ] = (isset($options[ $name_prefix . 'widget_thumbnail_size' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_size' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_size' ] ) : 'medium_large'; // Get first image $options[ $name_prefix . 'widget_first_image' ] = ( isset($options[ $name_prefix . 'widget_first_image' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_first_image' ] ) != '' ) ? sanitize_text_field( $options[ $name_prefix . 'widget_first_image' ] ) : 'on'; $settings[ $name_prefix . 'widget_first_image' ] = (isset($options[ $name_prefix . 'widget_first_image' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_first_image' ] ) == 'on') ? true : false; // Image Sizing $settings[ $name_prefix . 'widget_image_sizing' ] = (isset($options[ $name_prefix . 'widget_image_sizing' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_image_sizing' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_image_sizing' ] ) : 'cover'; // ImagePosition $settings[ $name_prefix . 'widget_image_position' ] = (isset($options[ $name_prefix . 'widget_image_position' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_image_position' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_image_position' ] ) : 'center center'; // Default thumbnail $settings[ $name_prefix . 'widget_default_thumbnail' ] = (isset($options[ $name_prefix . 'widget_default_thumbnail' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_default_thumbnail' ] ) != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_default_thumbnail' ] ) : $default_thumbnail; // Custom Class $settings[ $name_prefix . 'widget_custom_class' ] = ( isset($options[ $name_prefix . 'widget_custom_class' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_custom_class' ] ) != '' ) ? stripslashes( esc_attr( sanitize_text_field( $options[ $name_prefix . 'widget_custom_class' ] ) ) ) : ''; // Layouts $settings[ $name_prefix . 'widget_layouts' ] = ( isset($options[ $name_prefix . 'widget_layouts' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_layouts' ] ) != '' ) ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'widget_layouts' ] ) ) : 'elegant'; // Thumbnail columns count $settings[ $name_prefix . 'widget_thumbnail_columns_count' ] = ( isset($options[ $name_prefix . 'widget_thumbnail_columns_count' ]) && absint(sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_columns_count' ] ) ) != '') ? absint(sanitize_text_field( $options[ $name_prefix . 'widget_thumbnail_columns_count' ] )) : 1; // Text Color $settings[ $name_prefix . 'widget_text_color' ] = ( isset($options[ $name_prefix . 'widget_text_color' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_text_color' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'widget_text_color' ] ) ) : '#333'; // Enable Text Color Mobile $settings[ $name_prefix .'enable_widget_text_color_mobile' ] = (isset( $options[ $name_prefix .'enable_widget_text_color_mobile' ] ) && $options[ $name_prefix .'enable_widget_text_color_mobile'] == 'off') ? false : true; // Text Color Mobile if ( $settings[ $name_prefix .'enable_widget_text_color_mobile' ] ) { $settings[ $name_prefix . 'widget_text_color_mobile' ] = ( isset( $options[ $name_prefix . 'widget_text_color_mobile' ]) && $options[ $name_prefix .'widget_text_color_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_text_color_mobile' ] ) : $settings[ $name_prefix . 'widget_text_color' ]; } else { $settings[ $name_prefix . 'widget_text_color_mobile' ] = $settings[ $name_prefix . 'widget_text_color' ]; } // Title font size $settings[ $name_prefix . 'widget_title_font_size' ] = ( isset($options[ $name_prefix . 'widget_title_font_size' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'widget_title_font_size' ] ) ) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'widget_title_font_size' ] )) : 16; // Enable Title font size Mobile $settings[ $name_prefix .'enable_widget_title_font_size_mobile' ] = (isset( $options[ $name_prefix .'enable_widget_title_font_size_mobile' ] ) && $options[ $name_prefix .'enable_widget_title_font_size_mobile'] == 'off') ? false : true; // Title font size Mobile if ( $settings[ $name_prefix .'enable_widget_title_font_size_mobile' ] ) { $settings[ $name_prefix . 'widget_title_font_size_mobile' ] = ( isset( $options[ $name_prefix . 'widget_title_font_size_mobile' ]) && $options[ $name_prefix .'widget_title_font_size_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_title_font_size_mobile' ] ) : $settings[ $name_prefix . 'widget_title_font_size' ]; } else { $settings[ $name_prefix . 'widget_title_font_size_mobile' ] = $settings[ $name_prefix . 'widget_title_font_size' ]; } // Image border radius $settings[ $name_prefix . 'widget_image_border_radius' ] = ( isset($options[ $name_prefix . 'widget_image_border_radius' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'widget_image_border_radius' ] ) ) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'widget_image_border_radius' ] )) : 0; // Enable Border $settings[ $name_prefix . 'widget_enable_border' ] = (isset($options[ $name_prefix . 'widget_enable_border' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_enable_border' ] )) == 'on' ) ? true : false; $default_border_radius = ''; if($settings[ $name_prefix . 'widget_layouts' ] == 'elegant' && $settings[ $name_prefix . 'widget_enable_border' ]){ $default_border_radius = 0; }elseif ($settings[ $name_prefix . 'widget_layouts' ] == 'classy' && $settings[ $name_prefix . 'widget_enable_border' ]) { $default_border_radius = 50; }elseif ($settings[ $name_prefix . 'widget_layouts' ] == 'grid' && $settings[ $name_prefix . 'widget_enable_border' ]) { $default_border_radius = 0; } // Border width $settings[ $name_prefix . 'widget_border_width' ] = (isset($options[ $name_prefix . 'widget_border_width' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'widget_border_width' ] )) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'widget_border_width' ] )) : 0; // Enable Border width Mobile $settings[ $name_prefix .'enable_widget_border_width_mobile' ] = (isset( $options[ $name_prefix .'enable_widget_border_width_mobile' ] ) && $options[ $name_prefix .'enable_widget_border_width_mobile'] == 'off') ? false : true; // Border width Mobile if ( $settings[ $name_prefix .'enable_widget_border_width_mobile' ] ) { $settings[ $name_prefix . 'widget_border_width_mobile' ] = ( isset( $options[ $name_prefix . 'widget_border_width_mobile' ]) && $options[ $name_prefix .'widget_border_width_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_border_width_mobile' ] ) : $settings[ $name_prefix . 'widget_border_width' ]; } else { $settings[ $name_prefix . 'widget_border_width_mobile' ] = $settings[ $name_prefix . 'widget_border_width' ]; } // Border radius $settings[ $name_prefix . 'widget_border_radius' ] = (isset($options[ $name_prefix . 'widget_border_radius' ]) && abs(sanitize_text_field( $options[ $name_prefix . 'widget_border_radius' ] )) != '') ? abs(sanitize_text_field( $options[ $name_prefix . 'widget_border_radius' ] )) : $default_border_radius; // Enable Border radius Mobile $settings[ $name_prefix .'enable_widget_border_radius_mobile' ] = (isset( $options[ $name_prefix .'enable_widget_border_radius_mobile' ] ) && $options[ $name_prefix .'enable_widget_border_radius_mobile'] == 'off') ? false : true; // Border radius Mobile if ( $settings[ $name_prefix .'enable_widget_border_radius_mobile' ] ) { $settings[ $name_prefix . 'widget_border_radius_mobile' ] = ( isset( $options[ $name_prefix . 'widget_border_radius_mobile' ]) && $options[ $name_prefix .'widget_border_radius_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_border_radius_mobile' ] ) : $settings[ $name_prefix . 'widget_border_radius' ]; } else { $settings[ $name_prefix . 'widget_border_radius_mobile' ] = $settings[ $name_prefix . 'widget_border_radius' ]; } // Border style $settings[ $name_prefix . 'widget_border_style' ] = (isset($options[ $name_prefix . 'widget_border_style' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_border_style' ] )) != '') ? stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_border_style' ] )) : 'solid'; // Border color $settings[ $name_prefix . 'widget_border_color' ] = (isset($options[ $name_prefix . 'widget_border_color' ]) && stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_border_color' ] )) != '') ? stripslashes(sanitize_text_field( $options[ $name_prefix . 'widget_border_color' ] )) : '#000000'; $default_bg_color; $default_bg_color_hover; if($settings[ $name_prefix . 'widget_layouts' ] == 'elegant'){ $default_bg_color = '#ffffff'; $default_bg_color_hover = '#ffffff'; }elseif ($settings[ $name_prefix . 'widget_layouts' ] == 'classy') { $default_bg_color = 'rgba(255,255,255,0)'; $default_bg_color_hover = 'rgba(51,51,51,0.9)'; }elseif ($settings[ $name_prefix . 'widget_layouts' ] == 'grid') { $default_bg_color = 'rgba(255,255,255,0)'; $default_bg_color_hover = 'rgba(255,255,255,0)'; } // Background Color $settings[ $name_prefix . 'widget_background_color' ] = ( isset($options[ $name_prefix . 'widget_background_color' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_background_color' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'widget_background_color' ] ) ) : $default_bg_color; // Enable Background Color Mobile $settings[ $name_prefix .'enable_widget_background_color_mobile' ] = (isset( $options[ $name_prefix .'enable_widget_background_color_mobile' ] ) && $options[ $name_prefix .'enable_widget_background_color_mobile'] == 'off') ? false : true; // Background Color Mobile if ( $settings[ $name_prefix .'enable_widget_background_color_mobile' ] ) { $settings[ $name_prefix . 'widget_background_color_mobile' ] = ( isset( $options[ $name_prefix . 'widget_background_color_mobile' ]) && $options[ $name_prefix .'widget_background_color_mobile' ] != '') ? sanitize_text_field( $options[ $name_prefix . 'widget_background_color_mobile' ] ) : $settings[ $name_prefix . 'widget_background_color' ]; } else { $settings[ $name_prefix . 'widget_background_color_mobile' ] = $settings[ $name_prefix . 'widget_background_color' ]; } // Background Color Hover $settings[ $name_prefix . 'widget_background_color_hover' ] = ( isset($options[ $name_prefix . 'widget_background_color_hover' ]) && sanitize_text_field( $options[ $name_prefix . 'widget_background_color_hover' ] ) != '') ? stripslashes( sanitize_text_field( $options[ $name_prefix . 'widget_background_color_hover' ] ) ) : $default_bg_color_hover; // ============================================================= // ====================== Styles Tab ===================== // ======================== END ======================== return $settings; } public static function ays_arp_get_content_first_image( $id, $img = '' ) { $post = get_post( $id, "OBJECT" ); $output = preg_match_all('//i', $post->post_content, $matches); $first_img = ( isset( $matches [1] [0] ) && ! empty( $matches [1] [0] ) ) ? $matches [1] [0] : array(); if(empty($first_img)){ //Defines a default image if ( ! empty( $img ) ) { $first_img = $img; }else { $first_img = ADVANCED_RELATED_POSTS_ADMIN_URL . '/images/icons/icon-arp-default.png'; } } return $first_img; } public static function ays_arp_get_content_first_image_alt( $id, $img = '' ) { $post = get_post( $id, "OBJECT" ); $output_alt = preg_match_all('//i', $post->post_content, $matches); $first_img_alt = ( isset( $matches [1] [0] ) && ! empty( $matches [1] [0] ) ) ? $matches [1] [0] : ''; return $first_img_alt; } public static function ays_arp_get_part_of_string( $string , $type = 'in_characters', $length = 60) { $str = ''; if ( empty( $string ) ) { return $str; } $string = esc_attr( strip_tags( stripslashes( $string ) ) ); $length = absint( $length ); switch ( $type ) { case 'in_characters': if(strlen( $string ) <= $length ){ $str = $string; } else { $str = substr( $string, 0, $length ) . '...'; } break; case 'in_words': $pieces = explode( " ", $string ); if( count( $pieces ) <= $length ){ $str = implode( " ", $pieces ); } else { $res = array_splice( $pieces, 0, $length ); $str = implode( " ", $res ) . '...'; } break; default: $str = substr( $string, 0, $length ); break; } return $str; } public static function ays_arp_get_all_image_sizes() { global $_wp_additional_image_sizes; $image_sizes = array(); $default_image_sizes = array( 'thumbnail', 'medium', 'medium_large', 'large' ); foreach ( $default_image_sizes as $size ) { $image_sizes[$size]['width'] = intval( get_option( "{$size}_size_w") ); $image_sizes[$size]['height'] = intval( get_option( "{$size}_size_h") ); $image_sizes[$size]['crop'] = get_option( "{$size}_crop" ) ? get_option( "{$size}_crop" ) : false; } if ( isset( $_wp_additional_image_sizes ) && count( $_wp_additional_image_sizes ) ){ $image_sizes = array_merge( $image_sizes, $_wp_additional_image_sizes ); } return $image_sizes; } public static function hex2rgba($color, $opacity = false){ $default = 'rgb(0,0,0)'; //Return default if no color provided if (empty($color)) return $default; //Sanitize $color if "#" is provided if ($color[0] == '#') { $color = substr($color, 1); }else{ return $color; } //Check if color has 6 or 3 characters and get values if (strlen($color) == 6) { $hex = array($color[0] . $color[1], $color[2] . $color[3], $color[4] . $color[5]); } elseif (strlen($color) == 3) { $hex = array($color[0] . $color[0], $color[1] . $color[1], $color[2] . $color[2]); } else { return $default; } //Convert hexadec to rgb $rgb = array_map('hexdec', $hex); //Check if opacity is set(rgba or rgb) if ($opacity) { if (abs($opacity) > 1) $opacity = 1.0; $output = 'rgba(' . implode(",", $rgb) . ',' . $opacity . ')'; } else { $output = 'rgb(' . implode(",", $rgb) . ')'; } //Return rgb(a) color string return $output; } }