安装插件

本页内容

EmDash 插件可以通过两种方式安装:从市场通过后台仪表板安装,或直接在 Astro 配置中添加。市场插件在隔离的沙盒中运行;基于配置的插件在进程中运行。

从市场安装

后台仪表板包含一个市场浏览器,你可以在其中搜索、安装和管理插件。

前提条件

要安装市场插件,你的站点需要:

  1. 配置沙盒运行器 — 市场插件在隔离的 V8 worker 中运行,这需要沙盒运行时:

    import { emdash } from "emdash/astro";
    
    export default defineConfig({
      integrations: [
        emdash({
          marketplace: "https://marketplace.emdashcms.com",
          sandboxRunner: true,
        }),
      ],
    });
  2. 后台访问权限 — 只有管理员可以安装或删除插件。

浏览和安装

  1. 打开后台面板并导航到 插件 > 市场
  2. 浏览或搜索插件
  3. 点击插件卡片查看其详细信息页面 — README、截图、功能和安全审计结果
  4. 点击 安装
  5. 查看功能同意对话框 — 这显示了插件将能够访问的内容
  6. 确认安装

插件将被下载,存储在你站点的 R2 bucket 中,并加载到沙盒运行器中。它立即生效。

功能同意

在安装之前,你会看到一个对话框,列出插件需要访问的内容:

功能含义
read:content读取你的内容
write:content创建、更新和删除内容
read:media访问你的媒体库
write:media上传和管理媒体
network:fetch向特定主机发出网络请求

安全审计

市场中的每个插件版本都经过了自动安全审计。审计结果显示在插件卡片上:

  • 通过 — 未发现问题
  • 警告 — 标记了小问题(查看详情)
  • 失败 — 检测到严重的安全问题

你可以在插件的详细信息页面上查看完整的审计报告,包括各个发现及其严重性。

更新

当已安装插件有新版本可用时:

  1. 转到后台面板中的 插件
  2. 市场插件显示 有可用更新 徽章
  3. 点击 更新 查看变更日志和任何功能更改
  4. 如果新版本需要额外的功能,你会看到差异并需要批准
  5. 确认以更新

卸载

  1. 转到后台面板中的 插件
  2. 点击要删除的市场插件
  3. 点击 卸载
  4. 选择是保留还是删除插件的存储数据
  5. 确认

插件的沙盒代码将从你的 R2 bucket 中删除,并立即停止运行。

从配置安装

对于原生插件(你自己的代码,或通过 npm 安装的包),直接将它们添加到你的 Astro 配置中:

import { defineConfig } from "astro/config";
import { emdash } from "emdash/astro";
import seoPlugin from "@emdash-cms/plugin-seo";

export default defineConfig({
  integrations: [
    emdash({
      plugins: [
        seoPlugin({ generateSitemap: true }),
      ],
    }),
  ],
});

原生插件:

  • 在进程中运行(不沙盒化)
  • 拥有对 Node.js API 的完全访问权限
  • 在构建时和每次服务器启动时加载
  • 无法从后台 UI 安装或删除

市场与配置:何时使用哪个

市场(沙盒化)配置(原生)
安装方法后台 UI 中一键安装代码更改 + npm install + 部署
执行隔离的 V8 isolate进程中
功能在运行时强制执行仅建议
Node.js API不可用完全访问
React 后台页面否(改用 Block Kit)
PT 渲染组件
更新后台中一键更新版本升级 + 部署
最适合大多数插件需要构建时集成的插件