', esc_html( $tag ) ); if ( ! empty( $url ) ) { printf( '%2$s', esc_url( $url ), esc_html( $title ) ); } else { echo esc_html( $title ); } printf( '%s>', esc_html( $tag ) ); } /** * Build sanitized settings from AJAX request. * * @return array */ function gridelwi_get_ajax_settings() { // Nonce validation happens in each AJAX callback before this helper is called. if ( ! filter_has_var( INPUT_POST, 'settings' ) ) { return array(); } $raw_settings = filter_input( INPUT_POST, 'settings', FILTER_DEFAULT, FILTER_REQUIRE_ARRAY ); if ( ! is_array( $raw_settings ) ) { return array(); } return gridelwi_sanitize_request_value( $raw_settings ); } /** * Display post thumbnail markup. * * @param string $thumbsize Thumbnail size. * @return string */ function gridelwi_display_post_thumb( $thumbsize ) { $output = ''; if ( has_post_thumbnail() ) { $output = gridelwi_post_thumbnail( $thumbsize ); } return $output; } /** * Get post thumbnail HTML. * * @param string $thumbsize Thumbnail size. * @param string $link Optional link. * @return string|null */ function gridelwi_post_thumbnail( $thumbsize = '', $link = '' ) { if ( post_password_required() || is_attachment() || ! has_post_thumbnail() ) { return null; } global $post; $link = empty( $link ) ? get_permalink() : $link; $html = ''; if ( is_singular( 'post' ) && is_single( $post ) ) { $html .= '