hugo/docs/content/extras/localfiles.md
Bjørn Erik Pedersen cea82842f0 Rename ReadDir to readDir
To make it consistent with the other template funcs.
2015-08-07 14:33:48 +02:00

1.2 KiB

aliases date menu next notoc prev title weight
/doc/localfiles/
2015-06-12
main
parent
extras
/community/mailing-list true /extras/urls Traversing Local Files 110

Traversing Local Files

Hugo includes a way to traverse local files. This is done using the 'readDir' function.

Using readDir

readDir takes a single string input that is relative to the root directory of the site. It returns an array of os.FileInfo

Let's create a shortcode to build a file index with links using readDir.

'fileindex.html'

<table style="width=100%">
<th>Size in bytes</th>
<th>Name</th>
{{$dir := .Get "dir"}}
{{ $url := .Get "baseurl" }}

{{ $files := readDir $dir }}
    {{ range $files }}
			<tr>
                <td>{{.Size}}</td>
                <td>
                    <a href="{{$url}}{{.Name | urlize }}"> {{.Name}}</a>
                    </td>
            </tr>
	 {{ end }}
</table>

Now lets use it to list the css files used on this site

{{</* fileindex dir="static/css" baseurl="/css/" */>}}

Is rendered as:

{{< fileindex dir="static/css/" baseurl="/css/">}}