Получение выдержки из поста в DocPad

Это то, что я сейчас использую, чтобы «схватить» свои посты: https://gist.github.com/Greduan/5977871

И затем я делаю цикл for .toJSON() и т.д.

Как я могу сделать так, чтобы это захватило отрывок из поста, а не весь контент? Потому что я могу просто использовать @content, но это выведет весь пост.

Как я могу сделать, например, отрывок с чем-то вроде 500 символов, затем «...», а затем ссылку «Продолжить чтение ...» или что-то в этом роде.

Я думал, может быть, использовать что-то вроде этого:

@content.slice(0,500)

Или что-то подобное. Будет ли это работать?

Спасибо за вашу помощь. :)


person greduan    schedule 11.07.2013    source источник
comment
Трудность с прямым срезом заключается в том, что вы можете нарезать html. Например, что произойдет, если вы сделаете разрез внутри блока кода или тега скрипта и т. д. Вы можете сделать это довольно легко, вручную указав отрывок, который вам нужен, этого будет достаточно?   -  person balupton    schedule 16.07.2013
comment
@balupton Что ты имеешь в виду? Что-то вроде ввода строки для поиска? Как только он находит его, он разрезает прямо перед ним или что-то в этом роде?   -  person greduan    schedule 16.07.2013
comment
Ручной пример похож на добавление excerpt: "blah blah blah" к метаданным вашего документа. С помощью текстового плагина вы по-прежнему можете выполнять рендеринг с метаданными.   -  person balupton    schedule 16.07.2013
comment
@balupton А, понятно. Вроде хорошее и простое решение, но может немного раздражать, а вдруг я решу изменить часть текста, например... Тогда мне нужно изменить его в двух местах. Ничего страшного, но не идеально, возможно, есть другой метод?   -  person greduan    schedule 16.07.2013
comment
возможный дубликат Показать только часть сообщения в блоге в Docpad , со ссылкой Подробнее   -  person greduan    schedule 09.11.2014


Ответы (1)


Взгляните на ответы здесь: Показать только частичный пост в блоге в Docpad со ссылкой «Подробнее» — все они требуют некоторой работы, но верхний, вероятно, сделает то, что вы хотите.

person Nathan Friedly    schedule 24.08.2013
comment
Спасибо за ответ. Прямо сейчас я решил не использовать этот подход, но когда я это сделаю, я приму ваш ответ, если он уместен. :) - person greduan; 25.08.2013