403Webshell
Server IP : 195.58.49.151  /  Your IP : 216.73.217.39
Web Server : Apache/2.4.67 (Debian) mod_fcgid/2.3.9 OpenSSL/3.0.20
System : Linux hs.hsdns.ru 6.1.0-48-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.172-1 (2026-05-15) x86_64
User : antilam ( 1007)
PHP Version : 8.4.22
Disable Function : system,passthru,popen
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : OFF
Directory :  /home/antilam/web/antilam.ru/public_html/wp-content/themes/woodmart/inc/integrations/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /home/antilam/web/antilam.ru/public_html/wp-content/themes/woodmart/inc/integrations/shortpixel.php
<?php
/**
 * ShortPixel Image Optimizer integration.
 *
 * @package woodmart
 */

if ( ! defined( 'SHORTPIXEL_IMAGE_OPTIMISER_VERSION' ) ) {
	return;
}

if ( ! function_exists( 'woodmart_shortpixel_convert_srcset_to_webp' ) ) {
	/**
	 * Converts product thumbnail srcset URLs to WebP or AVIF format.
	 *
	 * @param string $image_srcset Image srcset attribute value.
	 * @param int    $attachment_id Attachment ID.
	 * @return string Modified srcset with WebP/AVIF URLs.
	 */
	function woodmart_shortpixel_convert_srcset_to_webp( $image_srcset, $attachment_id ) {
		if ( ! function_exists( 'wpSPIO' ) || ! $image_srcset ) {
			return $image_srcset;
		}

		$image_path = wp_get_original_image_path( $attachment_id );

		if ( ! $image_path ) {
			return $image_srcset;
		}

		$image_srcset_array = explode( ',', $image_srcset );

		foreach ( $image_srcset_array as $key => $srcset_line ) {
			$srcset_line_array = explode( ' ', trim( $srcset_line ) );

			if ( false === strpos( $srcset_line_array[0], '.webp' ) && false === strpos( $srcset_line_array[0], '.avif' ) ) {
				$parsed_url = wp_parse_url( $srcset_line_array[0] );

				if ( ! isset( $parsed_url['path'] ) ) {
					continue;
				}

				$webp_path = woodmart_shortpixel_get_converted_image_path( $parsed_url['path'], 'webp' );
				$webp_file = ABSPATH . ltrim( $webp_path, '/' );

				if ( file_exists( $webp_file ) ) {
					$srcset_line_array[0] = woodmart_shortpixel_build_image_url( $parsed_url, $webp_path );
				} else {
					$avif_path = woodmart_shortpixel_get_converted_image_path( $parsed_url['path'], 'avif' );
					$avif_file = ABSPATH . ltrim( $avif_path, '/' );

					if ( file_exists( $avif_file ) ) {
						$srcset_line_array[0] = woodmart_shortpixel_build_image_url( $parsed_url, $avif_path );
					}
				}
			}

			$image_srcset_array[ $key ] = implode( ' ', $srcset_line_array );
		}

		return implode( ',', $image_srcset_array );
	}

	add_filter( 'woodmart_product_thumbnails_urls_image_srcset', 'woodmart_shortpixel_convert_srcset_to_webp', 10, 2 );
	add_filter( 'woodmart_get_webp_image_srcset', 'woodmart_shortpixel_convert_srcset_to_webp', 10, 2 );
}

if ( ! function_exists( 'woodmart_shortpixel_get_converted_image_path' ) ) {
	/**
	 * Get converted image path for WebP or AVIF.
	 *
	 * @param string $path Original image path.
	 * @param string $type Image type (webp or avif).
	 * @return string Converted image path.
	 */
	function woodmart_shortpixel_get_converted_image_path( $path, $type ) {
		$is_double = ( 'webp' === $type )
			? \wpSPIO()->env()->useDoubleWebpExtension()
			: \wpSPIO()->env()->useDoubleAvifExtension();

		if ( $is_double ) {
			return $path . '.' . $type;
		} else {
			return substr( $path, 0, strrpos( $path, '.' ) ) . '.' . $type;
		}
	}
}

if ( ! function_exists( 'woodmart_shortpixel_build_image_url' ) ) {
	/**
	 * Build image URL from parsed URL and new path.
	 *
	 * @param array  $parsed_url Parsed URL array.
	 * @param string $new_path New image path.
	 * @return string Complete image URL.
	 */
	function woodmart_shortpixel_build_image_url( $parsed_url, $new_path ) {
		$new_url = $parsed_url['scheme'] . '://' . $parsed_url['host'];

		if ( isset( $parsed_url['port'] ) ) {
			$new_url .= ':' . $parsed_url['port'];
		}

		$new_url .= $new_path;

		return $new_url;
	}
}

Youez - 2016 - github.com/yon3zu
LinuXploit