Нет причин, по которым вам нужно придерживаться одного источника данных для всего «контента». Существует динамический контент, который будет регулярно добавляться или обновляться, а затем есть относительно статический контент, который редко изменяется. Кроме того, существует периферийный контент, такой как системные сообщения и текст меню, и основной контент - то, что пользователи на самом деле здесь, чтобы увидеть. Вам редко придется искать или индексировать периферийное содержимое, в то время как вы, вероятно, хотите иметь возможность выполнять запросы к основному содержимому.
В большинстве случаев динамический контент и первичный контент должны помещаться в базу данных. Статический периферийный контент может быть размещен в базе данных или нет. Нет смысла помещать его в базу данных, если сайт обслуживается профессиональным веб-разработчиком, который, вероятно, сочтет более удобным просто редактировать файл .pot
или .po
непосредственно с помощью инструментов командной строки.
Поиск SO по тегам i18n и l10n для получения дополнительной информации о реализации интернационализации / локализации. Что касается разработки схемы базы данных, то этот вопрос заслуживает отдельного вопроса. Я хотел бы найти вопросы по нормализации, как это предложено symcbean, а также поискать учебники по проектированию баз данных.