跳转到内容

安装插件

EmDash 插件可以通过两种方式安装:通过管理面板从市场安装,或直接在您的 Astro 配置中添加。市场插件在隔离的沙箱中运行;基于配置的插件则在进程内运行。

管理面板包含一个市场浏览器,您可以在其中搜索、安装和管理插件。

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

  1. 配置沙箱运行器 — 市场插件在隔离的 V8 工作线程中运行,这需要沙箱运行时:

    astro.config.mjs
    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 存储桶中,并加载到沙箱运行器中。它会立即生效。

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

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

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

  • 通过 — 未发现问题
  • 警告 — 标记了次要问题(请查看具体发现)
  • 失败 — 检测到严重的安全问题

您可以在插件的详情页面上查看完整的审计报告,包括各个发现及其严重性级别。

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

  1. 进入管理面板的 插件 部分
  2. 市场插件会显示 有可用更新 徽章
  3. 点击 更新 查看更新日志和任何能力变更
  4. 如果新版本需要额外的能力,您会看到差异对比并需要批准
  5. 确认以进行更新
  1. 进入管理面板的 插件 部分
  2. 点击您想要移除的市场插件
  3. 点击 卸载
  4. 选择是保留还是删除插件存储的数据
  5. 确认

插件的沙箱代码将从您的 R2 存储桶中移除,并立即停止运行。

对于受信任的插件(您自己的代码,或通过 npm 安装的包),可以直接将其添加到您的 Astro 配置中:

astro.config.mjs
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 的完全访问权限
  • 在构建时和每次服务器启动时加载
  • 无法通过管理界面安装或移除
市场配置
执行方式沙箱化的 V8 隔离环境进程内
安装方法管理界面代码变更 + 部署
能力控制运行时强制执行仅文档说明
Node.js API不可用完全访问
最适合第三方插件第一方代码
更新方式管理界面一键更新版本升级 + 部署