首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用ms-seo软件包,以更好的SEO在流星?

如何使用ms-seo软件包,以更好的SEO在流星?
EN

Stack Overflow用户
提问于 2015-06-28 02:26:08
回答 1查看 610关注 0票数 4

这个包,苏淑仪肯定在各个方面都很棒,但遗憾的是,它的作者在撰写自述文件时忘记了像我这样的新手。无论如何,作为一个从未为任何编码社区做出任何贡献的人,我相信我的批评是没有价值的,所以让我们继续前进。

这位特别的作者提供了一篇博客文章和包,这是一个有趣的阅读,但其中大多数直接与自述文件本身,所以我失去了试图配置设置。

这篇博文写道:

您只需要在以下模式中添加seo数据:

代码语言:javascript
复制
SeoCollection.insert({
    "route_name" : "home", // the name of the Iron-Router route
    "title" : "Title of your home site",
    "meta" : [
        {"description": "This is the description of the document"},
        // add more meta tags
    ],
    "og" : [
        { "image": "http://your-domain.com/images/image.jpg" },
        // add more open graph tags
    ]
})

我猜这个包为您创建了集合SeoCollection,所以我只需要填充一些种子数据,为我的应用程序的每个路径插入一个。凉爽的!

哦,但是等等..。自述机构则说了一些不同的话:

您可以设置一些标准值。如果没有其他可用的,则将设置此选项。

代码语言:javascript
复制
Meteor.startup(function() {
    if (Meteor.isClient) {
        return SEO.config({
            title: 'Manuel Schoebel - MVP Development',
            meta: {
                'description': 'Manuel Schoebel develops Minimal Viable Producs (MVP) for Startups'
            },
            og: {
                'image': 'http://manuel-schoebel.com/images/authors/manuel-schoebel.jpg' 
           }
        });
    }
});

他是否意味着,如果我不提供任何配置,这些实际值将被设置,即我的站点将被称为"Manuel MVP开发“?这和我要做的插入词是怎么押韵的?为什么这个会在客户身上?为什么没有路线名称?

自述并为SeoCollection.update提供了一些示例代码,似乎也在做同样的事情!所以我应该用的是update而不是insert?我到底在哪里做这些?

但随后,他谈到了将onAfterHooks用于铁器路由器,而不是用于动态数据。所以我应该用它来代替上面的一些吗?

我真的很想澄清这一点。安装软件包后,我需要做什么?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-30 09:46:45

我从未使用过这个包,但是我从阅读docs/code中学到了这一点:

SEO.config

该包能够为不同的路由呈现不同的标头标记。因此,当您插入新的ms-seo配置时,通常会通过一条路由。但您也可以配置默认配置。这就是整个Meteor.startup SEO.config业务的意义所在。

SeoCollection.update

文档中的update调用将选项upsert设置为true。这个选项使查询更新数据库条目(如果存在),如果不存在,则插入数据库条目。这使得更改事情变得更容易,并且在执行meteor reset时,ms-seo的状态保持不变。上一次他更新了自述文件的时候,他没有更新博客文章。

因此,我建议您使用文档化的update语句。甚至,使用upsert

代码语言:javascript
复制
SeoCollection.upsert(
  {
    route_name: 'aboutMe'
  },
  {
    $set: {
      route_name: 'aboutMe',
      title: 'About - Manuel Schoebel',
      meta: {
        'description': 'Manuel Schoebel is an experienced web developer and startup founder. He develops but also consults startups about internet topics.'
      },
      og: {
        'title': 'About - Manuel Schoebel',
        'image': 'http://manuel-schoebel.com/images/authors/manuel-schoebel.jpg'
      }
    }
  }
);

配置可能是由客户端完成的,以便更容易地进行更新。

SEO.set

最后,使用onAfterAction钩子,这样您就不必手动指定当前路由。你可以在他的代码中看到这一点。SEO.set调用基本上与upsert相同,它只检查iron:router指定的路由。SEO.set函数不会将设置保存到集合中。这意味着,它必须在每次站点加载时执行。

摘要

所以,如果你使用铁:路由器肯定使用onAfterActionSEO.set。当然,您仍然希望使用SEO.config函数来设置默认设置。

希望这能有所帮助。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31095553

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档