simple-site-aggregate v0.0.19
simple-site-aggregate
A simple-site plugin that aggregates html snippets from other pages.
Installation
Install with npm install -g simple-site-aggregate
.
Add _plugins/index.js
containing the line require('simple-site-aggregate');
.
Usage
Aggregate a page using a handlebars tag:
{{{aggregate "http://my-site/my-page.html" "_parsers/my-site.yaml" "_templates/output.html" 300}}}
http://my-site/my-page.html
is the page that should be aggregated.
_parsers/my-site.yaml
defines how to extract data from the HTML file:
selectors:
title: header.post-header h1
content: article.post-content
image: .blog-meta img [src]
published:
- parseDate
- span.date
- DD.MM.YYYY
static:
name: My Name
The values in selectors
are CSS selectors that are applied to the HTML file.
The first matching tag is processed as follows:
- If the value ends with a bracketed value (
.blog-meta img [src]
) the result is the value of an attribute (src
). - If the value ends with a bracketed dot value (
div [.left]
) the result is if the tag has the given CSS class. - If the value is an array, the first entry is a parser function and the second entry a CSS selector. The remaining entries are parameters to the parser function. The result is the tag's content applied to the parser function.
Otherwise, the result is the content of the tag.
static
contains static strings.
_templates/output.html
is the template to be used to generate output.
300
is an optional value defining the maximum length of the values.
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago