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

Сравнение товаров, избранное и любые другие списки


Рекомендуемые сообщения

Вы только флуд гнать не боитесь...

И второй момент - Вы не хотите помочь страждущим, Ваша цель - услышать похвалу самому себе. Иначе не боялись бы...

 

у тебя ... шанс нагнать клиентов.. максимально пиариться тут на форуме... что ты и делаешь.

это твой выбор. хоть одну ссылку рекламную видел от меня на форуме? делай выводы

Ссылка на сообщение
Поделиться на другие сайты
  • Ответов 94
  • Дата создания
  • Последний ответ

Лучшие авторы в теме

Лучшие авторы в теме

Изображения в теме

Корс .. вот ты зануда капец.. выцепляешь нужную тебе фразу и ОБСАСЫВАЕШЬ ЕЁ

"Эхо войны"

Изменено пользователем ST_RU
Ссылка на сообщение
Поделиться на другие сайты

я за ночь с пятницы ответил примерно ДВАДЦАТИ ЗАКАЗЧИКАМ В ПОЧТЕ и помог...

Один на один с неспециалистом - оно, конечно, проще. Если где ошибешься, не заметит. И в любом случае, скажет - спасибо, молодец, помог, я так не умею.

 

Как говорится, молодец среди овец...

Ссылка на сообщение
Поделиться на другие сайты

тебе виднее .. ты ж волк в отаре

 

 

ps корс... ты старый же капец..тебе 50 или сколько, я забыл... откуда у тебя эта тяга спорить?

лично у меня возрастное - молчать... и смотреть ... чего будет.

Изменено пользователем ST_RU
Ссылка на сообщение
Поделиться на другие сайты

поставь аватарку Alf смешнее будет

например эту

Изменено пользователем ST_RU
Ссылка на сообщение
Поделиться на другие сайты

Пробуйте так:

 

$compared = isset($_SESSION['compared_products']) ? (array)$_SESSION['compared_products'] : array();

$this->design->assign('compared_products', $compared);

А скажите, добавлять после той же строки?

Ссылка на сообщение
Поделиться на другие сайты

Пробуйте так:

 

$compared = isset($_SESSION['compared_products']) ? (array)$_SESSION['compared_products'] : array();

$this->design->assign('compared_products', $compared);

Изменено пользователем Vadokk12345
Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...
  • 4 недели спустя...

Добавил в product.tpl кнопки добавления в сравнение и избранное

         <ul class="compareulprod"><li><img src="design/{$settings->theme|escape}/images/conpare_small.png"></li>
   <li class="inform">
   {if $compare->ids && in_array($product->id, $compare->ids)}
        <div class='mylist_add'>В сравнении</div>
        {else}
        <div class='mylist_add'><a href="/compare?id={$product->id}" class='addps' data-id='{$product->id}' data-key='compare' data-informer='1' data-result-text='В сравнении'>Сравнение</a></div>
        {/if}
  </li></ul>
   <ul class="compareulprod"><li><img src="design/{$settings->theme|escape}/images/heart_small.png"></li>
   <li class="inform">
        {if $page->url !== 'wishlist'}
            {if $wishlist->ids && in_array($product->id, $wishlist->ids)}
            <div class='mylist_add'>Отложено</div>
            {else}
            <div class='mylist_add'><a href="/wishlist?id={$product->id}" class='addps' data-id='{$product->id}' data-key='wishlist' data-informer='1' data-result-text='Отложено'>Отложить</a></div>
            {/if}
        {else}
            <div class='mylist_add'><a href="/wishlist?remove={$product->id}">удалить</a></div>
        {/if}
    </li></ul>

при перезагрузке страницы кнопки скидываются.

Помогите решить. Думаю дело в product_to_session.js

Ссылка на сообщение
Поделиться на другие сайты
  • 3 месяца спустя...

Добавил в product.tpl кнопки добавления в сравнение и избранное

         <ul class="compareulprod"><li><img src="design/{$settings->theme|escape}/images/conpare_small.png"></li>
   <li class="inform">
   {if $compare->ids && in_array($product->id, $compare->ids)}
        <div class='mylist_add'>В сравнении</div>
        {else}
        <div class='mylist_add'><a href="/compare?id={$product->id}" class='addps' data-id='{$product->id}' data-key='compare' data-informer='1' data-result-text='В сравнении'>Сравнение</a></div>
        {/if}
  </li></ul>
   <ul class="compareulprod"><li><img src="design/{$settings->theme|escape}/images/heart_small.png"></li>
   <li class="inform">
        {if $page->url !== 'wishlist'}
            {if $wishlist->ids && in_array($product->id, $wishlist->ids)}
            <div class='mylist_add'>Отложено</div>
            {else}
            <div class='mylist_add'><a href="/wishlist?id={$product->id}" class='addps' data-id='{$product->id}' data-key='wishlist' data-informer='1' data-result-text='Отложено'>Отложить</a></div>
            {/if}
        {else}
            <div class='mylist_add'><a href="/wishlist?remove={$product->id}">удалить</a></div>
        {/if}
    </li></ul>

при перезагрузке страницы кнопки скидываются.

Помогите решить. Думаю дело в product_to_session.js

 

 

перед кнопками поставь 

 

{get_session_products key=compare}
{get_session_products key=wishlist}
Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...
Подскажите кто устанавливал на 2.3.7?
Сравнил код, внес правки. Товары добавляются, но при в ходе в список - "Страница не найдена"

 

прошу прошения

забыл создать страницы

 

Большое спасибо автору!

Изменено пользователем Иван568
Ссылка на сообщение
Поделиться на другие сайты
  • 2 месяца спустя...

 

В новых jQuery  надо менять:

.live

на

.on

 

Действительно,с  версиями JQuery выше 2.0.0 не работает. перекидывает при клике на страницу списка. Та же ошибка имеет место.

И замена .live на .on - не помогает.

Поставил JQuery 1.8.4 - все заработало. Но виджет Вконтакта раздвоился... Как сие победить, чтоб модуль корректно работал с более современными версиями JQuerry?

Ссылка на сообщение
Поделиться на другие сайты

Действительно,с  версиями JQuery выше 2.0.0 не работает. перекидывает при клике на страницу списка. Та же ошибка имеет место.

И замена .live на .on - не помогает.

Поставил JQuery 1.8.4 - все заработало. Но виджет Вконтакта раздвоился... Как сие победить, чтоб модуль корректно работал с более современными версиями JQuerry?

попробуйте вернуть на 2х версию как было и добавить jQuery Migrate

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

Спасибо большое уважаемому DaVinci за весьма полезное решение. Особенно, безусловно, радует свободный доступ к скрипту, который мало кто бы выложил в паблик.

Относительно ранее описанных тем по поводу нерабочего аякса - у меня на php 5.4 и simpla 2.3.7 все прекрасно работает.

Но вот хотел бы спросить: возможно ли вывести 2 информера на страницу, то есть:

1. compare_informer

2. compare_informer2

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

 

Спасибо.

Буду благодарен за любую идею и помощь.

Ссылка на сообщение
Поделиться на другие сайты

Но вот хотел бы спросить: возможно ли вывести 2 информера на страницу, то есть:

1. compare_informer

2. compare_informer2

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

Что мешает заключить содержимое информера (верстку) в отдельный tpl файл, далее подключать его в нужном месте, к примеру:
<div id="compare">
{include file="compare_informer.tpl"}
</div>
Пример можете посмотреть в стандартном шаблоне симплы.
Ссылка на сообщение
Поделиться на другие сайты

 

Что мешает заключить содержимое информера (верстку) в отдельный tpl файл, далее подключать его в нужном месте, к примеру:

<div id="compare">
{include file="compare_informer.tpl"}
</div>
Пример можете посмотреть в стандартном шаблоне симплы.

 

 

Что мешает заключить содержимое информера (верстку) в отдельный tpl файл, далее подключать его в нужном месте, к примеру:

<div id="compare">
{include file="compare_informer.tpl"}
</div>
Пример можете посмотреть в стандартном шаблоне симплы.

 

Спасибо большое, но безусловно так пробовал. Но аяксом обновляется только первый по счету блок - второй стоит на месте (как Вы понимаете помогает только перезагрузка страницы). К тому же я хотел бы подключить два шаблона информеров (например, compare_informer.tpl и compare_informer1.tpl)

Ссылка на сообщение
Поделиться на другие сайты

Примерно так:

 

1. в PHP

    $result = stdclass();
    $result->informer = $simpla->design->fetch('compare_informer.tpl');
    $result->informer1 = $simpla->design->fetch('compare_informer1.tpl');

2. в JS

        success: function(data){
            $('#compare').html(data.informer);
            $('#compare1').html(data.informer1);
 

Ссылка на сообщение
Поделиться на другие сайты

Примерно так:

 

1. в PHP

    $result = stdclass();

    $result->informer = $simpla->design->fetch('compare_informer.tpl');

    $result->informer1 = $simpla->design->fetch('compare_informer1.tpl');

 

2. в JS

        success: function(data){

            $('#compare').html(data.informer);

            $('#compare1').html(data.informer1);

 

 

Спасибо большое!

Сам что-то подобное прописывал, вроде результата не было, но попробую и сразу же отпишусь. Спасибо.

Ссылка на сообщение
Поделиться на другие сайты

Наконец-то удалось все интегрировать, но к сожалению, как я и говорил только верхний обновляется =(

Добавляю свои части кода:

В product_to_session.php

$_SESSION[$key][$product->id] = $product->id; // записываем значение в сессию

$result = new stdClass();
$result->key   = $key; // ключ
$result->ids   = $_SESSION[$key]; // сессия
$result->count = count($_SESSION[$key]); // количество

if(!empty($i)){
    $simpladev->design->assign('session', $result);
    $result->informer = $simpladev->design->fetch('products_session_'.$key.'_informer.tpl'); // информер если указали
    $result->informer2 = $simpladev->design->fetch('products_session_'.$key.'_informer2.tpl'); // информер если указали
}

В product_to_session.js:

$('.addps').live('click',function(e)
{
	e.preventDefault();
    href     = $(this);
    key      = $(this).data('key');
    id       = $(this).data('id');
    informer = $(this).data('informer');

	$.ajax({
		url: "ajax/product_to_session.php",
		data: {key: key, id: id, i:informer},
		dataType: 'json',
		success: function(data)
        {
            $('#'+key+'_informer').html(data.informer);
	    $('#'+key+'_informer2').html(data.informer2);
	}
	});

	return false;
});

Интеграция в index.tpl:

<div id="compare_informer" class="wrap">
     {get_session_products key=compare}
	{include file='products_session_compare_informer.tpl' session=$compare}
         </div>

И

<div id="compare_informer2" class="wrap">
	{include file='products_session_compare_informer2.tpl' session=$compare}
         </div>

Спасибо.

Ссылка на сообщение
Поделиться на другие сайты
  • 1 месяц спустя...

попробуйте вернуть на 2х версию как было и добавить jQuery Migrate

 

Все перепробовал - не помогает.

Причем на локальном хосте - с версиями cкрипа jquery-1.8.2.min.js работает все исправно, а на сервере - в списки избранного добавляется товар а при переходе на страницу списка - показывает "товары не найдены"... Чет не пойму я в общем...

Ссылка на сообщение
Поделиться на другие сайты
  • 4 недели спустя...

Скажите, как Cookie сохранять? Чтобы после закрытия браузера оставались товары в избранном и в сравнении ?

Спасибо. 

Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...

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