Как решить проблему CMS, когда вы застряли между RESTful, WordPress и жестким местом

1656594736 kak reshit problemu cms kogda vy zastryali mezhdu restful wordpress

Джессика Даффин Вулф

snRSXVoTteYVuIVBSjomz06gwuYnCQWqyuVH
Фото Сэмюэля Зеллера на Unsplash

Осенью прошлого года я пытался решить, как организовать и руководить небольшим проектом повествования, созданным примерно 40 пользователями моими студентами. Я хотел, чтобы они загружали содержимое (изображения и аудиофайлы вместе с некоторым текстом). Я также хотел, чтобы оно долгое время сохранялось в формате, которое мое маленькое приложение Vue.js могло легко скачать для отображения без моей настройки и накладных расходов.

Я очень счастлив полагался на WordPress как основную систему управления содержимым (CMS) в течение многих лет, но в последнее время она стала чуть-чуть старой, и она не совсем разработана для такого многопользовательского проекта на основе AV, поэтому я решил искать хорошие свежие варианты.

Вариант 1: Google Таблицы

Простейшим путем, казалось, было создание таблицы Google, которую студенты могли заполнять ссылками на собственные медиа, размещенные самостоятельно. У меня был хороший опыт создания таких небольших сайтов, прежде чем передавать данные через JSON.

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

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

Так что нет Google Таблицам.

Вариант 2: Содержимое

Contentful – это CMS без головы, что означает, что она обеспечивает инфраструктуру для хранения, редактирования и обслуживания содержимого без какого-либо интерфейсного дисплея. Традиционный WordPress, напротив, настроен на то и другое — сохранять ваше содержимое и предлагать весь код, который получает и отображает его. Этот большой набор возможностей делает его достаточно громоздким, и все чаще он не выглядит столь ловким, как должен быть интернет-инструмент.

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

Потратив некоторое время на настройку Contentful, я отчаянно хотел использовать его, но начал терять интерес, чем больше думал, как студенты загружают свою работу.

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

Я также не был уверен, что бесплатный уровень покроет потребности хостинга этого проекта. По всей вероятности, это было бы хорошо, но я бы следил за запросами пропускной способности и API и долгосрочным статусом содержимого.

Поскольку первый платный уровень стоил от 249 долларов в месяц, повышение уровня было слишком дорогостоящим, чтобы рассматривать. Эта цена отпугивала меня даже от желания использовать бесплатную учетную запись, поскольку я знал, что никогда не буду обновляться по такой цене. Так что был шанс, что мне придется перенести все, если бы я начал строить проект на службе.

Было понятно, что Контентфул не хотел заниматься мелкомасштабной экспериментальной работой — достаточно справедливо — и в любом случае было слишком раздражать, чтобы суетиться над этими деталями для небольшого проекта.

Вариант 3: RESTful WordPress

Пока я пытался заставить Contentful работать, я постоянно возвращался к установке WordPress, чтобы поиграть. Хотя старый WP может быть громоздким, столкнувшись с выгодным подходом Contentful по взиманию платы за «записи» содержимого, я начал чувствовать очень ностальгию по легкости и свободе добавления содержимого в WordPress.

Я подумал – ну, привет – почему бы не использовать WordPress как безголовую CMS с новой функцией REST API? Это позволило бы обойти основную часть обслуживания содержимого через PHP, в то же время позволяя мне использовать WordPress как CMS, интерфейс, который мои студенты хорошо знают.

Чтобы разрешить студентам добавлять все изображения и аудио для своих проектов, мне нужно добавить свой тип публикации. Для этого мне нужно будет добавить плагин. Чтобы использовать плагин, мне нужно было бы выяснить, как его настроить, а затем создать соответствующий тип публикации, который будет обеспечивать простой в использовании интерфейс внутри системы WP. Для этого мне нужно было бы переписать WordPress с нуля, потому что благословите его сердце, он не создан, чтобы делать что-то другое, как выглядеть и чувствовать себя как WordPress. Он руководит публикациями в блоге очень, очень, очень хорошо, и его можно запутать, чтобы делать какие-нибудь другие вещи, но не очень хорошо. Дыхание публикации в блоге никогда не угасает.

Я отказался от всего этого даже не пытаясь понять, как я буду использовать REST API в своем проекте. Но я все еще в восторге от этого. Это, пожалуй, отличный вариант для обслуживания содержимого с более крупных сайтов с помощью фреймворков JS.

Вариант 4: WordPress + Формы = CMS Sugar

Решение, на котором я наконец остановился, казалось смешно простым и смешным слиянием всех моих предыдущих усилий.

Используя Gravity Forms, плагин WordPress, который я знаю из других проектов, создал базовую форму, с помощью которой студенты могли загружать все пятнадцать своих файлов и вставлять их текстовые компоненты.

Я экспортировал записи как электронную таблицу со ссылками на загруженное содержимое, хранящуюся на сайте WordPress, и превратил этот файл в формат JSON, чтобы использовать его так же, как и таблицу Google.

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

Да да! Почему это решение не было очевиднее, когда я начал?

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

Добавить комментарий

Ваш адрес email не будет опубликован.