2013-08-25 6 views
5

Недавно я обновился до jekyll 1.0, и в результате ссылки для ссылок теперь имеют ведущий '/'.Jekyll - Использование относительных URL-адресов для post.url

Установление относительных постоянных ссылок на истину или ложь вообще не изменяет генерацию {{post.url}}, они всегда, кажется, выходят с ведущей косой чертой.

Я понимаю, что я мог бы использовать base_url, но я передаю завершенный проект организации, которая заканчивает ее размещением везде (я не знаю URL-адреса).

Мой конфигурационный файл, который используется для работы просто:

permalink: articles/:title 

Любая помощь будет здорово!

ответ

9

Я вижу то же самое в Jekyll 1.0.3 install. Похоже на ошибку. В любом случае, работа должна состоять в том, чтобы использовать Liquid Filter для удаления первой косой черты.

{{ post.url | remove_first:'/'}} 

Со следующим макете постраничной:

{% for post in paginator.posts %} 
    <div class="postWrapper"> 
    <h2><a href="{{ post.url | remove_first:'/'}}">{{ post.title }}</a></h2> 
    <div class="postDate">{{ post.date | date:"%B %d, %Y" }}</div> 
    <div class="postContent">{{ post.content }}</div> 
    </div> 
{% endfor %} 

И ваш же _config.yml установка:

permalink: article/:title 

Ссылки генерируются без слэш (например, <a href="article/the-title">The Title</a>).

Просто имейте в виду, что если это ошибка, и она исправлена, вам придется настроить свой код, чтобы удалить фильтр «remove_first». В противном случае он будет разбивать косую черту в середине вашей ссылки и разбивать ее таким образом.

+0

Благодарим за это, я должен был полностью проверить жидкие документы. – Galaxy

1

Мы заметили то же самое, и я отследил его до добавления baseUrl, подвергающегося воздействию жидких шаблонов. В 0.12.1 baseUrl не настраивался в _config.yml и по умолчанию был равен ''.

В 1.0.0 вы можете установить его в конфиге, и по умолчанию он равен '/', поэтому вы видите это. Я не считаю, что это ошибка, поскольку она все еще присутствует в текущих версиях (1.4.3).

Смежные вопросы