{"id":16901516,"url":"https://github.com/maxulyanov/SocialButtons","last_synced_at":"2025-12-11T12:30:22.093Z","repository":{"id":57364984,"uuid":"52034322","full_name":"maxulyanov/SocialButtons","owner":"maxulyanov","description":"Готовое решение для добавления кнопок социальных сетей на сайт","archived":false,"fork":false,"pushed_at":"2017-08-13T17:42:08.000Z","size":61,"stargazers_count":8,"open_issues_count":0,"forks_count":2,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-02-15T20:04:41.334Z","etag":null,"topics":["facebook","odnoklassniki","share","shared-services","social","social-buttons","twitter","vkontakte"],"latest_commit_sha":null,"homepage":"https://m-ulyanov.github.io/SocialButtons/","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/maxulyanov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2016-02-18T19:53:14.000Z","updated_at":"2017-11-22T07:52:40.000Z","dependencies_parsed_at":"2022-09-13T21:01:13.874Z","dependency_job_id":null,"html_url":"https://github.com/maxulyanov/SocialButtons","commit_stats":null,"previous_names":["m-ulyanov/socialbuttons"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxulyanov%2FSocialButtons","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxulyanov%2FSocialButtons/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxulyanov%2FSocialButtons/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/maxulyanov%2FSocialButtons/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/maxulyanov","download_url":"https://codeload.github.com/maxulyanov/SocialButtons/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239676254,"owners_count":19678776,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["facebook","odnoklassniki","share","shared-services","social","social-buttons","twitter","vkontakte"],"created_at":"2024-10-13T18:00:09.668Z","updated_at":"2025-12-11T12:30:22.036Z","avatar_url":"https://github.com/maxulyanov.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Social Buttons\n\nГотовое решение для добавления кнопок социальных сетей на сайт.\n\n[![](http://m-ulyanov.github.io/social-buttons/social-buttons-promo.png)](https://github.com/M-Ulyanov/SocialButtons)\n\n## Быстрый старт\n- Подключить SocialButtons.css и SocialButtons.js или их минифицированные версии\n- Создать экземпляр кнопок с помощью вызова new SocialButtons, передав нужные параметры\n- При необходимости подключить es6-promise.js\n- Никакие дополнительные библиотеки (например jQuery) для работы не требуются\n- Установить можно так же из NPM:\u003cbr\u003e\n`npm install social-buttons`\n\n## Какие сервисы поддерживаются?\nНа данный момент это - Вконтакте, Facebook, Google+, Одноклассники, Twitter, Мой Мир, Livejournal, Linkedin\u003cbr\u003e\nФункциональные названия:\u003cbr\u003e\n`['facebook', 'vkontakte', 'odnoklassniki', 'googleplus', 'twitter', 'moimir', 'lj', 'linkedin']`\n\n## Параметры\n`services` - Массив сервисов, кнопки которых должны быть сгенерированы в текущем виджете\u003cbr\u003e\n`components` - Какие элементы кнопки должны быть отрисованы. \u003cbr\u003e\nДоступные значения: `icon`, `text`, `count` (положение элементов в массиве не имеет значения)\u003cbr\u003e\n`counter` - Отображать ли счетчики публикаций. По умолчанию `false`\u003cbr\u003e\n`outputCountCallback` - Функция для изменения отображения счетчика, ожидается, что будет возращен результат модификации.\u003cbr\u003e\n В единственном параметре можно получить текущий счетчик.\n`theme` - Варианты отображения кнопок. Изначально доступно несколько тем: `default`, `color`\u003cbr\u003e\nВы так же можете создать свою тему, добавив соответствующие стили, сами кнопки получат постфикс вида - `b-social-button--yourtheme`\u003cbr\u003e\n`showZeros` - Показывать ли счетчики, если они равны нулю. По умолчанию - `false`\u003cbr\u003e\n`buttonSize` - Размер кнопок: `small`, `middle`, `large` или любое другое значение, которое может быть преобразовано в число\u003cbr\u003e\n`id` - Уникальный идентификатор DOM элемента, к которому будет привязан и отрисован виджет кнопок\u003cbr\u003e\n`url` - URL расшариваемой публикации, параметр имеет наивысшей приоритет, если он не указан значение берется из meta тега `property=\"og:url`, по умолчанию текущий `url`\u003cbr\u003e\n`title` - Заголовок расшариваемой публикации, параметр имеет наивысше йприоритет, если он не указан значение берется из meta тега `property=\"og:url`, по умолчанию `title` текущей страницы\u003cbr\u003e\n`description` - Описание расшариваемой публикации, параметр имеет наивысшей приоритет, если он не указан значение берется из meta тега `property=\"og:description`\u003cbr\u003e\n`image` - Изображение расшариваемой публикации, параметр имеет наивысшей приоритет, если он не указан значение берется из meta тега `property=\"property=\"og:image`\u003cbr\u003e\n`helpers` - Объект кастомизации кнопок виджета, для каждой социальной сети содержит дочерний объект, который доступен по ключу (названию сервиса), например \"vkontakte\", который в свою очередь имеет следующее поля:\u003cbr\u003e\n  - `text` - Текст кнопки\n  - `title` - Тег `title` для кнопки\n  - `counter` - Пользовательская функция, переопределяет сервис получение счетчика по-умолчанию\n  - `customClass` - Дополнительный класс для кастомизации\u003cbr\u003e\n\n`callbacks` - Объект с функциями, которые будут вызваны при наступлении определенных событий, по-умолчанию все функции объекта `callbacks` равны - `NULL`.\n  - `create` - виджет успешно создан\u003cbr\u003e\n  - `share` - попытка расшаривания публикации\u003cbr\u003e\nТак же Для каждой функции при создании в параметре можно получить полезные данные о событии\u003cbr\u003e\n\n## Рекомендации\nИспользуйте Open Graph разметку на странице. \u003cbr\u003e\nЭто поможет подхватывать социальным сетям правильные данные при публикации.\u003cbr\u003e\n`\u003cmeta property=\"og:url\" content=\"share url\"\u003e`\u003cbr\u003e\n`\u003cmeta property=\"og:title\" content=\"share title\"\u003e`\u003cbr\u003e\n`\u003cmeta property=\"og:description\" content=\"share content\"\u003e`\u003cbr\u003e\n`\u003cmeta property=\"og:image\" content=\"share image\"\u003e`\n\n## Проблемы и решения\n#### Скрипт не работает, не отображается ни одна кнопка\nСтоит проверить консоль:\u003cbr\u003e\nОшибка: `#yourID not found!`\u003cbr\u003e\nРешение: \u003cbr\u003e\n- Вызов new SocialButtons необходимо осуществить после загрузки DOM дерева - DOMContentLoaded\u003cbr\u003e\n- Проверьте наличие элемента c ID - yourID на вашей странице\u003cbr\u003e\n\nОшибка: `Uncaught ReferenceError: Promise is not defined`\u003cbr\u003e\nРешение: Подключите файл `es6-promise.js`\n\n#### Не отображается счетчик публикаций\nНекоторые социальные сети не позволяют получить количество публикаций (шаринга), например у Twitter, такая возможность отсутствует\u003cbr\u003e\n#### Публикуется неправильный контент\n\nВыполните рекомендации из предыдущего раздела\n\n## Кроссбраузерность\nВсе современные браузеры.\u003cbr\u003e\nIE начиная с 9 версии и выше.\n\n## Демонстрация\n \u003ca href=\"https://m-ulyanov.github.io/SocialButtons/\"\u003eПосмотреть пример\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxulyanov%2FSocialButtons","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmaxulyanov%2FSocialButtons","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmaxulyanov%2FSocialButtons/lists"}