php скрипт социальной сети
15 скриптов для создания социальной сети на PHP
За последние несколько лет популярность социальных сетей взлетела до невиданных масштабов. Признанным лидером в этой области является, конечно же, Facebook. Для него разработано огромное количество разнообразных приложений, широко использующих технологию AJAX.
Но если в Ваши планы не входит обогнать по популярности Facebook или Вконтакте, а Вы хотите просто создать свою социальную сеть или сообщество, схожее с Facebook, Вконтакте, Twitter или Google Plus — то этот обзор для Вас.
Мы рассмотрим 15 скриптов для создания социальной сети на PHP со стандартными для подобных продуктов функциями, чатами, микроблогами а-ля Twitter и другими популярными функциями, которые, несомненно, Вам понравятся. В подборку вошли как платные, так и бесплатные решения.
phpDolphin
LiveStreet CMS
Блогосоциальная платформа отечественного производства. В рунете довольно часто встречаются порталы, которые были построены с ее помощью. Если попытаться в двух словах описать данную CMS — это некий аналог всем известного Хабрахабр. Смысл системы таков: каждый пользователь может стать автором.
Стоимость: Бесплатно
Boonex Dolphin
Boonex Dolphin — это мощная CMS для создания социальной сети. В арсенале имеется огромное количество расширений, таких как: группы, объявления, каталог аудио и видео, афиша, блоги, чат, каталог файлов и пр. Также Вы можете расширить стандартный набор модулей платными, которые можно купить в разделе расширений на официальном сайте. Есть возможность настраивать стилевое оформление своих страниц. Помимо этого, разработчики предоставляют мобильные приложения, которые интегрируются с вашим порталом. CMS платная, но есть триальная версия для тестирования.
По своему опыту работы с данным движком могу сказать, что система мощная, сравнительно стабильная, но под нее нужен хороший сервер, так как «жрет» много ресурсов.
Стоимость: от 29$/мес или от 599$ разовая покупка (есть триальная версия).
PHP Social Network Platform
Social Business
Social Business — это скрипт социальной сети для бизнесменов. Главная цель этого скрипта — дать возможность деловым людям найти себе партнеров. Некое подобие LinkedIn.
Стоимость: 32$
SocEuro Social Network
SocEuro — это довольно функциональный скрипт социальной сети с типичным набором модулей для подобного рода продукта. Есть аудиозаписи как Вконтакте, чаты, ленты, игры…
Стоимость: 43$
Oxwall
Абсолютно бесплатный скрипт социальной сети с открытым исходным кодом. Имеет огромное количество таких же бесплатных и уникальных дополнений, которые не найти даже в платных аналогах: фотогалерея, видеокаталог, блоги, форумы, вики, группы, события, друзья, совместная работа, общий доступ к файлам, видео-конференции и т.д.
Стоимость: Бесплатно
Socialkit
Pligg
Pligg — это бесплатное, простое и в то же время мощное решение для создания блогосоциальной сети или сообщества. Особенность в том, что можно создать саморегулируемое сообщество. Пользователи сами решают что плохо, что хорошо. Таким образом отпадает необходимость в модерировании. С похожей философией работает Хабрахабр и система LiveStreet CMS, которая также присутствует в данной подборке.
Стоимость: Бесплатно
SocialMat
SocialMat — это что-то среднее между Twitter и Facebook. Пользователи могут постить небольшие сообщения (включая и мультимедиа), а также общаться между собой в чатах.
Стоимость: 34$
SocioQuiz
Sngine v2
Простенький, но симпатичный скрипт социальной сети. Очень напоминает Facebook, но более упрощенный. Разработчики позаботились о покупателях скрипта и сделали мобильное приложение, которое смогут скачать ваши пользователи. Большим плюсом является то, что есть админка.
Стоимость: 43$
Friendly Social Network
PHP Social Microblogging
PHP Social Microblogging — это аналог Твиттера. Все те же микроблоги. Скрипт предназначен для обмена новостями и сообщениями между пользователями. Есть поддержка хэштегов.
Стоимость: 23$
PHPfox
Еще одна мощнейшая платформа для создания социальной сети на PHP. По функционалу очень похожа на Boonex Dolphin. В PHPfox также есть возможности создавать чаты, форумы, доски объявлений, афиши и пр.
CMS имеет огромное сообщество, так что при возникновении каких-либо проблем, будет возможность их коллективно решить на форуме. Существует и русскоязычное сообщество, где можно найти русификацию.
Стоимость: 399$
Социальная сеть на PHP: вступление.
Всем привет! Рад сообщить вам, что это первая статья из серии, где мы рассмотрим, как самостоятельно создать социальную сеть на PHP.
Конечно, это не будет уж очень грандиозная сеть, а только лишь начало, однако этого вам хватит для того, чтобы развивать проект, и, возможно, именно ваша сеть станет самой популярной! 🙂
Теперь поговорим о том, какой функционал она будет иметь и как будет сделана. За основу мы возьмем Framework Laravel, т.к. он очень современный, быстрый и достаточно понятный в использовании. Функции же будут следующие:
И некоторые другие возможности. Как вы можете заметить, пройдя данный курс статей, вы сможете неплохо подучиться и заниматься расширением своего проекта дальше самостоятельно.
composer global require «laravel/installer»
После успешной установки введите следующую команду:
laravel new chatty
Это создаст папку с именем chatty(вы можете выбрать другое имя), куда будет выполнена установка последней версии фреймворка.
Теперь, если вы сделали все правильно, подключившись к локальному серверу, вы должны увидеть свежеустановленный Laravel.
На этом сегодня закончим, а продолжим уже очень скоро. Не переключайтесь! 😉
Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!
Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.
Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления
Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.
Порекомендуйте эту статью друзьям:
Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):
Комментарии ( 2 ):
Я так и не понял как устанавливать этот композитор. Фиг что поймёшь
Я тоже ничего не понял
Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.
Copyright © 2010-2021 Русаков Михаил Юрьевич. Все права защищены.
Как написать простую Социальную сеть
В моей социальной сети реализованы следующие возможности:
var addProfileUrl = svlaboratoryBaseUrl + «/admin/chatbot/addprofile»;
— добавление профиля в базу данных;
var loginProfileUrl = svlaboratoryBaseUrl + «/admin/chatbot/profilelogin»;
— авторизация пользователя;
var getFotosUrl = svlaboratoryBaseUrl + «/admin/chatbot/getfotos»;
— получение всех файлов анкеты пользователя (фото, видео, музыки);
var delFotoUrl = svlaboratoryBaseUrl + «/admin/chatbot/deletefoto»;
— удаление фото из анкеты;
var selectFotoUrl = svlaboratoryBaseUrl + «/admin/chatbot/selectfoto»;
— выбор фото для главного фото;
var searchProfilesUrl = svlaboratoryBaseUrl + «/admin/chatbot/searchprofiles»;
— поиск анкет по параметрам;
var instaProfilesUrl = svlaboratoryBaseUrl + «/admin/chatbot/instaprofiles»;
— поиск анкет по параметрам из списка всех новых фото пользователей;
var getAnketaUrl = svlaboratoryBaseUrl + «/admin/chatbot/getanketa»;
— получение данных о профиле пользователя;
var sendProfileMsgUrl = svlaboratoryBaseUrl + «/admin/chatbot/sendmsg»;
— отправка сообщения другому пользователю;
var getAllProfileMsgsUrl = svlaboratoryBaseUrl + «/admin/chatbot/getallmsgs»;
— получение списка сообщений;
var getProfilesMsgsUrl = svlaboratoryBaseUrl + «/admin/chatbot/getprofilesmsgs»;
— получение списка пользователей отправивших сообщения;
var updateProfileUrl = svlaboratoryBaseUrl + «/admin/chatbot/updateprofile»;
— обновление позиции пользователя в списке пользователей;
var visitProfilesUrl = svlaboratoryBaseUrl + «/admin/chatbot/getvisithistory»;
— получение списка пользователей, просматривавших анкету;
var getSmallavatarUrl = svlaboratoryBaseUrl + «:8080/file/chatbotmin/»;
— получение маленькой копии изображения;
var getImgUrl = svlaboratoryBaseUrl + «:8080/file/chatbotnorm/»;
— получение обычной копии изображения;
var getSmallavatarUrl2 = svlaboratoryBaseUrl + «/application/smallavatar?url=»;
— получение маленькой копии аватара;
var getLikeProfilesUrl = svlaboratoryBaseUrl + «/admin/chatbot/getlikeprofiles»;
— получение списка всех пользователей для игры в симпатии;
var likeProfileUrl = svlaboratoryBaseUrl + «/admin/chatbot/likeprofile»;
— осуществить плюс анкеты;
var getLikesUrl = svlaboratoryBaseUrl + «/admin/chatbot/getlikes»;
— получить список всех плюсов;
var getModerProfilesUrl = svlaboratoryBaseUrl + «/admin/chatbot/getmoderprofiles»;
— получение списка пользователей подлежащих проверки модератором;
var moderProfileUrl = svlaboratoryBaseUrl + «/admin/chatbot/moderprofile»;
— осуществление проверки модератором пользователя;
var getModerUrl = svlaboratoryBaseUrl + «/admin/chatbot/getmoder»;
— получение списка пользователей прошедших проверку модератором;
И список действий связанных с пользователями:
API был реализован как действия каркаса серверных приложений Zend Framework.
Результат запроса к API были JSON строки данных:
Клиент приложения был создан как единое приложение на Bootstrap и JQuery.
Все действия API вызывались с помощью процедуры AJAX.
Приведу немного образцов кода для осуществления CRUD на примере отправки сообщений:
Например, отправка сообщений реализована как функция sendProfileMsg на стороне клиента на языке JS:
И обработка запроса к серверу на языке PHP с использованием каркаса Zend Framework
Для сохранения данных в базу данных тут использовался класс Model
Другие методы типа delete или fetchRow, find, fetchAll
реализуются аналогично внедряя параметры в запросы MySQL.
Класс модели с реализацией основных действий с таблицами MySQL наследуется для каждой таблицы MySQL:
Для ввода параметров и создания форм использовался CSS каркаса Bootstrap.
Для динамического отображения приложения использовался JavaScript и JQuery.
В базе данных MySQL были созданы сущности:
user
— таблица пользователей и их параметров;
К примеру таблица user:
profile
— таблица анкет и их параметров;
chat
— таблица сообщений;
file
— таблица файлов;
foto
— таблица фото;
like
— таблица плюсов;
token
— таблица ключей авторизации;
moder
— таблица проверки анкет модератором;
userorder
— таблица действий пользователя;
Такие таблицы базы данных, действия серверного приложения и приложение клиента браузера легко написать более менее опытному программисту освоившему книги по
CSS, HTML, JS, PHP, SQL.
Личный плеер аудио загрузок и чаты были реализованы как отдельные приложения отображаемые во frame теге кода HTML приложения клиента браузера.
Также социальная сеть имеет доступ к отдельным приложениям и играм моего авторства во вкладке игры. Приложение социальной сети позволяет легко добавить свои игры заполнив форму описания игры. Основным полем этой формы является URL WEB адрес публикуемого приложения или игры. В результате приложение или игра будут показаны во frame теге HTML страницы приложения социальной сети.
Посмотреть готовое приложение социальной сети можно по ссылке:
Решения для создания социальной сети
Этот текст навеян предыдущими href=«sevavaber.habrahabr.ru/blog/38613.html»>постами, в которых перечисляются движки социальных сетей, но практически никак не анализируются на предмет использования.
Здесь я сначала собираю все возможные движки, которые найдены по упоминаниям, поисковикам и различным архивам. И фильтрую их, убирая явно непригодные для использования мною. При этом критерии использования у других людей могут быть иными, поэтому все движки остаются во второй части списка. Всего рассмотрено 65 проектов.
Критерии оценки:
1. Код в ООП стиле
2. Обязательное использование шаблонизатора (разделение кода и верстки)
3. Поддержка локализации (разделение текстов и всего остального)
4. Структуризация (разделение модулей на файлы и папки)
5. Open source (бесплатный или недорогой)
6. язык реализации (php, ruby, c#, python)
А теперь поехали по алфавиту:
Проекты, подлежащие более тщательному рассмотрению
AROUNDme
Opensource Myspace клон
Dolphin
Недорогое ($99) решение, opensource php
Drupal
Opensource, php, хорошо структурированное решение, непростое в освоении
Dzoic
Недорогое ($424) решение, opensource php
FlightFeather
На Python, opensource, год не обновлялся
Joovili
Недорогой ($275) клон Myspace
Ning
Сервис, есть исходники widgets, API
OpenPNE
Opensource, php, на японском 🙁
PHPFox
Недорогое ($375) решение, php
PHPizabi
opensource, php, без ООП, но со Smarty и многоязычностью
Plone
Opensource, free, Python
SocialEngine
Недорогое ($300) решение, opensource, php
Эти проекты [мне] не подходят (но возможно подойдут кому-то другому):
AppleSeed
Разрабатывает один человек на part time, статус early beta, реально использовать рано.
Atlassian Confluence
Дорогое ($8000 для unlimited users) решение для enterprise wiki, на соцсеть тянет с трудом
AstroSPACES
По внешним признакам проект заброшен, сайт не открывается, год назад начата разработка версии 2, с тех пор тишина
BigStreet
Российский opensource движок (тут старые исходники)
Нет поддержки шаблонов (Smarty используется, но очень мало), текст перемешан с кодом и версткой
eFriends
Недорогой клон Friendster и Myspace
BlogTronix
Не opensource, платное
CollectiveX
Enterprise groupware решение, дорогое (и бестолковое)
conVerdge
Сервисное решение, не opensource
CoreSpeed
Платное не-opensource решение
Crowd Factory
Платное закрытое решение, не обновляется с 2006
Dave Networks
Закрытое сервисное решение
ELGG
html в коде намешан, без ООП (для самого неожиданно, что такой популярный проект так слабо спроектирован)
Explay
Российский opensource движок, пока еще слишком сырой, но с перспективами.
Famster
«Семейное» решение, сервис
Five Across
Компания куплена Cisco, Community Builder RIP
Flux
Сервис либо платное решение, свой Markup Language, состояние полумертвое
Go Lightly
Enterprise платное решение, цены по запросу
Going On
Enterprise решение, цен нет, исходников нет, населено роботами
LiveWorld
Платное без исходников
Manusya
Perl, Postgres, преальфа версия 2006 года
1000 и 1 репост: гайд по кнопке «поделиться» в русских соц сетях
Недавно передо мной встала задача — провести на нашем сайте «народное голосование» за номинантов на премию в нашей отрасли (франчайзинг). В рамках народного голосования человек размещал на своей странице в социальной сети пост, рассказывающий о том, за кого именно он проголосовал. Чтобы реализовать эту задачу, мне пришлось перелопатить массу информацию о том, как именно устроен шаринг в различных соцсетях, и как лучше размещать эти самые посты. Кроме того, была создана система подсчета количества размещенных репостов.
К сожалению, большая часть информации на эту тему, которую можно найти на хабре или stackoverflow — уже устарела, поэтому я постарался превратить этот в пост в актуальный мега-гайд по шерингу страниц в соц сетях. Я рассмотрел 5 наиболее популярных в России социальных сетей: контакт, facebook, твиттер, одноклассники и мой мир. Для каждой социальной сети приведен актуальный URL для шаринга, небольшие советы и рекомендации по использованию, а также JS код, позволяющий узнать количество шеров конкретного URL в каждой из соц. сетей.
В конце статьи есть сводная таблица со всеми ссылками и кратким описанием возможностей каждой из сетей.
PHP скрипт
Написал скрипт-генератор ссылок для шаринга, а также для получения данных о количестве шеров.
Качать тут:
github.com/iskander-g/socialhelper
Вконтакте
Самая популярная в России социальная сеть, имеет также и самую богатую функциональность для шеринга, но есть и досадный баг.
URL для того, чтобы поделиться ссылкой в этой соц. сети имеет следующий вид:
Tips&Tricks:
Вы можете добавлять в конец заголовка (title) свои хештеги, и если при шаринге пользователь не введет описание — то они попадут в пост пользователя.
У контакта был обнаружен только один, но очень критичный баг: если по вашей ссылке переходит пользователь, не авторизованный в контакте, то ему будет предложено залогиниться и потом он получит белую страницу с надписью «too long to param». Единственный вариант решения этой проблемы — не передавать описание и т.д., и ограничиться только ссылкой. Ну или просто забить, как мы поступили мы. Это не помешало на данный момент собрать более 900 репостов нашей премии вконтакте.
Получение количества шеров:
Получение количество шеров вконтакте основано на том, что вы добавляете себе на страницу тег script со следующим адресом:
Этот скрипт вызовет метод VK.Share.count(index, count). Соответственно, вам необходимо опеределить его в глобальной области видимости, например так:
Вторая по популярности социальная сеть в России имеет довольно урезанный инструментарий для шаринга ссылок.
URL для того, чтобы поделиться ссылкой в facebook, имеет вид:
Tips & Tricks
Фейсбук не поддерживает кастомные тайтлы и описания для ссылки — в нашем случае это было проблемой, потому что сами голоса мы подсчитываем внутренней системой подсчета, и нам хотелось, чтобы люди размещали в своих соц сетях ссылку на страницу со всеми номинантами — чтобы их друзья, переходя по ссылке, могли сразу проголосовать. Очевидно, для этой страницы были заданы мета-теги с общими текстами и описаниями, но нам хотелось, чтобы при шаринге человек размещал информацию о том, за кого конкретно он проголосовал.
Это удалось реализовать, создав «технические» страницы для каждого номинанта с нужными мета-тегами, которые успешно скачивались и парсились фейсбуком, но при заходе на эту страницу обычного пользователя — он автоматически редиректился на страницу номинации (для этого использовался мета-тег refresh и дублирующий яваскрипт на всякий случай).
В интернете очень много информации про шаринг через фейсбук, и везде пишут вот про такую ссылку:
НО! Эта ссылка не работает с мобильной версией фейсбука. Необходимо использовать просто sharer/sharer.php?u=
Подсчет количества шеров Facebook
У фейсбука больше всего сложностей при шеринге, но при этом самый простой механизм узнавания количества шеров для конкретного урла.
Он выглядит следующим образом:
Также по этой ссылке можно прочитать OG-параметры, которые хранит фейсбук, и некоторые другие свойства урла.
Твиттер не поддерживает размещение изображений к ссылкам, или я не нашел как это сделать. Также пост в твиттере ограничен по длине, поэтому передать туда описание не получится. Зато в твиттере можно передать логин вашего основного аккаунта, чтобы люди подписывались и на него тоже.
URL для твиттера выглядит следующим образом:
Подсчет количества твитов
Подсчет количества шеров конкретного урла в твиттере методами самой соц сети невозможен.
twitter.com/twitterdev/status/667836799897591808
Одноклассники
По своей сути шаринг в одноклассниках полностью аналогичен шарингу в facebook.
Url для шаринга в одноклассниках:
Также невозможно передать кастомные описания и прочее, также приходится использовать технические промежуточные страницы, все аналогично фейсбуку.
Количество шеров страницы в одноклассниках
А вот процесс подсчета количества шеров в одноклассниках больше похож на контакт — также подключается JS скрипт, который вызывает метод ODKL.updateCount(rel, count).
Отличие от контакта в том, что в качестве индекса может быть использован произвольный текст, а не только целое число.
Код, который я использую для подсчета шеров:
Мой мир
В принципе, URL и процесс шаринга в моем мире аналогичен таковому в контакте.
Ссылка для моего мира выглядит следующим образом:
Получение данных о количестве шеров моего мира
Готовый код для получения количества шеров конкретного урла из моего мира имеет вот такой вид:
За информацию по гуглу спасибо Finesse
Ссылка для шаринга:
Простого способа получить количество расшариваний в g+ нет, но есть грязные, например, спарсить из ответа по адресу: