Как изменить путь вывода сгенерированных файлов в Docpad?

Я хочу сделать что-то вроде того, что делает docpad-plugin-dateurls, но в контексте статического генерация сайта.

Мне нужно, например, сопоставить файл /src/documents/posts/2013-09-10-post-title.html с URL-адресом http://localhost:9778/posts/2013/09/10/post-title.html

Какой подход лучше всего подходит для выполнения этого требования?


person gschuager    schedule 10.09.2013    source источник


Ответы (2)


Вы должны сделать что-то вроде этого: https://github.com/Greduan/eduantech.docpad/blob/d5e97638331ab24730d3331b9fbcc30cf1d46dcc/docpad.coffee#L45-L49

Вы бы изменили его для своих нужд, но я думаю, он делает то, что вам нужно. :)

person greduan    schedule 11.09.2013
comment
Что ж, идея понятная, но у меня почему-то не заработало - person Alex; 15.09.2013
comment
@ Алекс, ты изменил его или скопировал как есть? - person greduan; 15.09.2013
comment
@Alex Кстати, недавно выяснилось, для этого требуется, чтобы сервер Node.js был активен, а DocPad работал. Открыт вопрос о том, как это можно исправить github.com/bevry/docpad/issues/648 - person greduan; 19.09.2013
comment
Что ж, в этом есть смысл, так как я использовал только функцию генерации. Спасибо за DocPad и поддержку сообщества ;) - person Alex; 19.09.2013
comment
Спасибо, но, как уже отмечалось, для обработки маршрутизации требуется сервер узла. См. мой другой ответ для статического способа сделать это. - person gschuager; 04.10.2013

Наконец, я реализовал это, установив outPath каждого документа в событии renderBefore. См. здесь: https://github.com/gschuager/blog/blob/7451fbcb829ad93154d24b281c7e8e30d3a0edac/docpad.js#L83

person gschuager    schedule 04.10.2013