# Linking pages

> Point links between Notion pages to your own routes.

Notion content links to other Notion pages in three ways: page mentions and links inside text, `link to page` blocks, and child pages. All of them go through one function, `pageHref`.

```typescript
<NotionRenderer
  blocks={blocks}
  pageHref={(pageId) => routes.get(pageId) ?? null}
/>
```

- **`pageId`** is 32 lowercase hex characters, without dashes.
- **Return a URL or path** to link there, or `null` to show the text without a link, for example for pages that aren't published.
- **By default,** links point to the page on [notion.so](http://notion.so/), which works for pages shared to the web.

These docs map each Notion page to its `/docs/<slug>` route, so links between docs pages stay on this site.

## Other links

Links to other sites open in a new tab, with a screen reader hint. `#anchors`, paths, `mailto:` and `tel:` links stay in the tab. Unsafe links, such as `javascript:`, render as plain text.
