Эволюция разработчика: от «специалиста по CMS» к «хранителю контента»

Скрипты и советы | 12 марта 2026 135

API, CMS

Или: Как перестать изучать 100500 движков и понять, что главное — это база данных

🧭 Пролог: Тот самый момент просветления


Помните, как всё начиналось?

Сначала вы собирали сайты на WordPress. Потом кто-то попросил интернет-магазин — пришлось нырять в OpenCart. Потом клиент пришёл с готовым сайтом на Webasyst и попросил «перенести это на DLE, потому что там админка понятнее». Вы перенесли.

Вы молодец. Вы освоили кучу систем. Вы умеете настраивать плагины, править шаблоны и объяснять клиентам, почему «этот модуль стоит денег».

Но в какой-то момент происходит инсайт. Страшный и одновременно освобождающий:

А исходная система, оказывается, абсолютно не важна.


Сайт на WordPress, магазин на OpenCart, каталог на DLE — какая разница? Вся ценность любого веб-проекта — в его контенте. А контент лежит в базе данных. Всё остальное — это просто обёртка, способ донести этот контент до потребителя.

И если вы это осознали — поздравляю, вы переросли уровень «установщика CMS» и вышли на уровень архитектора данных.

Эта статья — про то, что делать с этим осознанием и как не наступить на грабли, пытаясь построить собственный API-продукт.

Эволюция разработчика: от «специалиста по CMS» к «хранителю контента»


🧱 Акт 1: CMS — это просто интерфейс к базе данных


Давайте посмотрим правде в глаза. Любая CMS (DLE, WordPress, OpenCart, Webasyst) выполняет всего три функции:
  1. Предоставляет интерфейс для добавления и редактирования контента (админка).
  2. Хранит этот контент в структурированном виде (база данных).
  3. Отдаёт этот контент посетителям в красивом виде (шаблоны).

Всё. Остальное — детали.

И если вы умеете работать с базой данных, то, в сущности, вам всё равно, какая CMS стоит над ней. Вы всегда можете:
  • вытащить нужные данные,
  • преобразовать их в нужный формат,
  • отдать туда, куда требуется.

Проблема в том, что большинство разработчиков застревают на уровне «шаблонов». Они знают, как вывести новость с помощью {custom name="X" id="1,2,5-8" category="2,3,5-8" template="custom" limit="10" order="date" sort="desc"}, но понятия не имеют, как выглядит таблица dle_post и что там лежит.

А зря. Потому что именно знание структуры данных даёт настоящую свободу.



🔌 Акт 2: Headless API — когда сайт становится просто хранилищем


Концепция Headless CMS (или «безголовой» CMS) как раз про это: вы отделяете хранение и управление контентом от его представления.

Сайт остаётся сайтом — для людей, которые заходят через браузер. Но кроме этого, он превращается в источник данных для всего остального мира:

  • для Telegram-ботов,
  • для мобильных приложений,
  • для внешних виджетов,
  • для партнёрских сайтов,
  • для умных колонок,
  • для корпоративных CRM.

И всё это — через API.

В чём разница с RSS?

Мы уже писали об этом в статье «API против RSS». Если коротко:
  • RSS — это открытая дверь, через которую контент утекает ко всем подряд без контроля.
  • API — это швейцар с книжкой пропусков, который знает, кому, что и сколько можно отдавать.

В чём разница с прямыми запросами к БД?

Прямые запросы к базе данных — это опасно и недальновидно. Открыть доступ к БД извне — значит пригласить хакеров на чай. API же даёт строго дозированные порции данных и не пускает никого в святая святых.



🏗️ Акт 3: Что нужно учитывать, если вы решили строить своё API


Итак, вы прониклись идеей и решили, что ваш следующий проект будет жить по принципу «контент в базе, доступ через API». Отлично. Но есть нюансы.

1. Безопасность — не просто «ключик»


Недостаточно просто сгенерировать токен и повесить его на стену. Нужно продумать:
  • Уровни доступа — один ключ даёт доступ только к новостям, другой — только к товарам.
  • Ограничение по времени — ключ может быть срочным, особенно для партнёрских интеграций.
  • Rate limiting — чтобы боты не положили сервер тысячами запросов в секунду.
  • Логирование — чтобы знать, кто и когда что запрашивал (и при необходимости предъявить).

2. Форматы данных — не только JSON



Да, JSON — это стандарт. Но иногда клиентам нужен XML, иногда — CSV для выгрузки в Excel, иногда — просто текстовый файл. Хорошее API умеет отдавать данные в том формате, который удобен потребителю.

3. Версионность


Апишечка, которую вы написали вчера, сегодня может потребовать изменений. Но если на неё уже завязаны внешние системы, просто так менять её нельзя. Нужно поддерживать старую версию (v1) и параллельно разрабатывать новую (v2). Звучит сложно? Это и есть сложно. Но иначе ваши партнёры проклянут вас, когда их приложения перестанут работать.

4. Документация


API без документации — это не API, это тёмный лес. Даже если вы пишете «для себя», через полгода вы забудете, как работает тот или иной эндпоинт. А уж если вы отдаёте API внешним разработчикам — без подробной документации они просто не смогут им пользоваться.

5. Производительность


Отдавать данные по API — это нагрузка на сервер. Если сайт и так еле дышит, добавление API может его добить. Нужно продумывать кэширование, оптимизацию запросов и, возможно, отдельные сервера для API.



🧪 Акт 4: Пример из жизни — TCSE4dleAPI


Мы в TCSE прошли этот путь и продолжаем идти. Начали как обычные разработчики, собирающие сайты на DLE. Потом доросли до понимания, что главное — это контент, а не движок.

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

TCSE4dleAPI — это модуль для DLE, который:
  • открывает доступ к данным сайта через безопасное REST API,
  • позволяет гибко настраивать права доступа,
  • отдаёт контент в JSON, XML или любом другом формате,
  • логирует запросы и защищает от перегрузок.

С ним ваш сайт на DLE превращается в единый источник правды, из которого можно кормить любые внешние системы:
  • Telegram-боты,
  • мобильные приложения,
  • партнёрские сайты,
  • CRM,
  • и даже старые добрые RSS-ленты (если кому-то они ещё нужны).

Мы не бросаем DLE, мы выводим его на новый уровень.


🎯 Акт 5: Зачем это всё разработчику?


Если вы дочитали до этого места, у вас мог возникнуть вопрос: «А мне-то это зачем? Я и так неплохо зарабатываю, настраивая шаблоны».

Ответ: чтобы перестать быть просто «исполнителем» и стать архитектором решений.

Когда вы умеете не только вставлять {custom category="2,3,5-8" template="custom"} в шаблон, но и проектировать систему обмена данными между сайтом и внешним миром, вы переходите в другую ценовую категорию. Вы продаёте не часы работы, а инфраструктуру, на которой строится бизнес клиента.

А это, согласитесь, звучит совсем иначе, чем «поправить шапку сайта».



🧠 Эпилог: Главное — контент. Всё остальное — декорации


Резюмируем.

Раньше вы были специалистом по CMS X. Потом вы стали специалистом по CMS Y и Z. А теперь вы доросли до понимания, что CMS не важны. Важны данные.

И если вы это поняли — вы на верном пути.

Следующий шаг — научиться этими данными управлять, отдавать их туда, где они нужны, и контролировать этот процесс.

А мы поможем. Хотя бы в части DLE.



P.S. Если вы хотите попробовать TCSE4dleAPI в деле — пишите в Telegram или на почту. Покажем, расскажем, настроим. И да, это не просто «ещё один плагин». Это способ взглянуть на свой сайт как на источник данных, а не просто как на набор страниц.

P.P.S. А если вы работаете с другой CMS — идея headless API всё равно ваша. Берите на вооружение. Документация по REST API общая для всех. А данные — они и в Африке данные. 😉

Виталий Чуяков

Виталий Чуяков

Технологический прагматик

Веб-разработчик с 20-летним стажем, основатель веб-студии TCSE. Специализация: DLE «под ключ», Webasyst, Parts-Soft.ru, технический аудит.

🧠 20 лет 🚀 120+ проектов 📄 45+ статей
Мебельный щит vs готовая мебель: Как выбирать CMS и не выкинуть деньги на ветер

Или: Почему Webasyst — это круто, если вы столяр, а DLE — если вы просто хотите жить 🪑 Пролог: История про мебельный...

Подробнее
Лицензия на Webasyst Shop-script База

Ключ лицензии на версию Shop-Script ПРО Интернет-магазин https://www.webasyst.ru...

Подробнее
[Из песочницы] 10 советов по созданию контента, который люди будут расшаривать

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

Подробнее
Модернизация сайта: обновление с сохранением ценного контента

Ваш сайт устарел и работает медленно? Мы проведем комплексную модернизацию: проанализируем текущее состояние, перенесем...

Подробнее
Git vs FTP: Или как превратить простую загрузку файлов в квест с инженерными ритуалами

Представьте: вам нужно отнести папку с документами в соседний кабинет. У вас есть два варианта: Взять папку и отнести...

Подробнее
DomOrganic.ru - интернет магазин органических товаров

Веб-студия TCSE представляет свою новую работу разработка полноценного интернет-магазина на платформе webasyst shop...

Подробнее

💬 Комментарии

В связи с новыми требованиями законодательства РФ (ФЗ-152, ФЗ «О рекламе») и ужесточением контроля со стороны РКН, мы отключили систему комментариев на сайте.

🔒 Важно Теперь мы не собираем и не храним ваши персональные данные — даже если очень захотим.

💡 Хотите обсудить материал?

Присоединяйтесь к нашему Telegram-каналу:

https://t.me/tcsecms/

Нажмите кнопку ниже — и вы сразу попадёте в чат с комментариями