jekyll / jekyll-import

:inbox_tray: The "jekyll import" command for importing from various blogs to Jekyll format.
https://import.jekyllrb.com
MIT License
516 stars 316 forks source link

Drupal aliases now respect the 'source' config #454

Closed hugopeixoto closed 3 years ago

hugopeixoto commented 3 years ago

Alias markdown files were being generated in the current directory instead of the directory defined by the "source" configuration option.

This is my first time using jekyll, still trying to figure it out. I'm sorry if I missed something in how this is supposed to work.

mattr- commented 3 years ago

:wave: Thanks for taking the time to contribute! Are alias markdown files a Drupal thing? I'm not aware of them.

Either way, this looks good to me. I'll wait a few days to hear back from you about alias markdown files before approving and merging, since I'd like to make sure I understand those properly.

hugopeixoto commented 3 years ago

Alright, here's a bit of context:

Drupal's pages are called "nodes". You can access them by navigating to /node/<nodeid>. You can also define URL aliases, like mapping /about-us to /node/42. These aliases are stored in the url_alias table.

jekyll-import already handles these aliases by going through that table and creating markdown files in the root, like about-us.md, with a layout (refresh.html) that contains a meta http-equiv redirect to the correct post. With this in place, when you access /about-us, you get redirected to /post/2021-09-20-about-us. It's not exactly the same behavior, but this is what's currently implemented.

What this PR does is to change the directory where these alias files are created. Instead of always creating them on the root directory, it uses the source option in the jekyll configuration, like every other page.

mattr- commented 3 years ago

Thanks so much for explaining that!

@jekyllbot: merge +minor