# 添加仅显示在您主页上的自定义内容

**URL:** <https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415>\
**Category:** Developer Guides\
**Tags:** how-to\
**Created:** [2019 年10 月 19 日 02:19 UTC](https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415 "2019-10-19T02:19:07Z")\
**Posts on this page:** 1\
**Showing post:** 22

<div class="post-metadata">

作者： ![manuel](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/manuel/32/468169_2.png) [@manuel](https://meta.discourse.org/u/manuel)\
发布日期： [2024 年2 月 28 日 23:40 UTC](https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415/22 "2024-02-28T23:40:00Z")

</div>

`discovery.${defaultHomepage()}` 将匹配由 `top-menu` 设置设定的着陆路由。它将同时匹配根 URL `/` 和特定路由，例如 `/categories`。

根据我的经验，在使用 `defaultHomepage()` 构建自定义主页时，有两个复杂问题：

- 它所基于的路由不再可用作纯列表视图。
- 用户可以在其界面设置中设置自己的默认主页。因此，要么需要禁用该功能，要么需要有一个主页概念，该概念适用于任何顶部菜单路由。

要仅在根 URL 上构建自定义主页，可以检查 `router.currentURL === '/'`。默认情况下，这仅匹配根 URL `/`，而不匹配顶部菜单设置中设置的着陆路由。但是，侧边栏链接现在具有逻辑，可以尝试将给定的 URL 与路由匹配。因此，默认情况下它在侧边栏链接上不起作用。我刚刚发布了一个关于此的帖子：[Can I have sidebar links that don’t resolve an url to a route?](https://meta.discourse.org/t/can-i-have-sidebar-links-that-dont-resolve-an-url-to-a-route/297067)

据我所知，目前没有默认方法可以在根 URL 上构建自定义主页，而又不影响顶部菜单的路由或遇到侧边栏问题。如果能提供该选项将是极好的。

---

_[View the full topic](https://meta.discourse.org/t/add-custom-content-that-only-appears-on-your-homepage/131415)._
