Как создать систему плагинов - PullRequest
3 голосов
/ 11 июля 2010

Мне интересно, как разрабатываются плагины типа Disqus .они похожи на теги для URL (но немного более продвинуты, так как им приходится работать с разными строками запросов, языком на стороне сервера, использованием коротких URL-адресов и т. д.).

Я хочу спросить об этом, так как чувствую, что было бы неплохо хранить отдельные функции, такие как комментарии / оценки / обзоры, в отдельных компонентах и ​​подключать их по мере необходимости, чтобы функциональность могла быть присоединена динамически.

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

обновление : я буду использовать PHP / MySQL, но яУгадайте, такой «шаблон» может быть реализован на любом языке

1 Ответ

1 голос
/ 11 августа 2010

Похоже, никто не хочет отвечать на ваш вопрос. Ну ... Недавно я разработал систему комментариев, похожую на ту, которую вы хотели. Я постараюсь объяснить, как я этого добился. (и вы должны быть в состоянии составить отзывы / что-нибудь еще из этого тоже).

Основной сайт содержит такие переменные, как: текущий используемый component (скажем, модуль / плагин / что угодно), загруженный элемент identificator (если есть).
Затем есть этот класс комментариев, он загружается по умолчанию, но запускает только свою функцию, скажем, check, которая проверяет, включены ли в текущем загруженном component @ identificator комментарии или нет (MySQL сохраняет их для меня). Если yes , то вы создаете эту форму comments.

#example (component) table:
id (item_identificator) | comments | title | content | author | timestamp | <etc.>

Моя таблица comments затем сохраняет переменные формы вместе с component и item_identificator.

#comments table:
id | component (in this case - "example") | item_identificator | comment | author | timestamp | <etc.> 

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

Надеюсь, вы поняли! И поскольку вы не указали языковые теги, я позволил себе написать о PHP и MySQL.

Если у вас есть какие-либо вопросы, не стесняйтесь спрашивать.

EDIT

Просто прочитайте, что такое Disqus, ну ... Это не будет кросс-сайтом. (

...