@astrolib/seo

中文文档
1.0.0-beta.8发布于 2024/10/04MITTypeScriptES Module零依赖近 30 天下载 6.3万

在 Astro 工程中更容易管理您的 SEO

中文使用文档
文档目录4 节
  1. 使用量
  2. 设置
  3. 添加到页面
  4. 选项

Astro SIO - @astrolib/seo (英语)

Astro SEO 在Astro项目中,它是一个集成体,它使管理你的SEO更加容易。 它完全基于优秀的 下个 SEO 图书馆

使用量

Astro SEO 将它添加到您想要添加 SEO 属性的页面中。 一旦在页面中包含,您就通过一个配置对象,并带有页面的SEO属性. 可以在页面级别上动态生成,或者在某些情况下,您的 API 可以返回 SEO 对象 .

设置

首先,安装它:

npm install @astrolib/seo

或者说

yarn add @astrolib/seo

添加到页面

您需要导入 @astrolib/seo 并添加想要的属性。 这能证明.. <head> 为SEO。 只需至少增加一个标题和描述.

仅列出标题和说明的例子:

---
import { AstroSeo } from '@astrolib/seo';
---

<AstroSeo
  title="Simple Usage Example"
  description="A short description goes here."
/>

不过 Astro SEO 给您更多的选项,您可以添加。 以下为一页的典型例子.

典型的页面示例 :

---
import { AstroSeo } from '@astrolib/seo';
---

<AstroSeo
  title="Using More of Config"
  description="This example uses more of the available config options."
  canonical="https://www.canonical.ie/"
  openGraph={{
    url: 'https://www.url.ie/a',
    title: 'Open Graph Title',
    description: 'Open Graph Description',
    images: [
      {
        url: 'https://www.example.ie/og-image-01.jpg',
        width: 800,
        height: 600,
        alt: 'Og Image Alt',
        type: 'image/jpeg',
      },
      {
        url: 'https://www.example.ie/og-image-02.jpg',
        width: 900,
        height: 800,
        alt: 'Og Image Alt Second',
        type: 'image/jpeg',
      },
      { url: 'https://www.example.ie/og-image-03.jpg' },
      { url: 'https://www.example.ie/og-image-04.jpg' },
    ],
    site_name: 'SiteName',
  }}
  twitter={{
    handle: '@handle',
    site: '@site',
    cardType: 'summary_large_image',
  }}
/>

选项

财产类型说明
titleTemplate字符串允许您设置将添加到标题中的标题模板
title字符串设置页面的元标题
noindex布尔设定页面是否索引
nofollow布尔设定是否跟踪页面
robotsProps对象设置更多元信息 X-Robots-Tag
description字符串设置页面元描述
canonical字符串设置页条
mobileAlternate.media字符串设定移动网站的屏幕大小
mobileAlternate.href字符串设置移动页面替代 URL
languageAlternates数组设置替代 urls 的语言 。 期望形状对象的阵列 : { hrefLang: string, href: string }
additionalMetaTags数组允许您添加此处未记录的元标记 .
additionalLinkTags数组允许您添加此处未记录的链接标签 .
twitter.cardType字符串牌型,将是一个 summary, (中文(简体) ), summary_large_image, (中文(简体) ), app,或 player
twitter.site字符串@ 用户名用于卡脚中使用的网站
twitter.handle字符串@ 内容创建者/ 作者的用户名( 输出为 twitter:creator(中文(简体) )
facebook.appId字符串用于Facebook Insights, 您必须在您的页面中添加 facebook app ID
openGraph.url字符串您对象的 Canonial URL 将在图中用作永久 ID
openGraph.type字符串您对象的类型 。 根据您指定的类型, 可能还需要其他属性
openGraph.title字符串打开的图表标题, 可能与您的元标题不同 .
openGraph.description字符串开放式的图表描述,这可以不同于您的元描述.
openGraph.images数组一系列图像(对象)被社交媒体平台所使用,放行等作为预览. 如果提供了多次, 您可以在共享时选择一次 .
openGraph.videos数组视频阵列( 对象)
openGraph.locale字符串打开的图表标记被标记在其中。 格式语言 TERRITORY. 默认为 en US.
openGraph.site_name字符串如果您的对象属于一个更大的网站,则应显示整个网站的名称.
openGraph.profile.firstName字符串人名出处.
openGraph.profile.lastName字符串人姓为相.
openGraph.profile.username字符串人物用户名.
openGraph.profile.gender字符串人之性别.
openGraph.book.authors字符串 []文章作家.
openGraph.book.isbn字符串这个 ISBN (英语)
openGraph.book.releaseDate约会时间该书发行日期.
openGraph.book.tags字符串 []与本书相关的标记词 .
openGraph.article.publishedTime约会时间文章首次发表时.
openGraph.article.modifiedTime约会时间上次修改文章时.
openGraph.article.expirationTime约会时间文章后出后出后.
openGraph.article.authors字符串 []文章作家.
openGraph.article.section字符串高档科名. 例如,技术
openGraph.article.tags字符串 []与本条相关的标记词 .

版本与发布记录

@astrolib/seo 共发布 27 个版本,首次发布于 2022/09/11;过去 12 个月发布了 0 个版本。

版本发布日期距今
1.0.0-beta.8latest2024/10/042 年前
1.0.0-beta.72024/10/042 年前
1.0.0-beta.62024/09/172 年前
1.0.0-beta.52023/12/092 年前
1.0.0-beta.4beta2023/08/233 年前
1.0.0-beta.32023/08/233 年前

关于 @astrolib/seo 的常见问题

@astrolib/seo 是什么?

在 Astro 工程中更容易管理您的 SEO

如何安装 @astrolib/seo?

在项目目录运行 npm install @astrolib/seo,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:astro(^1.2.1 || ^2.0.0 || ^3.0.0-beta.0 || ^3.0.0 || ^4.0.0 || ^5.0.0-beta.0 || ^5.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。

@astrolib/seo 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@astrolib/seo 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@astrolib/seo 可以商用吗?

@astrolib/seo 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@astrolib/seo 的下载量有多少?

根据 npm 官方下载统计,@astrolib/seo 在 2026/10/07 – 2026/11/05 这 30 天内被下载 63,169 次,日均约 2,106 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@astrolib/seo 还在维护吗?

最新版本 1.0.0-beta.8 发布于 2024/10/04(2 年前);至今共发布 27 个版本,其中过去 12 个月发布了 0 个;首次发布于 2022/09/11。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。