Romalibert Posted June 18, 2013 Report Share Posted June 18, 2013 Итак, вот вам моя маленькая наработка, суть виджета в том, что админ сайта вставляет один див и скрипт на свой ресурс и у него рандомно отображаются товары с вашего сайта(более эффективная реклама, нежели баннер, заменил баннеры "tower" на виджеты и продажи увеличились) Всё крайне просто:для начала в корне сайта в файл .htacess нужно добавить следующий код: RewriteRule ^widget/?$ widget.php [L,QSA] После скачать прикреплённый файл widget.php и загрузить его в корень сайта. Далее отослать админу ресурса следующий код для вставки на свой сайт: <div id="w_widget"></div> <script> function returnObjById( id ){ if (document.getElementById) var returnVar = document.getElementById(id); else if (document.all) var returnVar = document.all[id]; else if (document.layers) var returnVar = document.layers[id]; return returnVar; }; var w_widget; w_widget=returnObjById('w_widget'); var head= document.getElementsByTagName('head')[0]; var script= document.createElement('script'); script.type= 'text/javascript'; script.src = 'http://example.com/widget/?pid=partner&width_w=200&slide=4&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' head.appendChild(script); </script> подробнее стоит разобрать следующую ссылку(я её выделил в коде):http://example.com/widget/?pid=partner&width_w=200&slide=4&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40вместо example.com вставляем адрес своего сайтадалее:pid = можете не трогать, значение в pid в конец ссылки товара добавляет /#partner это для статистики по партнёрской программе (подробнее я писал про партнёрку тут)width_w = ширина виджетаslide = колличество товаров в виджете(максимально 5, если нужно больше меняйте в файле widget.php условия запроса LIMIT )show_pic = 1 если значение равно 1 то показывает изображенияdescription = 1 если значение равно 1 то показывает описание товараsizeimg = ширина/высота изображенияname = 1 если значение равно 1 то показывает название товараprice_on = 1 если значение равно 1 то показывает цену товараl_desc = длинна описания, описание прерывается на последнем слове вместо "этоочень хороший това..." будет "это очень хороший..."n_desc = длинна названия, тут всё так-же как и с описанием.bonus = после какой суммы товара к стоимости будет добавляться + подарок Виджет загружает только товары с изображением.Так-же виджет не работал если в названии товара или описании использовался апостраф, поправил и это. По моим сугубо личным подсчётам виджеты дают больше переходов и покупок нежели баннеры(анализирую через партнёрку и гугл торговлю) данный виджет неблокирующий, то есть если у вас упадёт сервер или база будетсильно тормозить это никак не скажется на ресурсе админа выложившего вашвиджет. И да, я совсем новичок в программировании, критические замечания и предложения по улучшению приветствуются. По поводу дизайна виджета: цвета, размер букв, бордеры и прочее меняйте сами, в помощь firebug и прямые руки+хотя-бы базовые знания CSS, стили прописаны в файле widget.php Вот пример как выглядит виджет на пустой страничке: Горизонтальный виджет сделаю, но позже, сейчас достаточно моного работы. Спасибо за вниманиеwidget.php Quote Link to post Share on other sites
Dr_Brown Posted June 19, 2013 Report Share Posted June 19, 2013 Сделал все по иструкции, вставил код, на второй свой проект не работает, в консоли яваскрипт пишет 404...? Quote Link to post Share on other sites
Dr_Brown Posted June 25, 2013 Report Share Posted June 25, 2013 Автор, может поможете допилить ? Quote Link to post Share on other sites
Romalibert Posted July 1, 2013 Author Report Share Posted July 1, 2013 Автор, может поможете допилить ? Скинь ссылки в личку, посмотрим и доделаем=) Quote Link to post Share on other sites
xmaks82 Posted September 9, 2013 Report Share Posted September 9, 2013 Вот здесь script.src = 'http://example.com/widget/?pid=partner&width_w=200&slide=4&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' необходимо исправить на script.src = 'http://example.com/widget.php/?pid=partner&width_w=200&slide=4&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' тогда все работает Quote Link to post Share on other sites
Guest blockinfo Posted September 9, 2013 Report Share Posted September 9, 2013 В Joomla 1.5 не заработалоВсё отлично. Спасибо. Quote Link to post Share on other sites
Dr_Brown Posted September 9, 2013 Report Share Posted September 9, 2013 Причем тут жумла? Quote Link to post Share on other sites
xmaks82 Posted September 10, 2013 Report Share Posted September 10, 2013 Joomla 3.1.5, отлично работает, модуль произвольный html Quote Link to post Share on other sites
Romalibert Posted September 13, 2013 Author Report Share Posted September 13, 2013 Joomla 3.1.5, отлично работает, модуль произвольный htmlТак собственно это решение под симплу с запросами к симпле и API симплы, как оно вообще может с джумлой работать? Quote Link to post Share on other sites
xmaks82 Posted September 13, 2013 Report Share Posted September 13, 2013 Так собственно это решение под симплу с запросами к симпле и API симплы, как оно вообще может с джумлой работать?имеется в виду виджет прекрасно выводится на жумле) Quote Link to post Share on other sites
bezrolikov Posted May 15, 2014 Report Share Posted May 15, 2014 На html странице виджет не выводится. Но я пока тестирую возможности Симплы и пока использую пробную лицензию. Может ли дело быть в этом или надо искать другие причины? Спасибо! всё по инструкции:вставил строку в .htaccessзагрузил в корень widget.phpвставил код в сайт-донор(на тестовой странице убрал весь код кроме мета, дива и скрипта) не работает (Simpla 2.3.3 <!DOCTYPE html> <head> <title>Тест виджета</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> </head> <body> <div id="w_widget"></div> <script> function returnObjById( id ){ if (document.getElementById) var returnVar = document.getElementById(id); else if (document.all) var returnVar = document.all[id]; else if (document.layers) var returnVar = document.layers[id]; return returnVar; }; var w_widget; w_widget=returnObjById('w_widget'); var head= document.getElementsByTagName('head')[0]; var script= document.createElement('script'); script.type= 'text/javascript'; script.src = 'http://igrushekmagazin.ru/widget.php/?pid=partner&width_w=200&slide=4&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' head.appendChild(script); </script> </body> </html> Quote Link to post Share on other sites
kibi Posted May 23, 2014 Report Share Posted May 23, 2014 У меня сначала тоже не работало, поправил немного под Simpla 2.3.3. Код на сайте такой: <div id="w_widget"></div> <script> function returnObjById( id ){ if (document.getElementById) var returnVar = document.getElementById(id); else if (document.all) var returnVar = document.all[id]; else if (document.layers) var returnVar = document.layers[id]; return returnVar; }; var w_widget; w_widget=returnObjById('w_widget'); var head= document.getElementsByTagName('head')[0]; var script= document.createElement('script'); script.type= 'text/javascript'; script.src = 'http://example.com/widget.php?width_w=200&slide=2&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' head.appendChild(script); </script> В htaccess ничего не добавлял Файл виджета widget.php Quote Link to post Share on other sites
cernos Posted May 26, 2014 Report Share Posted May 26, 2014 Рекомендации для обновления:Возможность выбора категорий из которых производить выбор товаровВозможность вывода только акционных товаров или хитовСделайте кеш для информера, автоматическое удаление кеша через N - указанное в настройках время. (иначе при размещении информера на высокопосещаемых ресурсах значительно вырастет нагрузка на сервер БД)Модуль не ставил, но пригодится, спасибо!!! Quote Link to post Share on other sites
bezrolikov Posted May 30, 2014 Report Share Posted May 30, 2014 У меня сначала тоже не работало, поправил немного под Simpla 2.3.3. Код на сайте такой: <div id="w_widget"></div> <script> function returnObjById( id ){ if (document.getElementById) var returnVar = document.getElementById(id); else if (document.all) var returnVar = document.all[id]; else if (document.layers) var returnVar = document.layers[id]; return returnVar; }; var w_widget; w_widget=returnObjById('w_widget'); var head= document.getElementsByTagName('head')[0]; var script= document.createElement('script'); script.type= 'text/javascript'; script.src = 'http://example.com/widget.php?width_w=200&slide=2&show_pic=1&description=1&sizeimg=160&name=1&price_on=1&l_desc=100&n_desc=40&bonus=5000' head.appendChild(script); </script> В htaccess ничего не добавлял Файл виджета widget.phpСпасибо! Всё получилось.Для тех кому цена в нужна в рублях: в widget.php в последней строке в самом конце (2810 символ) меняем "грн" на "руб"А вот как сделать горизонтальный виджет не разобрался... Quote Link to post Share on other sites
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.