nomarketing

nomarketing
Рейтинг
198
Регистрация
23.09.2009

Потому что кто-то собрал всю нужную инфу, а теперь чтобы эту инфу обновлять, этот кто-то, просто начал интерграцию.

А вы думали вам в нулевых деньги просто так платили. 🤣😂

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

Теперь только грузчики, физ-хард-кор. 

Вы погуглите, low google traffic march 2025 - там из авторов есть авторы крупных порталов, не говносайтов и чепухи, а реально уникальных проектов у которых с 3к -5к до 500$ monthly скатилось всё.

Да и дело тут не только в этом, ладно если ты один на проекте, а если он официально зарегистрирован, приносит прибыль, платят людям зп и т д.

Sly32 #:

Ты прежде чем браться за такое - немного почитай про реляционные базы данных для начала, если такое пишешь. На самм деле это очень просто, с таких примеров начинают изучать БД на самом деле.

У меня в этом практики ноль, но, могу разобраться в прочем что и делаю.

Мне нужна некая простая база (рабочая) чтобы наглядно было, потом уже проще будет.

nomarketing #:

Как это понять для групповых чатов ?

Нужно только 2 собеседника в 1 чате.

К примеру user1 написал user2, user 2 ответил user 1. - далее удаление у себя сообщение удалили к примеру 2 пользователя то оно удаляется автоматом из БД у обоих пользователей.

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

Нам нужно создать придельно простой вариант, а потом дорабатывать, по примеру как я написал  удаление сообщений и так далее, то есть учитывать все эти мелочи.

Пусть проект будет не большим но вполне рабочим с минимум "старой инфы" на примере удаления юзерами сообщений что равно удаление их из БД

master32 #:
  • Если цель похожего на классический чат один на один, вы можете реализовать дополнительную логику в приложении для создания диалога, когда два пользователя впервые начинают общаться.
  • Для оптимизации работы можно добавить индексы на поля conversation_id, sender_id, created_at.
  • Дополнительная таблица «сообщений прочитанных» может быть реализована для отслеживания статуса прочтения для конкретного пользователя в конкретном чате (например, если требуется хранить отметку для каждого участника в группе).

Ниже приведён SQL-пример создания таблиц (пример на PostgreSQL):


-- Таблица пользователей

CREATE TABLE users ( id SERIAL PRIMARY KEY, username VARCHAR(50) NOT NULL UNIQUE, email VARCHAR(255) NOT NULL UNIQUE, password_hash VARCHAR(255) NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );


-- Таблица диалогов (бесед)

CREATE TABLE conversations ( id SERIAL PRIMARY KEY, name VARCHAR(100), is_group BOOLEAN DEFAULT FALSE, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP );


-- Таблица участников беседы (связующая таблица)

CREATE TABLE conversation_participants ( conversation_id INTEGER NOT NULL REFERENCES conversations(id) ON DELETE CASCADE, user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, joined_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, PRIMARY KEY (conversation_id, user_id) );


-- Таблица сообщений

CREATE TABLE messages ( id SERIAL PRIMARY KEY, conversation_id INTEGER NOT NULL REFERENCES conversations(id) ON DELETE CASCADE, sender_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, message_text TEXT NOT NULL, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP, status VARCHAR(20) DEFAULT 'sent' );


-- Индексы для ускорения выборок (опционально)

CREATE INDEX idx_messages_conversation ON messages(conversation_id); CREATE INDEX idx_messages_sender ON messages(sender_id);


-- Дополнительно можно создать таблицу для статуса чтения сообщений отдельным пользователям

CREATE TABLE message_read_status ( message_id INTEGER NOT NULL REFERENCES messages(id) ON DELETE CASCADE, user_id INTEGER NOT NULL REFERENCES users(id) ON DELETE CASCADE, read_at TIMESTAMP, PRIMARY KEY (message_id, user_id) );

Эта схема позволяет:

  • Отслеживать всех пользователей сайта.
  • Создавать диалоги/беседы, как для двух пользователей, так и для групповых чатов.
  • Хранить сообщения, отправленные в рамках каждого диалога.
  • Отслеживать участников бесед, их вступление в чат, а также при необходимости статус прочтения каждого сообщения для каждого пользователя.

Как это понять для групповых чатов ?

Нужно только 2 собеседника в 1 чате.

К примеру user1 написал user2, user 2 ответил user 1. - далее удаление у себя сообщение удалили к примеру 2 пользователя то оно удаляется автоматом из БД у обоих пользователей.

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

estic #:

В почте роль такого чата играет сам почтовый ящик. Просто нет прямой связи между почтовыми ящиками. В общем письмо хранится отдельно у отправителя и получателей. Хотя в рамках одной почтовой службы даже здесь возможны варианты.

Чаты по своей сути ближе к темам форума, чем к почте и почтовым ящикам.

Тут всё упирается в логику работы бд

estic #:

Есть такое у программистов. Работа - это работа. А форум, тем более в пятницу или выходные, - это другое.

Выше уже написали. Здесь присутствуют, по большей части в качестве "наблюдателей", не только пользователи/разработчики WP. Представьте себе, я ни одного сайта на WP не запустил. Хотя исходники когда-то довольно подробно изучал. Чтобы понять, что это "чудо" лучше обойти стороной 😊 Да, CMS распространена, кто же спорит 😊

Стремление похвальное, но без навыков программирования, аналитики баз данных в чем смысл? Учитесь и возьмите эту задачку в качестве прикладной при обучении. А большинству разработчиков будет скучно. Если они помимо своей основной работы не занимаются помощью новичкам. Я, например, довольно часто консультирую, но мне интересно давать подсказки начинающим разработчикам, а не раздражаться при общении с новичками в программировании.

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

Wordpress - выбран не просто так, во первых тестировались нагрузки, во вторых он сделан очень удобно и умно в случае чего, под рукой есть практически весь его функционал.

По этому - отдельно допиливать в качестве плагинов - решения самое оно.

Я просто вспомнил Джумлу или Друпал, это что-то с чем-то...

Думал тут по дружней будет, а нет.

В общем как всегда, "спецы" форумные вместо того чтобы помочь - советы дают саморекламой 2-3 часа бэкэнда )

Пройдём как бы то ни было.

virusz #:

Мб тут кроется ошибка?

Работайте с ларевел,yii2 и т.д))

Сейчас бы на wp делать нормальные проекты,а не инфо-помойки

Так вот делаем, в своё время не помню какую версию уже переписывали - дополняли.

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

Но, вот наверстать хотя бы частями вполне реально, хоть и требуется времени чтение манов и документаций.

Фреймоврки не по мне, я как-то пробовал, там тоже понапихали чтобы умелые ручки умели прописывать шаблоны.

Зачем мне фреймворк если к примеру у нас как-то крутился самописный сайт из 20 файлов минимум запросов в бд с кэшем на никсах с посещалкой в 10к дейли

И такое возможно, так что тут дело в другом, когда проходит икс времени, проект начинает нагружаться, к примеру при стартапе обычном,  у нас было всё в одном, аплоад все на одном сервере.

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


Не пойму почему тут автор похвастался 2-3 часами, а написать логику работы не так и не удалось.

virusz #:

К вам можно в кружок?


Все так думают, пока не начнуть делать серьёзные проекты.

Установить вп, накачать плагинов и функционала, потом через Х времени, нужно решать задачи по расширению доработки, а код не твой, костыли там крутятся тоже не твои

И потом ты начинаешь выгребать, а потом закапывать и делать своё как надо под конкреные задачи проекты.

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

Mik Foxi #:

так в чем вопрос, если ты понимаешь что все кругом мусор - сделай не мусор и покажи нам пример как надо было сделать.

Не всё кругом мусор - я просто смотрел некоторые реализации и понял что авторы либо выгорели и делают дорабатывают уже на абы обновить.

Так как с расширением функционала и наплывом ошибок и жалоб пользователей видать тоже даёт о себе знать.

А так, за пример, я уже доказал себе по крайней мере, что могу сделать лучше чем у некоторых "коммерческих платных" вариантов, со всеми дочётами ui ux  и так далее.

Осталось сделать систему личных сообщений, на этом пожалуй я остановлюсь.

Можно было конечно сделать через custom таксономии, но мне интересно сделать с ноля на чистом php+mysql + ajax + jquery

Всего: 764