diff --git a/Shortcodes/getdata.html b/Shortcodes/getdata.html
deleted file mode 100644
index 99a87cd..0000000
--- a/Shortcodes/getdata.html
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-{{- $file := .Get "file" -}}
-{{- $key := .Get "key" -}}
-{{- $type := .Get "type" -}}
-{{- if eq $type "count" -}}
- {{- if $key -}}
- {{- (index .Site.Data $file $key) | len -}}
- {{- else -}}
- {{- (index .Site.Data $file) | len -}}
- {{- end -}}
-{{- else -}}
- {{- index .Site.Data $file $key -}}
-{{- end -}}
\ No newline at end of file
diff --git a/Shortcodes/getdata.html.go b/Shortcodes/getdata.html.go
new file mode 100644
index 0000000..25271d2
--- /dev/null
+++ b/Shortcodes/getdata.html.go
@@ -0,0 +1,22 @@
+/**
+ * Hugo shortcode for content pages to access data file properties or counts
+ *
+ * @param file data file to reference in ./data
+ * @param key key in the data file object whose value you want
+ * @param type `count` to get a count of all items if an array, `value` to get the key's value
+ *
+ * {{% getdata file="icons.json" key="address-book" type="value" %}}
+ */
+
+{{- $file := .Get "file" -}}
+{{- $key := .Get "key" -}}
+{{- $type := .Get "type" -}}
+{{- if eq $type "count" -}}
+ {{- if $key -}}
+ {{- (index .Site.Data $file $key) | len -}}
+ {{- else -}}
+ {{- (index .Site.Data $file) | len -}}
+ {{- end -}}
+{{- else -}}
+ {{- index .Site.Data $file $key -}}
+{{- end -}}
\ No newline at end of file