ref: aae1ff3c92b7371385c25e4274957f01f04688ec
parent: b10dea2955093ef82ff8707c4bdbc442d3ae1edb
author: spf13 <[email protected]>
date: Tue Aug 19 17:27:13 EDT 2014
Adding IsNode & IsPage functions to Page & Node
--- a/docs/content/templates/variables.md
+++ b/docs/content/templates/variables.md
@@ -43,6 +43,8 @@
**.WordCount** The number of words in the content.<br>
**.ReadingTime** The estimated time it takes to read the content in minutes.<br>
**.Weight** Assigned weight (in the front matter) to this content, used in sorting.<br>
+**.IsNode** Always false for pages.<br>
+**.IsPage** Always true for page.<br>
**.Site** See site variables below<br>
## Page Params
@@ -65,6 +67,8 @@
**.Url** The relative url for this node.<br>
**.RSSLink** Link to the indexes' rss link <br>
**.Data** The data specific to this type of node.<br>
+**.IsNode** Always true for nodes.<br>
+**.IsPage** Always false for nodes.<br>
**.Site** See site variables below<br>
## Site Variables
--- a/hugolib/node.go
+++ b/hugolib/node.go
@@ -47,6 +47,14 @@
return n.RSSLink
}
+func (n *Node) IsNode() bool {
+ return true
+}
+
+func (n *Node) IsPage() bool {
+ return !n.IsNode()
+}
+
type UrlPath struct {
Url string
Permalink template.HTML
--- a/hugolib/page.go
+++ b/hugolib/page.go
@@ -85,6 +85,14 @@
return p.plain
}
+func (p *Page) IsNode() bool {
+ return false
+}
+
+func (p *Page) IsPage() bool {
+ return true
+}
+
func (p *Page) setSummary() {
if bytes.Contains(p.rawContent, summaryDivider) {
// If user defines split: