【问题标题】:How does static site generator work with a CMS like wordpress静态站点生成器如何与 wordpress 等 CMS 一起使用
【发布时间】:2020-03-05 11:22:33
【问题描述】:

我一直在探索将 Vue 用于 wordpress 前端,我遇到了许多不同的技术,例如 Nuxt.js、Gridsome、VuePress,它们有助于将网站创建为 SPA、SSR 或静态网站。我真的很喜欢这些想法,因为我想进入现代前端,而不是使用 WordPress 默认。所以我正在研究无头 WordPress。

经过一些研究,我觉得我有点喜欢 Gridsome 和 Wordpress,因为 Gridsome 通过在构建时编译来自 CMS 和模板的内容来帮助构建静态站点。

所以我有一个非常新手的问题,像 wordpress 这样的 CMS 每天都会被用户更新,更新页面,添加新帖子等,这是否意味着每次人们向 CMS 添加一些内容时你都需要构建网站?

我将使用 WordPress 构建一种内部门户,并且我想尝试使用 Vue,因此对于所有这些技术,我不知道哪种框架最适合我的动态内容项目。

有什么建议或见解吗?谢谢。

【问题讨论】:

    标签: wordpress vue.js static-site gridsome


    【解决方案1】:

    所以我有一个非常新手的问题,像 wordpress 这样的 CMS 每天都会由 > 用户更新,以更新页面、添加新帖子等,这是否意味着每次人们向 CMS 添加一些内容时您都需要构建 > 网站?

    是的,这就是静态生成网站的概念。 它仍然是您如何设计应用程序的选择。 通常,当创建新帖子时,可能会有一个事件/webhook 触发构建作业,该构建作业将自动构建和部署包含最新帖子的页面。

    您仍然可以在部署的应用程序客户端中使用 Vue 组件,这些组件直接调用 API 来检索数据并显示它。例如,对于 cmets,这样做是有意义的。

    Netlify 是一个很好的例子,它通过一个不错的 CI / CD 简化了整个静态站点的生成,该 CI / CD 可以在您的站点自动触发。他们还有一个在降价文件之上工作的 CMS。一旦更改/新的降价文件提交到存储库,它就会触发构建以部署页面的最新版本。

    我希望这会有所帮助。

    感谢和最好的问候, 电子手表

    【讨论】:

    • 嗨@ewatch,我还阅读了有关 Netlify 的信息,它们确实提供了一个 webhook 来在保存帖子时进行重建。但是,我们在使用 Netlify 进行托管方面存在限制,因此我们只能使用自己的内部服务器来托管应用程序。所以我猜webhook部分会很困难。我现在正在尝试 nuxt 构建一个通用应用程序来进行部分服务器端渲染。
    • 当你说我可以使用客户端 API 来检索数据并显示它时,我认为所有这些逻辑都是在构建过程中完成的,所以静态端不会从 CMS 中检索任何新内容?我错过了什么吗?
    • gridsome.org/docs/guide-comments 当您查看此页面时,他们建议例如还集成诸如 disqus 之类的外部服务。但是,如果您的页面的特定部分仍然应该是动态的,您可以保持它动态并制作一个与 API 通信的客户端 vue 组件。这仍然具有更好的性能,就好像整个站点总是需要从服务器等渲染。
    • en.support.wordpress.com/webhooks 如果您查看此页面 Wordpress 提供 webhook,以便您可以在发布新帖子时通知另一个系统。有了这个,你可以例如在 Jenkins 服务器或类似的东西上触发“gridsome build”。
    猜你喜欢
    • 2022-08-15
    • 1970-01-01
    • 2021-01-20
    • 2020-05-28
    • 1970-01-01
    • 2013-10-08
    • 2021-01-30
    • 2015-10-28
    • 2017-05-19
    相关资源
    最近更新 更多