| Server IP : 89.108.64.180 / Your IP : 216.73.216.220 Web Server : Apache/2.4.41 (Ubuntu) System : Linux 89-108-64-180.cloudvps.regruhosting.ru 5.4.0-216-generic #236-Ubuntu SMP Fri Apr 11 19:53:21 UTC 2025 x86_64 User : www-root ( 1010) PHP Version : 8.0.30 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /var/www/www-root/data/www/joysochi.ru/wp-content/themes/stockholm/vc_templates/ |
Upload File : |
<?php
// Code in else part is because of compatibility for older versions of VC.
if(version_compare(stockholm_qode_get_vc_version(), '4.7.4') >= 0) {
/**
* Shortcode attributes
* @var $atts
* @var $title
* @var $source
* @var $image
* @var $custom_src
* @var $onclick
* @var $img_size
* @var $external_img_size
* @var $caption
* @var $img_link_large
* @var $link
* @var $img_link_target
* @var $alignment
* @var $el_class
* @var $css_animation
* @var $style
* @var $external_style
* @var $border_color
* @var $css
* Shortcode class
* @var $this WPBakeryShortCode_VC_Single_image
*/
$title = $source = $image = $custom_src = $onclick = $img_size = $external_img_size = $caption = $img_link_large = $link = $img_link_target = $alignment = $el_class = $el_id = $css_animation = $style = $external_style = $border_color = $css = '';
$atts = vc_map_get_attributes( $this->getShortcode(), $atts );
extract( $atts );
$default_src = vc_asset_url( 'vc/no_image.png' );
// backward compatibility. since 4.6
if ( empty( $onclick ) && isset( $img_link_large ) && 'yes' === $img_link_large ) {
$onclick = 'img_link_large';
} elseif ( empty( $atts['onclick'] ) && ( ! isset( $atts['img_link_large'] ) || 'yes' !== $atts['img_link_large'] ) ) {
$onclick = 'custom_link';
}
if ( 'external_link' === $source ) {
$style = $external_style;
$border_color = $external_border_color;
}
$border_color = ( '' !== $border_color ) ? ' vc_box_border_' . $border_color : '';
$img = false;
$img = false;
switch ( $source ) {
case 'media_library':
case 'featured_image':
if ( 'featured_image' === $source ) {
$post_id = get_the_ID();
if ( $post_id && has_post_thumbnail( $post_id ) ) {
$img_id = get_post_thumbnail_id( $post_id );
} else {
$img_id = 0;
}
} else {
$img_id = preg_replace( '/[^\d]/', '', $image );
}
// set rectangular
if ( preg_match( '/_circle_2$/', $style ) ) {
$style = preg_replace( '/_circle_2$/', '_circle', $style );
$img_size = $this->getImageSquareSize( $img_id, $img_size );
}
if ( ! $img_size ) {
$img_size = 'medium';
}
$img = wpb_getImageBySize( array(
'attach_id' => $img_id,
'thumb_size' => $img_size,
'class' => 'vc_single_image-img',
) );
// don't show placeholder in public version if post doesn't have featured image
if ( 'featured_image' === $source ) {
if ( ! $img && 'page' === vc_manager()->mode() ) {
return;
}
}
break;
case 'external_link':
$dimensions = vc_extract_dimensions( $external_img_size );
$hwstring = $dimensions ? image_hwstring( $dimensions[0], $dimensions[1] ) : '';
$custom_src = $custom_src ? esc_attr( $custom_src ) : $default_src;
$img = array(
'thumbnail' => '<img class="vc_single_image-img" ' . $hwstring . ' src="' . $custom_src . '" />',
);
break;
default:
$img = false;
}
if ( ! $img ) {
$img['thumbnail'] = '<img class="vc_img-placeholder vc_single_image-img" src="' . $default_src . '" />';
}
$el_class = $this->getExtraClass( $el_class );
// backward compatibility
if ( vc_has_class( 'prettyphoto', $el_class ) ) {
$onclick = 'link_image';
}
// backward compatibility. will be removed in 4.7+
if ( ! empty( $atts['img_link'] ) ) {
$link = $atts['img_link'];
if ( ! preg_match( '/^(https?\:\/\/|\/\/)/', $link ) ) {
$link = 'http://' . $link;
}
}
// backward compatibility
if ( in_array( $link, array(
'none',
'link_no',
), true ) ) {
$link = '';
}
$a_attrs = array();
switch ( $onclick ) {
case 'img_link_large':
if ( 'external_link' === $source ) {
$link = $custom_src;
} else {
$link = wp_get_attachment_image_src( $img_id, 'large' );
$link = $link[0];
}
break;
case 'link_image':
// wp_enqueue_script( 'prettyphoto' );
// wp_enqueue_style( 'prettyphoto' );
$a_attrs['class'] = 'prettyphoto';
$a_attrs['rel'] = 'prettyPhoto[rel-' . get_the_ID() . '-' . wp_rand() . ']';
$a_attrs['data-rel'] = 'prettyPhoto[rel-' . get_the_ID() . '-' . wp_rand() . ']';
// backward compatibility
if ( ! vc_has_class( 'prettyphoto', $el_class ) && 'external_link' === $source ) {
$link = $custom_src;
} elseif ( ! vc_has_class( 'prettyphoto', $el_class ) ) {
$link = wp_get_attachment_image_src( $img_id, 'large' );
$link = $link[0];
}
break;
case 'custom_link':
// $link is already defined
break;
case 'zoom':
wp_enqueue_script( 'vc_image_zoom' );
if ( 'external_link' === $source ) {
$large_img_src = $custom_src;
} else {
$large_img_src = wp_get_attachment_image_src( $img_id, 'large' );
if ( $large_img_src ) {
$large_img_src = $large_img_src[0];
}
}
$img['thumbnail'] = str_replace( '<img ', '<img data-vc-zoom="' . $large_img_src . '" ', $img['thumbnail'] );
break;
}
// backward compatibility
if ( vc_has_class( 'prettyphoto', $el_class ) ) {
$el_class = vc_remove_class( 'prettyphoto', $el_class );
}
$html = ( 'vc_box_shadow_3d' === $style ) ? '<span class="vc_box_shadow_3d_wrap">' . $img['thumbnail'] . '</span>' : $img['thumbnail'];
$html = '<div class="vc_single_image-wrapper ' . $style . ' ' . $border_color . '">' . $html . '</div>';
if ( $link ) {
$a_attrs['href'] = $link;
$a_attrs['target'] = $img_link_target;
$html = '<a ' . vc_stringify_attributes( $a_attrs ) . '>' . $html . '</a>';
}
$class_to_filter = 'wpb_single_image wpb_content_element vc_align_' . $alignment . ' ' . $this->getCSSAnimation( $css_animation );
$class_to_filter .= vc_shortcode_custom_css_class( $css, ' ' ) . $this->getExtraClass( $el_class );
$css_class = apply_filters( VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, $class_to_filter, $this->settings['base'], $atts );
if ( in_array( $source, array( 'media_library', 'featured_image' ), true ) && 'yes' === $add_caption ) {
$img_id = apply_filters( 'wpml_object_id', $img_id, 'attachment' );
$post = get_post( $img_id );
$caption = $post->post_excerpt;
} else {
if ( 'external_link' === $source ) {
$add_caption = 'yes';
}
}
if ( 'yes' === $add_caption && '' !== $caption ) {
$html .= '<figcaption class="vc_figure-caption">' . esc_html( $caption ) . '</figcaption>';
}
if(isset($qode_css_animation) && $qode_css_animation != ""){
$css_class .= " " . $qode_css_animation;
}
$before_wrapper_start = "";
$before_wrapper_end = "";
if($transition_delay != ""){
$before_wrapper_start = '<div style="transition-delay:' . $transition_delay . 's">';
$before_wrapper_end = '</div>';
}
$output = '
<div class="' . esc_attr( trim( $css_class ) ) . '">' . $before_wrapper_start .'
<div class="wpb_wrapper">
' . wpb_widget_title( array( 'title' => $title, 'extraclass' => 'wpb_singleimage_heading' ) ) . '
' . $html . '
</div>' . $before_wrapper_end .'
</div>
';
echo stockholm_qode_get_module_part($output);
} else {
$output = $el_class = $image = $img_size = $img_link = $img_link_target = $img_link_large = $title = $alignment = $css_animation = $css = '';
extract(shortcode_atts(array(
'title' => '',
'image' => $image,
'img_size' => 'thumbnail',
'img_link_large' => false,
'img_link' => '',
'link' => '',
'img_link_target' => '_self',
'alignment' => 'left',
'el_class' => '',
'css_animation' => '',
'style' => '',
'border_color' => '',
'qode_css_animation' => '',
'transition_delay' => '',
'css' => ''
), $atts));
$style = ($style != '') ? $style : '';
$border_color = ($border_color != '') ? ' vc_box_border_' . $border_color : '';
$img_id = preg_replace('/[^\d]/', '', $image);
// Set rectangular.
if (preg_match('/_circle_2$/', $style)) {
$style = preg_replace('/_circle_2$/', '_circle', $style);
$img_size = $this->getImageSquereSize($img_id, $img_size);
}
$img = wpb_getImageBySize(array(
'attach_id' => $img_id,
'thumb_size' => $img_size,
'class' => 'vc_single_image-img'
));
if ($img == null) {
$img['thumbnail'] = '<img class="vc_img-placeholder vc_single_image-img" src="' . vc_asset_url('vc/no_image.png') . '" />';
}
$el_class = $this->getExtraClass($el_class);
$a_class = '';
if ($el_class != '') {
$tmp_class = explode(" ", strtolower($el_class));
$tmp_class = str_replace(".", "", $tmp_class);
if (in_array("prettyphoto", $tmp_class)) {
wp_enqueue_script('prettyphoto');
wp_enqueue_style('prettyphoto');
$a_class = ' class="prettyphoto"' . ' data-rel="prettyPhoto[rel-' . get_the_ID() . '-' . wp_rand() . ']"';
$el_class = str_ireplace(" prettyphoto", "", $el_class);
}
}
$link_to = '';
if ($img_link_large == true) {
$link_to = wp_get_attachment_image_src($img_id, 'large');
$link_to = $link_to[0];
} else if (strlen($link) > 0) {
$link_to = $link;
} else if (!empty($img_link)) {
$link_to = $img_link;
if (!preg_match('/^(https?\:\/\/|\/\/)/', $link_to)) {
$link_to = 'http://' . $link_to;
}
}
//to disable relative links uncomment this..
if (isset($qode_css_animation) && $qode_css_animation != "") {
$clsss_css_animation = " " . $qode_css_animation;
} else {
$clsss_css_animation = "";
}
$delay = "";
if ($transition_delay != "") {
$delay = " style='transition-delay:" . $transition_delay . "s'";
}
$img_output = ($style == 'vc_box_shadow_3d') ? '<span class="vc_box_shadow_3d_wrap">' . $img['thumbnail'] . '</span>' : $img['thumbnail'];
$image_string = !empty($link_to) ? '<a' . esc_attr($a_class) . ' href="' . esc_url($link_to) . '"' . ' target="' . esc_attr($img_link_target) . '"' . '><div class="vc_single_image-wrapper ' . $style . ' ' . $border_color . '">' . $img_output . '</div></a>' : '<div class="vc_single_image-wrapper ' . $style . ' ' . $border_color . '">' . $img_output . '</div>';
$css_class = apply_filters(VC_SHORTCODE_CUSTOM_CSS_FILTER_TAG, 'wpb_single_image wpb_content_element' . $el_class . vc_shortcode_custom_css_class($css, ' '), $this->settings['base'], $atts);
$css_class .= $this->getCSSAnimation($css_animation);
$css_class .= ' vc_align_' . $alignment;
$output .= "\n\t" . '<div class="' . esc_attr($css_class) . esc_attr($clsss_css_animation) . '">';
$output .= "\n\t\t" . '<div' . wp_kses($delay, array('style')) . '>';
$output .= "\n\t\t" . '<div class="wpb_wrapper">';
$output .= "\n\t\t\t" . wpb_widget_title(array('title' => $title, 'extraclass' => 'wpb_singleimage_heading'));
$output .= "\n\t\t\t" . $image_string;
$output .= "\n\t\t" . '</div> ' . $this->endBlockComment('.wpb_wrapper');
$output .= "\n\t\t" . '</div>';
$output .= "\n\t" . '</div> ' . $this->endBlockComment('.wpb_single_image');
echo stockholm_qode_get_module_part($output);
}