Перейти к содержанию
Официальный форум поддержки Simpla

dols4me

Пользователь
  • Публикаций

    90
  • Зарегистрирован

  • Посещение

Сообщения, опубликованные dols4me

  1. Вопрос не решился. Проблема в коде product.tpl. Кто может помочь разобраться за вознограждение. Сразу скажу что на старой версии все работало как надо. Велком в ЛС

  2. Добрый день!

    После перехода на новую версию jquery появилась необходимость поменять live На on.

    есть модули формирования цены при которых цена менялась за счет изменения состава.

    теперь цена берется из дефолтовой указанной в карточке товара, на изменение не реагирует хотя цену формирует.

    Можно ли использовать и старую и новую версию jquery? 

    Или кто может за вознаграждение помочь на локалке мне переписать условия.

     

    // Аяксовая корзина
    $('form.variants').on('submit', function(e) {
    	e.preventDefault();
    	button = $(this).find('input[type="submit"]');
    	if($(this).find('input[name=variant]:checked').length >0 )
    		variant = $(this).find('input[name=variant]:checked').val();
    	if($(this).find('select[name=variant]').length >0)
    		variant = $(this).find('select').val();
    
    	
    	//если есть модули
    	 var modules = new Array();
    		if($(this).find('.val_input').length >0){
    			$('.val_input').each(function(i){
    	    var price = $(this).attr('price');
    	     var opt_id = $(this).attr('opt_id');
    	      var count = $(this).val();
    	    modules[opt_id] = count+'_'+price;
    
     				 });
    
    		}
    
    
    
    	$.ajax({
    		url: "ajax/cart.php",
    		data: {variant: variant, modules: modules},
    		dataType: 'json',
    		success: function(data){
    			$('#cart_informer').html(data);
    			if(button.attr('data-result-text'))
    				button.val(button.attr('data-result-text'));
    
    	//var url = "http://site/cart/";
    	//$(location).attr('href',url);
    
    		}
    	});
    	var o1 = $(this).offset();
    	var o2 = $('#cart_informer').offset();
    	var dx = o1.left - o2.left;
    	var dy = o1.top - o2.top;
    	var distance = Math.sqrt(dx * dx + dy * dy);
    	$(this).closest('.product').find('.image img').effect("transfer", { to: $("#cart_informer"), className: "transfer_class" }, distance);
    	$('.transfer_class').html($(this).closest('.product').find('.image').html());
    	$('.transfer_class').find('img').css('height', '100%');
    
    	
    	return false;
    });
    
  3. Фильтр переделан под чекбоксы. Но спасибо всем за ответы. Не так то просто оказалось это реализовать своими силами. Буду думать и смотреть в сторону модулей.

  4. Добрый вечер!

    Есть страница /products где имеються все товары всех категорий, но не работает на ней фильтр по свойствам и брендам. Куда копать?

     

    {* Фильтр по свойствам *}
    {if $features}
    <form method="get" action="{url page=null}">
        <table id="features">
            {foreach $features as $f}
            <tr>
                <td class="feature_name" data-feature="{$f->id}">
                    {$f->name}:
                </td>
    
                <td class="feature_values">            
                    <ul>
                        {foreach $f->options as $k=>$o}
                        <li style="list-style:none;float:right;margin-right:15px;">
                            <label>
                                <input type="checkbox" name="{$f->id}[]" onchange=" submit(this.form);"style="display:-webkit-box;" {if $filter_features.{$f->id} && in_array($o->value,$filter_features.{$f->id})}checked="checked"{/if} value="{$o->value|escape}" />
                            </label>
                        </li>
                        {/foreach}
                    </ul>
                </td>
            </tr>
    
            {/foreach}
        </table>
    </form>
    {/if}  
    
    
    
    
     {* Фильтр по брендам *}
                            {if $category->brands}
                            <li>
                              <a href="catalog/{$category->url}" style="padding: 7px 20px" {if !$brand->id}class="selected"{/if}>Любая цена</a>
                            </li>
                            <li class="divider"></li>       
                            {foreach name=brands item=b from=$category->brands}
                            {if $b->image}
                            <li>
                              <a data-brand="{$b->id}" style="padding: 7px 20px" href="catalog/{$category->url}/{$b->url}"><img src="{$config->brands_images_dir}{$b->image}" alt="{$b->name|escape}"></a>
                            </li>
                            <li class="divider"></li>
                            {else}
                            <li>
                              <a data-brand="{$b->id}" style="padding: 7px 20px" href="catalog/{$category->url}/{$b->url}" {if $b->id == $brand->id}class="selected"{/if}>{$b->name|escape}</a>
                            </li>
                            <li class="divider"></li>
                            {/if}
                            {/foreach}
                            {/if}
    

     

  5. тоесть выводить через виджет товары по айди? или создавать новый тип по типу рекомендуемые и выводить их.

    Если можно кусок кода с добавлением по айди товаров.

    Спасибо

  6. Скажите пожалуйста 

    Допустим я указал связанные товары только к 1 товару, а в корзине хочу чтобы они были ко всем товарам постоянно.

    Тоесть не каждый товар имеет свои связанные, а все товары имеют общие связанные

  7.  

    {$wrapper = "page2.tpl" scope=parent}
    

    Этим условием вы поменяли основной шаблон, а вам нужно обернуть меню так:

    {if $page->url !== 'otzyvy'}
     Вывод меню
    {/if}
    <!-- Если страница не "Отзывы", то выводим меню, если "Отзывы" — не выводим-->

    это нужно сделать в index.tpl

    спасибо большое! Все так как нужно

  8. Добрый день.

    Как написать условие при котором если пользователь находится на странице отзывы не будет видеть блок меню.

    в голову приходит только 

    {if $page->url== 'otzyvy'}
    {$wrapper = "page2.tpl" scope=parent}
    {/if}
    

    и уже там сделать display none

  9. Добрый день.

    Можно ли используя функционал обратной связи сделать на его основе форму для подписки.

    Email вписал - подписаться нажал - в админке в обратной связи появился email/

    Если это возможно и не сложно то как. Спасибо.

  10. Добрый день!

    Если есть несколько вариантов товаров то меняются они радиобутонами

    Если вариант 1 то радиобутон показывается в карточке товара активным.

    Как выполнить условие при котором если вариант товара 1 то блок с радиобутонами скрывать

     

    код

     

    {if $related_product->variants|count > 0}
    		<!-- Выбор варианта товара -->
    		<form class="variants" action="/cart">
    			<table>
    			{foreach $related_product->variants as $v}
    			<tr class="variant">
    				<td>
    					<input id="related_{$v->id}" name="variant" value="{$v->id}" type="radio" class="variant_radiobutton"  {if $v@first}checked{/if} {if $related_product->variants|count<2} style="display:none;"{/if}/>
    				</td>
    				<td>
    					{if $v->name}<label class="variant_name" for="related_{$v->id}">{$v->name}</label>{/if}
    				</td>
    				<td>
    					{if $v->compare_price > 0}
              <span class="compare_price">{$v->compare_price|convert}</span>{/if}
    					<span class="price">{$v->price|convert} <span class="rur">{$currency->sign|escape}</span></span>
    
    				</td>
    			</tr>
    			{/foreach}
    			</table>
    			<input type="submit" class="button" value="в корзину" data-result-text="добавлено"/>
    		</form>
    		<!-- Выбор варианта товара (The End) -->
    		{else}
    			Нет в наличии
    		{/if}
    	</li>
    	<!-- Товар (The End)-->
    	{/foreach}
    </ul>
    {/if}
    

     

  11. Добрый день!

    Помогите разобраться.

    Необходимо при наведении на товар показывать hover с div -ом кнопкой купить.

    Тоесть иметь вид на главной товар цена - при наведении появляется div с кнопкой купить.

     

  12. все потому что ajax_cart.js использует метод live который является устаревшим для новых версий jQuery. вам нужно либо добавить jQuery Migrate для того чтобы поддерживался live, либо уйти от live и переписать ajax_cart.js 

    Спасибо! Jquery migrate решил мою проблему хотя бы на время.

  13. Вопрос в теме. 

    Беру bootstrap через CDN.

    Добавляю navbar не нравится версия jquery а именно метод live который необходим для правильной работы simpla.

    как поступить? Как их подружить?

    Что бы было понятно что именно не работает, dropdawn и все динамические эллементы.

    Заранее большое спасибо.

  14. очень интересное решение. Еще бы выдавать товар только с нужной валютой (городом), было бы совсем то что нужно мне)) Допустим галочки напротив товара ставить, где ему выводится.

    А так спасибо.

  15. Добрый день!

    Подскажите пожалуйста где ковырять? В админке все заказы под сегоднешней датой. Дата заказа не сохраняется а указывается сегодняшняя дата изо дня в день. Тоесть сейчас все заказы якобы от 28,10

  16. аякс здесь ни при чем, товар в корзину добавляется. у вас где-то ошибка в полях дополнительных которые вы добавили в корзину. из-за этого возникает ошибка и корзина просто перегружается. нужно смотреть код. напишите в личку, посмотрю. 

    Спасибо тебе огромное. Очень помог.

×
×
  • Создать...