@fayz-ai/插文-博客
一个无头博客表面——帖子列表+文章页面——你掉入了任何费兹网站.
状态 : β-前1.0 (中文(简体) ). 船舶在捆绑的模拟/种子数据上运行一个公共网站表面(博客列表+后期细节),其中包含并发展了一个由Supabase支撑的供应商接合器. M1中没有管理员UI(主机拥有网站导航). API在1.0前可能会有变化.
营销网站需要博客. plugin-blog 是可重复使用的版本:一个无头的,SEO准备的博客,你编成一个Fayz网站,作为捆绑 { manifest, Provider }它载着公众阅读表面——a /blog 清单和a /blog/:slug 文章页面 – 加上后面的数据接合,所以主站台拥有版式和导航,而插件则拥有帖子.
它遵循“网站插件”(模式A)模式:而不是 defineSaas 插头, createBlogPlugin 返回一个列表(带有公共路线),一个应用根 Provider,以及已解决的数据提供者。 将路径丢入路由器, 将您的应用程序包入 Provider你有一个博客.
里面的东西
- 公共路线 —— 说
GET /blog(名单)和/blog/:slug(详情),两者guard: "public",安装在可配置下basePath。它们的组件可以懒散地装入它们,所以一个从未挂载它们的主机(SDK的路由器适配器上的存储前端,即TanStack Start主机)从不下载它们——或者它们被写给的反应路由器 - 构成部分 —— 说
BlogList, (中文(简体) ),PostDetail, (中文(简体) ),PostCard, (中文(简体) ),AuthorAvatar在他们自己的门上:import { BlogList } from '@fayz-ai/plugin-blog/components'(它们注定要反应-路由-度;主条目是无路由器) - 钩子 —— 说
useBlogPosts, (中文(简体) ),usePost,以及useBlogContext - 数据连接 —— 说
createSafeDataProvider选择createSupabaseBlogProvider配置时, 否则createMockBlogProvider从你的种子seed员额 - 道德操守办公室 ——每页
useSeo与og:site_name,加上组织+面包屑JSON-LD - Byline + i18n 默认值 ——可配置
defaultAuthor, (中文(简体) ),siteName后标签
安装
npm install @fayz-ai/plugin-blog
端点 : react, (中文(简体) ), react-dom, (中文(简体) ), react-router-dom。运行时代码 : @fayz-ai/core。 。 。 .
使用量
import { createBlogPlugin } from '@fayz-ai/plugin-blog'
const blog = createBlogPlugin({
basePath: '/blog',
siteName: 'Acme',
defaultAuthor: { name: 'Equipe Acme' },
seed: { posts: [/* ... */] },
})
// blog.manifest.routes -> spread into your website router
// wrap your app tree in <blog.Provider> so the routes resolve their data
费兹SDK的一部分
一个网站表面插件 。 与 @fayz-ai/plugin-sites 和商店前门/网站脚手架 @fayz-ai/plugin-payments 以编组由已安装的插件制作的标语营销网站.