Статьи и новости

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

Цена: 0 руб.
Что бы скачать этот бесплатный товар, просто войдите под своим логином.
Совместимость OpenCart 2.0, OpenCart 2.1, OpenCart 2.2, OpenCart 2.3, OpenCart 3.0, OCStore 2.1, OCStore 2.3, OCStore 3.0, Opencart.pro 2.0.3.х, Opencart.pro 2.1, Opencart.pro 2.3, MaxyStore 2.1.0.2, MaxyStore 2.3.0.2, MaxyStore 3.*
ИНФОРМАЦИЯ
Название модуля: Конструктор социальных кнопок - "Social Button Designer"
Версия модуля: 0.2
Тип лицензии: Lite (Liteware, linkware, beerware, muffinware) - пробная версия (упрощённая)
Тип установки: ocmod
Язык: Беларуская мова, English, Русский язык, Українська мова
Дата создания: 23.09.2019
Был протестирован на: OpenCart.pro 2.1.0.2.2 и 2.3.0.2.6, OpenCart-"Русская сборка" 2.1.0.2 (rs1), 2.3.0.2 (rs6) и 3.0.2.0 (rs3), ocStore 2.1.0.2.1 и 2.3.0.2.3 - шаблон (default)
Название архива: Social Button Designer v0.2 Lite OpenCart 2.X-3.1.X.zip
ТЕМА ПОДДЕРЖКИ: ТУТ

ДЕМО САЙТ
ДЕМО АДМИНКА
Логин: demo
Пароль: demo

ОПИСАНИЕ
Модуль предназначен для добавления социальных кнопок "поделиться в соц. сетях" без применения сторонних плагинов.

УСТАНОВКА
Разместите на любой странице в нужное вам место данный код:
<?php $bus_share_url = (isset($breadcrumb['href']) ? str_replace('&', '&', $breadcrumb['href']) : false); ?>
<?php if ($bus_share_url) { ?>
<?php $bus_share_title = (isset($breadcrumb['text']) ? $breadcrumb['text'] : false); ?>
<?php $bus_share_description = (isset($description) ? $description : false); ?>
<?php $bus_share_image = (isset($thumb) ? $thumb : false); ?>
<noscript>
<a class="btn btn-primary" href="//vk.com/share.php?url=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&image=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-vk"></i></a>
<a class="btn btn-warning" href="//connect.ok.ru/offer?url=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&image=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-odnoklassniki"></i></a>
<a class="btn btn-primary" href="//www.facebook.com/sharer/sharer.php?u=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&picture=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-facebook"></i></a>
<a class="btn btn-primary" href="//twitter.com/intent/tweet?url=<?php echo $bus_share_url; ?>&hashtags=<?php echo str_replace(' ', ',', $bus_share_title); ?>&text=<?php echo $bus_share_description; ?>" target="_blank"><i class="fa fa-twitter"></i></a>
<style type="text/css">
.bus-share{display:none;}
</style>
</noscript>
<?php } ?>
<a class="btn btn-primary bus-share" onclick="busShare('vk');"><i class="fa fa-vk"></i></a>
<a class="btn btn-warning bus-share" onclick="busShare('ok');"><i class="fa fa-odnoklassniki"></i></a>
<a class="btn btn-primary bus-share" onclick="busShare('fb');"><i class="fa fa-facebook"></i></a>
<a class="btn btn-primary bus-share" onclick="busShare('twitter');"><i class="fa fa-twitter"></i></a>
Установите скрипт перед <?php $footer; ?> на странице товара или вообще в footer.tpl для всех страниц.
<script type="text/javascript"><!--
function busShare(id, iddesk, idimg, u, t, d, i) {
   url = document.URL;
   title = document.title;
   if (!iddesk) {
      iddesk = '#tab-description';
   }
   if (!idimg) {
      idimg = 'div.image img';
   }
   description = document.querySelector(iddesk);
   if (description) {
      description = description.textContent;
   } else {
      description = '';
   }
   image = document.querySelector(idimg);
   if (image) {
      image = image.getAttribute('src');
   } else {
      image = '';
   }
   
   if (u) {
      url = u;
   }
   if (t) {
      title = t;
   }
   if (d) {
      description = d;
   }
   if (i) {
      image = i;
   }
   //url = encodeURIComponent(url);
   //title = encodeURIComponent(title);
   //description = encodeURIComponent(description);
   //image = encodeURIComponent(image);
   if (id == 'vk') {
      id = '//vk.com/share.php?url={url}&title={title}&description={description}&image={image}&noparse=true&no_vk_links=0';
   }
   if (id == 'ok') {
      id = '//connect.ok.ru/offer?url={url}&title={title}&description={description}&imageUrl={image}';
   }
   if (id == 'fb') {
      id = '//www.facebook.com/sharer/sharer.php?u={url}&title={title}&description={description}&picture={image}';
   }
   if (id == 'twitter') {
      id = '//twitter.com/intent/tweet?url={url}&hashtags={title}&text={description}';
      id = id.replace('{title}', title.replace(' ', ','));
   }
   url = id.replace('{url}', url).replace('{title}', title).replace('{description}', description.substring(0,250)).replace('{image}', image);
   busSharePopupCenter(url);
}
function busSharePopupCenter(url) {
   w = 600;
   h = 400;
   dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : screen.left;
   dualScreenTop = window.screenTop !== undefined ? window.screenTop : screen.top;
   width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
   height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
   left = ((width / 2) - (w / 2)) + dualScreenLeft;
   top = ((height / 3) - (h / 3)) + dualScreenTop;
   newWindow = window.open(url, '_blank', 'scrollbars=yes, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
   if (window.focus) {
      newWindow.focus();
   }
}
//--></script>

ПОЯСНЕНИЯ
Этот код можно использовать без скриптов, только нужно удалить стили и тег <noscript></noscript>. Чтобы его использовать внутри описания страниц, то php код нужно заменить на описание (вместо пробелов ставить %20 или +):
<?php echo $bus_share_url; ?> - ссылка;
<?php echo $bus_share_title; ?> - краткое описание;
<?php echo $bus_share_description; ?> - описание;
<?php echo $bus_share_image; ?> - изображение.
<?php $bus_share_url = (isset($breadcrumb['href']) ? str_replace('&', '&', $breadcrumb['href']) : false); ?>
<?php if ($bus_share_url) { ?>
<?php $bus_share_title = (isset($breadcrumb['text']) ? $breadcrumb['text'] : false); ?>
<?php $bus_share_description = (isset($description) ? $description : false); ?>
<?php $bus_share_image = (isset($thumb) ? $thumb : false); ?>
<noscript>
<a class="btn btn-primary" href="//vk.com/share.php?url=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&image=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-vk"></i></a>
<a class="btn btn-warning" href="//connect.ok.ru/offer?url=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&image=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-odnoklassniki"></i></a>
<a class="btn btn-primary" href="//www.facebook.com/sharer/sharer.php?u=<?php echo $bus_share_url; ?>&title=<?php echo $bus_share_title; ?>&description=<?php echo $bus_share_description; ?>&picture=<?php echo $bus_share_image; ?>" target="_blank"><i class="fa fa-facebook"></i></a>
<a class="btn btn-primary" href="//twitter.com/intent/tweet?url=<?php echo $bus_share_url; ?>&hashtags=<?php echo str_replace(' ', ',', $bus_share_title); ?>&text=<?php echo $bus_share_description; ?>" target="_blank"><i class="fa fa-twitter"></i></a>
<style type="text/css">
.bus-share{display:none;}
</style>
</noscript>
<?php } ?>
Этот код работает со скриптами. В скриптах заданы готовые ссылки для вконтакта, одноклассников, фейсбука и твиттера.
<a class="btn btn-primary bus-share" onclick="busShare('vk');"><i class="fa fa-vk"></i></a>
<a class="btn btn-warning bus-share" onclick="busShare('ok');"><i class="fa fa-odnoklassniki"></i></a>
<a class="btn btn-primary bus-share" onclick="busShare('fb');"><i class="fa fa-facebook"></i></a>
<a class="btn btn-primary bus-share" onclick="busShare('twitter');"><i class="fa fa-twitter"></i></a>
Вы можете как расширять список условий в скриптах, так и задавать ссылку непосредственно в onclick="busShare('vk');"
Например:
<a class="btn btn-primary bus-share" onclick="busShare('//vk.com/share.php?url={url}&title={title}&description={description}&image={image}&noparse=true&no_vk_links=0');"><i class="fa fa-vk"></i></a>
- где
{url} - это указатель куда устанавливать ссылку (можно вручную ссылку задать, можно оставить указатель и она автоматический установится);
{title} - это указатель куда устанавливать краткое описание (можно вручную краткое описание задать, можно оставить указатель и она автоматический установится);
{description} - это указатель куда устанавливать описание (можно вручную описание задать, можно оставить указатель и она автоматический установится);
{image} - это указатель куда устанавливать ссылку изображения (можно вручную ссылку изображения задать, можно оставить указатель и она автоматический установится);
Если вы собираетесь использовать кнопки не только на странице товара, то вам нужно указать id или класс или имя тега, где расположенно описание и(или) изображение если нужно.
Например, для блога OpenCart.pro:
<a class="btn btn-primary bus-share" onclick="busShare('vk', '#description', '#description img');"><i class="fa fa-vk"></i></a>
- где
первый параметр функции 'vk' - индификатор условия скрипта (указатель на ссылку для вконтакта);
второй параметр функции '#description' - указатель где расположено описание статьи блога;
третий параметр функции '#description img' - указатель где расположено изображение (в данном случае в описании статьи блога);


ВНИМАНИЕ!
Оригинальные файлы магазина не заменяет! Всегда проверяйте такие модули (окмоды - архивы) содержащие такие файлы: "install.php, install.sql" так как злоумышленники могут навредить вашему сайту, например, вашими руками удалят вашу базу данных.
Пример запроса (смотрите, чтобы не было удаления таблиц "DROP TABLE": категорий, пользователей, товара и т.д. по оригиналу или всей БД "DROP DATABASE"):

install.php
$this->db->query("DROP TABLE " . DB_PREFIX . "category, " . DB_PREFIX . "user, " . DB_PREFIX . "product и т.д. ");
install.sql
DROP TABLE `oc_category`, `oc_user`, `oc_product`и т.д.;

Модификатор "вносит изменения" в следующие файлы:
catalog/view/theme/*/template/blog/article.{tpl,twig}
catalog/view/theme/*/template/common/footer.{tpl,twig}
catalog/view/theme/*/template/product/product.{tpl,twig}
УСЛОВИЯ СОГЛАШЕНИЯ
- Beta и Lite версии устанавливаете на свой страх и риск - бэкап базы данных (далее - БД) обязателен;
- Модуль (модификатор, дополнение, расширение, приложение) (далее - Модуль) можно устанавливать на неограниченное количество доменов;
- Редактировать код можно под нужды любого магазина;
- Распространение модуля разрешено с сохранением ссылок автора и исходного кода;
- Техническая поддержка (далее - ТП) не осуществляется;
- Адаптация модуля под другую версию Опенкарта, нестандартный шаблон и сторонние модули - платная;
- Автор модуля оставляет за собой право в любое время внести изменение в настоящее условие, описание и исходный код модуля;
v0.2
- добавлено пару кнопок;
- добавлены стили;
Основное
Способ распространения Бесплатно
Совместимость OpenCart 2.0, OpenCart 2.1, OpenCart 2.2, OpenCart 2.3, OpenCart 3.0, OCStore 2.1, OCStore 2.3, OCStore 3.0, Opencart.pro 2.0.3.х, Opencart.pro 2.1, Opencart.pro 2.3, MaxyStore 2.1.0.2, MaxyStore 2.3.0.2, MaxyStore 3.*
VQmod Нет
Ocmod Да
Статистика
В первый раз файл добавлен 23.09.2019
Последнее изменение 06.10.2019
Просмотров 302

Написать

Ваше Имя:


Ваш отзыв: Внимание: HTML не поддерживается! Используйте обычный текст.

Оценка: Плохо           Хорошо

Введите код, указанный на картинке:






Чтобы скачать файлы нужно сначала Войти или Зарегистрироваться




Ещё никто не оставил комментариев к записи.
 
Телефон, Viber, WhatsApp, Telegram: +7-952-3190-952 Skype: cdqpru Почта: help@liveopencart.ru ВКонтакте: liveopencart