Как генератор статических сайтов работает с CMS, такой как wordpress

Я изучал использование Vue для внешнего интерфейса wordpress, и я столкнулся с множеством различных технологий, таких как Nuxt.js, Gridsome, VuePress, и они помогают создавать сайты в SPA, SSR или статических сайтах. Мне очень нравятся эти идеи, потому что я хочу перейти на современные интерфейсы вместо использования WordPress по умолчанию. Итак, я ищу безголовый WordPress.

После некоторого исследования я думаю, что мне нравится Gridsome с Wordpress, поскольку Gridsome помогает создавать статический сайт, компилируя контент из CMS и шаблонов во время сборки.

Итак, у меня есть вопрос новичка: CMS, такая как wordpress, обновляется каждый день пользователями, чтобы обновлять страницы, добавлять новые сообщения и т. Д. Означает ли это, что вам нужно создавать сайт каждый раз, когда люди добавляют контент в CMS?

Я собираюсь создать своего рода внутренний портал с WordPress, и я хочу опробовать Vue, поэтому со всеми этими технологиями я не понимаю, какой фреймворк лучше всего подходит для моего проекта с динамическим контентом.

Есть предложения или идеи? Спасибо.


person leo277    schedule 09.01.2020    source источник


Ответы (1)


Итак, у меня есть вопрос для новичков: CMS, такие как wordpress, обновляются каждый день> пользователями, для обновления страниц, добавления новых сообщений и т. Д. Означает ли это, что вам нужно создавать> сайт каждый раз, когда люди добавляют контент в CMS?

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

Тем не менее, вы можете иметь в своем развернутом приложении клиентские компоненты Vue, которые напрямую вызывают API для извлечения данных и их отображения. Например, для комментариев это может иметь смысл.

Netlify - хороший пример, который упростил генерацию всего статического сайта с помощью красивого CI / CD, который может запускаться автоматически, как только ваш сайт. У них также есть CMS, которая работает поверх файлов уценки. Как только измененный / новый файл уценки фиксируется в репозитории, запускается сборка для развертывания последней версии страницы.

Надеюсь, это поможет.

Спасибо и с наилучшими пожеланиями, ewatch

person ewatch    schedule 09.01.2020
comment
Привет @ewatch, я также читал о Netlify, они действительно предоставляют веб-перехватчик для восстановления при сохранении сообщения. Однако у нас есть ограничение на использование Netlify для хостинга, поэтому мы вынуждены использовать собственный внутренний сервер для размещения приложения. Так что, я думаю, с веб-перехватчиком будет сложно. Теперь я пытаюсь создать универсальное приложение для частичного рендеринга на стороне сервера. - person leo277; 10.01.2020
comment
когда вы говорите, что я могу использовать API на стороне клиента для извлечения данных и их отображения, я думал, что вся эта логика выполняется во время процесса сборки, поэтому статическая сторона не будет извлекать новый контент из CMS? Я что-то здесь пропустил? - person leo277; 10.01.2020
comment
gridsome.org/docs/guide-comments, когда вы смотрите на эту страницу, которую они предлагают, например также для интеграции внешних сервисов, таких как disqus. Но если только определенная часть вашей страницы все еще должна быть динамической, вы можете сохранить ее динамической и создать клиентский компонент vue, который взаимодействует с API. Это по-прежнему имеет лучшую производительность, как если бы весь сайт всегда нужно было рендерить с сервера и т. Д. - person ewatch; 10.01.2020
comment
en.support.wordpress.com/webhooks, если вы посмотрите на эту страницу, Wordpress предлагает веб-перехватчики, чтобы вы могли уведомить другую систему о выпуске нового сообщения. С его помощью вы можете, например, запустить сборку Gridsome на сервере Jenkins или что-то в этом роде. - person ewatch; 10.01.2020