| 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/shortcodes/ |
Upload File : |
<?php
/**
* Shortcode for 3D view element.
*
* @package woodmart
*/
if ( ! defined( 'WOODMART_THEME_DIR' ) ) {
exit( 'No direct script access allowed' );
}
if ( ! function_exists( 'woodmart_shortcode_3d_view' ) ) {
/**
* 3D view shortcode.
*
* @param array $atts Shortcode attributes.
*
* @return string
*/
function woodmart_shortcode_3d_view( $atts ) {
$click = '';
$output = '';
$class = '';
extract( // phpcs:ignore WordPress.PHP.DontExtract.extract_extract
shortcode_atts(
array(
'images' => '',
'img_size' => 'full',
'title' => '',
'style' => '',
'el_class' => '',
),
$atts
)
);
$id = wp_rand( 100, 999 );
$images = explode( ',', $images );
$class .= ' ' . $el_class;
$frames_count = count( $images );
if ( $frames_count < 2 ) {
return;
}
ob_start();
woodmart_enqueue_js_library( 'threesixty' );
woodmart_enqueue_js_script( 'view3d-element' );
woodmart_enqueue_inline_style( '360degree' );
$args = array(
'frames_count' => count( $images ),
'images' => array(),
'width' => '',
'height' => '',
);
foreach ( $images as $img_id ) {
$img = wp_get_attachment_image_src( $img_id, $img_size );
$args['width'] = isset( $img[1] ) ? $img[1] : '';
$args['height'] = isset( $img[2] ) ? $img[2] : '';
$args['images'][] = isset( $img[0] ) ? $img[0] : '';
}
?>
<div class="wd-threed-view<?php echo esc_attr( $class ); ?> threed-id-<?php echo esc_attr( $id ); ?>" data-args='<?php echo wp_json_encode( $args ); ?>'>
<?php if ( ! empty( $title ) ) : ?>
<h3 class="threed-title"><span><?php echo wp_kses( $title, woodmart_get_allowed_html() ); ?></span></h3>
<?php endif ?>
<ul class="threed-view-images"></ul>
<div class="spinner">
<span>0%</span>
</div>
</div>
<?php
$output = ob_get_contents();
ob_end_clean();
return $output;
}
}