如何在不使用API​​密钥的情况下获取所有谷歌字体的列表?

时间:2012-08-31 18:16:28

标签: php wordpress google-font-api

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

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

如果有人给我一种按类别分组的方法,可以获得积分!

2 个答案:

答案 0 :(得分:4)

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

EDIT / ADDITION:

您只需要超出使用限制的API密钥,因此根据您拨打的电话数量,您可以parse this JSON

答案 1 :(得分: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));