Get Url Plugin for DocPad
Take a href URL and an optional base URL and resolve them as a browser would for an anchor tag. Useful for calculating URLs relative to @site.url. See examples below.
npm install --save docpad-plugin-geturl
git clone https://github.com/Hypercubed/docpad-plugin-geturl.git
cd docpad-plugin-geturl
npm install
make compile
make test
Requires a @site.url:
# ...
templateData:
site:
url: 'http://localhost:9778'
# ...
Call | Returned |
---|---|
@getUrl('/') | http://localhost:9778/ |
@getUrl('/test') | http://localhost:9778/test |
@getUrl('/test/') | http://localhost:9778/test/ |
@getUrl('/test.html') | http://localhost:9778/test.html |
Call | Returned |
---|---|
@getUrl('') | http://localhost:9778/document.md |
@getUrl('test.html') | http://localhost:9778/test.html |
@getUrl('../test.html') | http://localhost:9778/test.html |
Call | Returned |
---|---|
@getUrl('//test.com') | http://test.com/ |
@getUrl('http://test.com') | http://test.com/ |
@getUrl('https://test.com') | https://test.com/ |
@getUrl('test.html', 'https://test.com') | https://test.com/test.html |
@getUrl('../test.html', 'https://test.com/sub/') | https://test.com/test.html |
Call | Returned |
---|---|
@getUrl(@document) | http://localhost:9778/document.md |
Call | Returned |
---|---|
@getUrl(['/', '/test', 'test']) | http://localhost:9778/,http://localhost:9778/test,http://localhost:9778/test |
@getBlock('styles').add(@getUrl(@site.styles)).toHTML() | <link rel="stylesheet" href="http://localhost:9778/root_style.css" /><link rel="stylesheet" href="http://localhost:9778/sub_style.css" /> |
Call | Returned |
---|---|
@getUrl(@getCollection('documents')) | http://localhost:9778/sub/documents.md,http://localhost:9778/document.md |
Licensed under the incredibly permissive MIT License
Copyright © 2013+ J. Harshbarger