# How do pages get to \_site, and get a url

**URL:** <https://talk.jekyllrb.com/t/how-do-pages-get-to-site-and-get-a-url/10255>\
**Category:** Help\
**Created:** [January 20, 2026, 5:13am UTC](https://talk.jekyllrb.com/t/how-do-pages-get-to-site-and-get-a-url/10255 "2026-01-20T05:13:49Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![anitagraham](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.jekyllrb.com/anitagraham/32/6483_2.png) [@anitagraham](https://talk.jekyllrb.com/u/anitagraham)\
**Post date:** [January 20, 2026, 5:13am UTC](https://talk.jekyllrb.com/t/how-do-pages-get-to-site-and-get-a-url/10255/1 "2026-01-20T05:13:49Z")

</div>

I am a new user of Jekyll, and I’m transferring a traditional website to Jekyll. I’m familiar with Ruby, HTML, css, sass, js etc etc.

I have read the docs, and questions many times…but

I have a `_pages` directory, with a set of files which are either `.html` or `.md`.

I also have an `index.html` in the root directory. (_my preference would be for it to be with all its friends in \_pages. Is there a routing plugin?_).

I am using the `jekyll-menus` plugin to generate a top-nav element, and a side nav element from a pages collection. This works for the home page. However, none of the other pages are copied to the \_site, and so links to the pages fail.

This is an extract from `_config.yml`. If there are things here that don’t make sense, or conflict with each other, it is because I’ve copied it from somewhere that seemed to answer one of my needs.

```yaml
plugins:
  - jekyll-menus

collections:
  - icons
  - links
  - packs
  - pages

defaults:
  -
    scope:
      path: '_pages' # an empty string here means all files in the project
      type: "pages"
    values:
      permalink: /:basename/
      hero: false

```

Thanks for clues… Anita Graham

---

<div class="post-metadata">

**Author:** ![george-gca](https://yyz2.discourse-cdn.com/flex030/user_avatar/talk.jekyllrb.com/george-gca/32/5301_2.png) [@george-gca](https://talk.jekyllrb.com/u/george-gca)\
**Post date:** [January 27, 2026, 1:35pm UTC](https://talk.jekyllrb.com/t/how-do-pages-get-to-site-and-get-a-url/10255/2 "2026-01-27T13:35:34Z")

</div>

> I also have an `index.html` in the root directory. (_my preference would be for it to be with all its friends in \_pages. Is there a routing plugin?_).

You can create the main page in `_pages/` and set its permalink to `/`. This is how we done in a template site:

> <https://github.com/alshedivat/al-folio/blob/1e657e9a4b12afbe357c3e6727ddd129ba14c62a/_pages/about.md?plain=1#L4>

Regarding jekyll-menus, its docs states:

`The easiest way to use Jekyll Menus is to start building menus using your existing posts and pages. This can be done by adding a menus variable to your front matter:`

So, you should do it that way, meaning the changes you need to do must be in the pages frontmatter themselves.
