2

我正在制作一个 wordpress 主题,该主题具有允许用户从 Google 选择自己的字体的功能。显然,因为这是一个 wordpress 主题,所以无法为每次安装创建一个新的 API 密钥。

我需要的只是按字母顺序排列的字体列表。

如果有人给我一种按类别对它们进行分组的方法,则可以加分!

4

2 回答 2

4

查看开发人员 API。您可以查询它以获取字体列表。我不确定它是否对它们进行了分类,但你确实得到了很多细节。

更新:

您只需要一个超出使用限制的 API 密钥,因此根据您进行的调用次数,您只需解析这个 JSON即可。

进一步更新:

似乎您现在确实需要一个 API 密钥来调用开发人员 API。

于 2012-08-31T18:19:27.237 回答
2

我会用我需要的最小值构建我的列表并将其存储在本地。您可以将其作为 json 字符串存储在您的页面上。

例如在浏览器中打开: https ://www.googleapis.com/webfonts/v1/webfonts?key=YOUR-API-KEY

var allGoogleFonsts = JSON.parse(JSON_RESULT);

var fontFamilyWithCategory = allGoogleFonsts.items.map(fontItem => {
    return {
        family: fontItem.family,
        category: fontItem.category,
    };
});

var groupBy = function(xs, key, value) {
  return xs.reduce(function(rv, x) {
    (rv[x[key]] = rv[x[key]] || []).push(x[value]);
    return rv;
  }, {});
};

var fontFamilyByCategory = groupBy(fontFamilyWithCategory, 'category', 'family');

现在您可以在没有 api 调用的情况下存储和使用它:

console.log(JSON.stringify(fontFamilyByCategory));
于 2021-04-23T21:12:14.130 回答