• Как настроить оправку с почты с сайтов в режиме многосайтовости?

    @sergeyviktorovich Автор вопроса
    Александр, у меня на почту order@ должно идти с регионов письма .чтобы знать с какого сайта заявка
    от #DEFAULT_EMAIL_FROM# должно быть почта сайта
    кому #SALE_EMAIL# = order@easypol.ru
  • Как настроить оправку с почты с сайтов в режиме многосайтовости?

    @sergeyviktorovich Автор вопроса
    Александр,почему-то и название сайта регионов не пишется
  • Как поменять вид формы ,которая появилась на страницах, которые закрыты?

    @sergeyviktorovich Автор вопроса
    Регистрировать пользователей по номеру телефона: поставить галочку и телефон появится
    bitrix/admin/settings.php?lang=ru&mid=main&mid_menu=1
  • Как поменять вид формы ,которая появилась на страницах, которые закрыты?

    @sergeyviktorovich Автор вопроса
    Вячеслав Климов, а как в него добавить телефон ведь если я добавлю в шаблон ,то он обрабатывается не будет
  • Как вырезать название из строки [:en]Black Brown[:de]Black Brown[:]?

    @sergeyviktorovich Автор вопроса
    Сергей Яковлев, как в этой строке получить название ?подскажи еще пожалуйста
    Pastels - [:en]500 ml[:], Blue Mist
  • Как изменить параметры слайдера owl миниатюр товара из вне?

    @sergeyviktorovich Автор вопроса
    Артем Золин укротил,как к этому подключится из вне?
    (function($) {
      woodmartThemeModule.productImagesGallery = function() {
        var $thumbs = $('.images .thumbnails');
          var $thumbsOwl = $thumbs.owlCarousel();
    }
    })(jQuery);
  • Как изменить параметры слайдера owl миниатюр товара из вне?

    @sergeyviktorovich Автор вопроса
    Артем Золин,
    в папке темы есть фаил productImagesGallery.js ,подумал может правильно его не переносить в тему ,а поключится к слайдеру из вне?
    * global woodmart_settings */
    (function($) {
    	woodmartThemeModule.$document.on('wdReplaceMainGallery', function () {
    		woodmartThemeModule.productImagesGallery();
    	});
    
    	woodmartThemeModule.productImagesGallery = function() {
    		var $mainGallery = $('.woocommerce-product-gallery__wrapper:not(.quick-view-gallery)');
    		var $thumbs = $('.images .thumbnails');
    		var $mainOwl = $('.woocommerce-product-gallery__wrapper');
    		var thumbs_position = woodmart_settings.product_gallery.thumbs_slider.position;
    
    		$thumbs.addClass('thumbnails-ready');
    
    		if (woodmart_settings.product_gallery.images_slider) {
    			if (woodmart_settings.product_slider_auto_height === 'yes') {
    				$('.product-images').imagesLoaded(function() {
    					initMainGallery();
    				});
    			} else {
    				initMainGallery();
    			}
    		} else if (woodmartThemeModule.$window.width() <= 1024 && (thumbs_position === 'bottom_combined' || thumbs_position === 'bottom_column' || thumbs_position === 'bottom_grid')) {
    			initMainGallery();
    		}
    
    		if (woodmart_settings.product_gallery.thumbs_slider.enabled && woodmart_settings.product_gallery.images_slider) {
    			initThumbnailsMarkup();
    			if (woodmart_settings.product_gallery.thumbs_slider.position === 'left' && woodmartThemeModule.$body.width() > 1024 && typeof ($.fn.slick) != 'undefined') {
    				initThumbnailsVertical();
    			} else {
    				initThumbnailsHorizontal();
    			}
    		}
    
    		function initMainGallery() {
    			if ('undefined' === typeof $.fn.owlCarousel) {
    				return;
    			}
    
    			$mainGallery.trigger('destroy.owl.carousel');
    			$mainGallery.addClass('owl-carousel').owlCarousel(woodmartThemeModule.mainCarouselArg);
    			woodmartThemeModule.$document.trigger('wood-images-loaded');
    		}
    
    		function initThumbnailsMarkup() {
    			var markup = '';
    
    			$mainGallery.find('.woocommerce-product-gallery__image').each(function() {
    				var $this = $(this);
    				var image = $this.data('thumb'),
    				    alt   = $this.find('a img').attr('alt'),
    				    title = $this.find('a img').attr('title');
    
    				if ( ! title ) {
    					title = $this.find('a picture').attr('title');
    				}
    
    				markup += '<div class="product-image-thumbnail"><img alt="' + alt + '" title="' + title + '" src="' + image + '" /></div>';
    			});
    
    			if ($thumbs.hasClass('slick-slider')) {
    				$thumbs.slick('unslick');
    			} else if ($thumbs.hasClass('owl-carousel')) {
    				$thumbs.trigger('destroy.owl.carousel');
    			}
    
    			$thumbs.empty();
    			$thumbs.append(markup);
    		}
    
    		function initThumbnailsVertical() {
    			$thumbs.slick({
    				slidesToShow   : woodmart_settings.product_gallery.thumbs_slider.items.vertical_items,
    				slidesToScroll : woodmart_settings.product_gallery.thumbs_slider.items.vertical_items,
    				vertical       : true,
    				verticalSwiping: true,
    				infinite       : false
    			});
    
    			$thumbs.on('click', '.product-image-thumbnail', function() {
    				$mainOwl.trigger('to.owl.carousel', $(this).index());
    			});
    
    			$mainOwl.on('changed.owl.carousel', function(e) {
    				var i = e.item.index;
    
    				$thumbs.slick('slickGoTo', i);
    				$thumbs.find('.active-thumb').removeClass('active-thumb');
    				$thumbs.find('.product-image-thumbnail').eq(i).addClass('active-thumb');
    			});
    
    			$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
    
    			$thumbs.imagesLoaded(function () {
    				$thumbs.slick('setPosition');
    			});
    		}
    
    		function initThumbnailsHorizontal() {
    			if ('undefined' === typeof $.fn.owlCarousel) {
    				return;
    			}
    
    			$thumbs.addClass('owl-carousel').owlCarousel({
    				rtl       : woodmartThemeModule.$body.hasClass('rtl'),
    				items     : woodmart_settings.product_gallery.thumbs_slider.items.desktop,
    				responsive: {
    					1025: {
    						items: woodmart_settings.product_gallery.thumbs_slider.items.desktop
    					},
    					769 : {
    						items: woodmart_settings.product_gallery.thumbs_slider.items.tablet_landscape
    					},
    					577 : {
    						items: woodmart_settings.product_gallery.thumbs_slider.items.tablet
    					},
    					0   : {
    						items: woodmart_settings.product_gallery.thumbs_slider.items.mobile
    					}
    				},
    				dots      : false,
    				nav       : true,
    				navText   : false,
    				navClass : ['owl-prev wd-btn-arrow', 'owl-next wd-btn-arrow'],
    			});
    
    			var $thumbsOwl = $thumbs.owlCarousel();
    
    			$thumbs.on('mouseup', '.owl-item', function() {
    				var i = $(this).index();
    
    				$thumbsOwl.trigger('to.owl.carousel', i);
    				$mainOwl.trigger('to.owl.carousel', i);
    			});
    
    			$mainOwl.on('changed.owl.carousel', function(e) {
    				var i = e.item.index;
    
    				$thumbsOwl.trigger('to.owl.carousel', i);
    				$thumbs.find('.active-thumb').removeClass('active-thumb');
    				$thumbs.find('.product-image-thumbnail').eq(i).addClass('active-thumb');
    			});
    
    			$thumbs.find('.product-image-thumbnail').eq(0).addClass('active-thumb');
    		}
    	};
    
    	$(document).ready(function() {
    		woodmartThemeModule.productImagesGallery();
    	});
    })(jQuery);
  • Как изменить параметры слайдера owl миниатюр товара из вне?

    @sergeyviktorovich Автор вопроса
    Артем Золин,только не совсем пойму сделать дестрой слайдера и по новой запустить его или в момент инициализации можно внести свои параметры?
    и там написано что owl.trigger('') и на нем отловить тригер ,как мне его отловить если переменная в которую он записан инкапсулированна и на какое событие надо добавлять методы свои initialize.owl.carousel или initialized.owl.carousel
  • Как перенести из папки inc /shortcodes/posts-slider.php файлы в дочернюю тему?

    @sergeyviktorovich Автор вопроса
    Антон Литвиненко,так чего его не в два клика перенести а если function засунуть? Проблема в том ,что хочу добавить настройки в слайдер,но не знаю как к нему подключиться из вне, поэтому хочу убрать класс и поставить свой
  • Как перенести из папки inc /shortcodes/posts-slider.php файлы в дочернюю тему?

    @sergeyviktorovich Автор вопроса
    if ( ! function_exists( 'woodmart_generate_posts_slider' ) ) {
    	function woodmart_generate_posts_slider( $atts, $query = false, $products = false ) {
    		$posts_query     = $el_class = $args = $my_query = $speed = '';
    		$slides_per_view = $wrap = $scroll_per_page = $title_out = '';
    		$autoplay        = $hide_pagination_control = $hide_prev_next_buttons = $output = $owl_atts = '';
    		$posts           = array();
    
    		$parsed_atts = shortcode_atts(
    			array_merge(
    				woodmart_get_owl_atts(),
    				array(
    					'el_class'               => '',
    					'posts_query'            => '',
    					'highlighted_products'   => 0,
    					'product_quantity'       => 0,
    					'products_bordered_grid' => 0,
    					'blog_spacing'           => woodmart_get_opt( 'blog_spacing' ),
    					'product_hover'          => woodmart_get_opt( 'products_hover' ),
    					'spacing'                => woodmart_get_opt( 'products_spacing' ),
    					'portfolio_spacing'      => woodmart_get_opt( 'portfolio_spacing' ),
    					'blog_design'            => 'default',
    					'blog_carousel_design'   => 'masonry',
    					'img_size'               => 'large',
    					'title'                  => '',
    					'element_title'          => '',
    					'scroll_carousel_init'   => 'no',
    					'lazy_loading'           => 'no',
    					'elementor'              => false,
    				)
    			),
    			$atts
    		);
    
    		extract( $parsed_atts );
    
    		if ( empty( $product_hover ) || $product_hover == 'inherit' ) {
    			$product_hover = woodmart_get_opt( 'products_hover' );
    		}
    
    		woodmart_set_loop_prop( 'product_hover', $product_hover );
    		woodmart_set_loop_prop( 'img_size', $img_size );
    
    		if ( $blog_design == 'carousel' ) {
    			woodmart_set_loop_prop( 'blog_layout', 'carousel' );
    			woodmart_set_loop_prop( 'blog_design', $blog_carousel_design );
    		}
    
    		if ( ! $query && ! $products && function_exists( 'vc_build_loop_query' ) ) {
    			list( $args, $query ) = vc_build_loop_query( $posts_query );
    		}
    
    		if ( ! $elementor ) {
    			ob_start();
    		}
    
    		$carousel_id = 'carousel-' . rand( 100, 999 );
    		$carousel_classes  = $highlighted_products ? 'wd-highlighted-products' : '';
    		$carousel_classes  .= $highlighted_products ? woodmart_get_old_classes( ' woodmart-highlighted-products' ) : '';
    		if ( $highlighted_products ) {
    			woodmart_enqueue_inline_style( 'highlighted-product' );
    		}
    		if ( woodmart_loop_prop( 'product_quantity' ) ) {
    			$carousel_classes .= ' wd-quantity-enabled';
    		}
    
    		$carousel_classes .= ( $element_title ) ? ' with-title' : '';
    
    		if ( $lazy_loading == 'yes' ) {
    			woodmart_lazy_loading_init( true );
    			woodmart_enqueue_inline_style( 'lazy-loading' );
    		}
    
    		if ( isset( $query->query['post_type'] ) ) {
    			$post_type = $query->query['post_type'];
    		} elseif ( $products ) {
    			$post_type = 'product';
    		} else {
    			$post_type = 'post';
    		}
    
    		$classes           = woodmart_owl_items_per_slide( $slides_per_view, array(), $post_type, false, $custom_sizes );
    		$carousel_classes .= ' slider-type-' . $post_type;
    
    		if ( $post_type == 'post' ) {
    			$carousel_classes .= ' wd-carousel-spacing-' . $blog_spacing;
    		}
    
    		if ( $post_type == 'product' ) {
    			$carousel_classes .= ' wd-carousel-spacing-' . $spacing;
    		}
    
    		if ( $post_type == 'portfolio' ) {
    			$carousel_classes .= ' wd-carousel-spacing-' . $portfolio_spacing;
    		}
    
    		if ( $scroll_carousel_init == 'yes' ) {
    			woodmart_enqueue_js_library( 'waypoints' );
    			$carousel_classes .= ' scroll-init';
    		}
    
    		if ( $products_bordered_grid && ! $highlighted_products ) {
    			woodmart_enqueue_inline_style( 'bordered-product' );
    			$carousel_classes .= ' products-bordered-grid';
    		}
    
    		if ( woodmart_get_opt( 'disable_owl_mobile_devices' ) ) {
    			$carousel_classes .= ' disable-owl-mobile';
    		}
    		
    		if ( $product_quantity ) {
    			$carousel_classes .= ' wd-quantity-enabled';
    		}
    
    		if ( ! $elementor ) {
    			$carousel_classes .= ' wd-wpb';
    		}
    
    		if ( 'none' !== woodmart_get_opt( 'product_title_lines_limit' ) ) {
    			$carousel_classes .= ' title-line-' . woodmart_get_opt( 'product_title_lines_limit' );
    		}
    
    		if ( $el_class ) {
    			$classes .= ' ' . $el_class;
    		}
    
    		$parsed_atts['carousel_id'] = $carousel_id;
    		$parsed_atts['post_type']   = $post_type;
    
    		if ( $parsed_atts['carousel_js_inline'] == 'yes' ) {
    			woodmart_owl_carousel_init( $parsed_atts );
    			$owl_atts = woodmart_get_owl_attributes( $parsed_atts, true );
    		} else {
    			$owl_atts = woodmart_get_owl_attributes( $parsed_atts );
    		}
    
    		woodmart_enqueue_inline_style( 'owl-carousel' );
    
    		if ( ( $query && $query->have_posts() ) || $products ) {
    			if ( $title ) {
    				echo '<h3 class="title slider-title">' . esc_html( $title ) . '</h3>';
    			}
    			?>
    			<div id="<?php echo esc_attr( $carousel_id ); ?>"
    				 class="wd-carousel-container !!!! !! <?php echo esc_attr( $carousel_classes ); ?>" <?php echo ! empty( $owl_atts ) ? $owl_atts : ''; ?>>
    				<?php
    				if ( $element_title ) {
    					echo '<h4 class="title element-title">' . esc_html( $element_title ) . '</h4>';
    				}
    				?>
    				<div class="owl-carousel <?php /*echo esc_attr( $classes ); */?>">
    					
    					<?php
    					if ( $products ) {
    						foreach ( $products as $product ) {
    							woodmart_carousel_query_item( false, $product );
    						}
    					} else {
    						while ( $query->have_posts() ) {
    							woodmart_carousel_query_item( $query );
    						}
    					}
    
    					?>
    				
    				</div> <!-- end product-items -->
    			</div> <!-- end #<?php echo esc_html( $carousel_id ); ?> -->
    			
    			<?php
    
    		}
    		wp_reset_postdata();
    
    		woodmart_reset_loop();
    
    		if ( function_exists( 'wc_reset_loop' ) ) {
    			wc_reset_loop();
    		}
    
    		if ( $lazy_loading == 'yes' ) {
    			woodmart_lazy_loading_deinit();
    		}
    
    		if ( ! $elementor ) {
    			$output = ob_get_contents();
    			ob_end_clean();
    
    			return $output;
    		}
    	}
    }
    
    if ( ! function_exists( 'woodmart_carousel_query_item' ) ) {
    	function woodmart_carousel_query_item( $query = false, $product = false ) {
    		global $post;
    		if ( $query ) {
    			$query->the_post(); // Get post from query
    		} elseif ( $product ) {
    			$post_object = get_post( $product->get_id() );
    			$post        = $post_object;
    			setup_postdata( $post );
    		}
    		?>
    		<div class="slide-<?php echo get_post_type(); ?> owl-carousel-item">
    			
    			<?php if ( get_post_type() == 'product' || get_post_type() == 'product_variation' && woodmart_woocommerce_installed() ) : ?>
    				<?php woodmart_set_loop_prop( 'is_slider', true ); ?>
    				<?php wc_get_template_part( 'content-product' ); ?>
    			<?php elseif ( get_post_type() == 'portfolio' ) : ?>
    				<?php get_template_part( 'content', 'portfolio-slider' ); ?>
    			<?php else : ?>
    				<?php
    				$blog_design = woodmart_loop_prop( 'blog_design' );
    				$blog_template = woodmart_is_blog_design_new( $blog_design ) ? $blog_design : 'slider';
    				?>
    				<?php get_template_part( 'content', $blog_template ); ?>
    			<?php endif ?>
    		
    		</div>
    		<?php
    	}
    }
  • Как перенести из папки inc /shortcodes/posts-slider.php файлы в дочернюю тему?

    @sergeyviktorovich Автор вопроса
    Антон Литвиненко, а как слайдер подправить? чтобы не обновлялся приобновлении темы?
  • Как лучше сделать мультиязычность водпресс плагином или мультисайтом?

    @sergeyviktorovich Автор вопроса
    Alex , он же не бесплатный? в бесплатной версии он переведет частично?
  • Как анимировать заливку svg снизу вверх?

    @sergeyviktorovich Автор вопроса
    так еще можно
    @keyframes wd-preloader-svg-animate {
                from {
                    y: 156px;
                    }
                to {
                    y: 0px;
                    }
                }
    
            rect#preloder-buttle {
                y: 156px;
                animation: wd-preloader-svg-animate 15s ease both;
                }
  • Как в php шторм сделать архив файлов на удаленном сервере?

    @sergeyviktorovich Автор вопроса
    вот так не работает команда
    zip -r adhome.de.zip /var/www/www-root/data/www/gadhome.de -x "/var/www/www-root/data/www/gadhome.de/www"
  • Как в php шторм сделать архив файлов на удаленном сервере?

    @sergeyviktorovich Автор вопроса
    Иван Шумов,а может плагин есть у которого есть интерфейс вместо ssh команд?
  • Почему онлаин касса печатает 2 чека?

    @sergeyviktorovich Автор вопроса
    60f00b9aad82e819154345.png
    Эдуард, а почему по оплате 2 чака ?