# Assigning variables to conditions

**URL:** <https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124>\
**Category:** support\
**Created:** [December 3, 2019, 10:18am UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124 "2019-12-03T10:18:42Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![igramnet](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/igramnet/32/2715_2.png) [@igramnet](https://discourse.gohugo.io/u/igramnet)\
**Post date:** [December 3, 2019, 10:18am UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124/1 "2019-12-03T10:18:42Z")

</div>

Hey. There is a code

```
{{ if or (eq .RelPermalink "/page1/") (eq .RelPermalink "/ru/page2/") }}
{{ $orange_title := T "test1" | safeHTML }}
{{ else if or (eq .RelPermalink "/page3/") (eq .RelPermalink "/page4/") }}
{{ $orange_title := T "test2" | safeHTML }}
{{ else }}
{{ $orange_title := T "test3" | safeHTML }}
{{ end }}

```

But for some reason, an error is shown during site generation

`ERROR 2019/12/03 13:04:27 Process: loading templates: "d:\hugo\src\themes\mytheme\layouts\partials\page.html:218:1": parse failed: template: partials/page.html:218: undefined variable "$orange_title"`

---

<div class="post-metadata">

**Author:** ![frjo](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/frjo/32/18626_2.png) [@frjo](https://discourse.gohugo.io/u/frjo)\
**Post date:** [December 3, 2019, 10:41am UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124/2 "2019-12-03T10:41:47Z")

</div>

Assign the variable first outside the if/else logic.

```
{{ $orange_title := "" }}
{{ if or (eq .RelPermalink "/page1/") (eq .RelPermalink "/ru/page2/") }}
{{ $orange_title = T "test1" | safeHTML }}
{{ else if or (eq .RelPermalink "/page3/") (eq .RelPermalink "/page4/") }}
{{ $orange_title = T "test2" | safeHTML }}
{{ else }}
{{ $orange_title = T "test3" | safeHTML }}
{{ end }}

```

Read more here: [https://gohugo.io/templates/introduction/#variables](https://gohugo.io/templates/introduction/#variables)

---

<div class="post-metadata">

**Author:** ![igramnet](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/igramnet/32/2715_2.png) [@igramnet](https://discourse.gohugo.io/u/igramnet)\
**Post date:** [December 3, 2019, 10:56am UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124/3 "2019-12-03T10:56:25Z")

</div>

Thank you

---

<div class="post-metadata">

**Author:** ![igramnet](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/igramnet/32/2715_2.png) [@igramnet](https://discourse.gohugo.io/u/igramnet)\
**Post date:** [December 3, 2019, 1:32pm UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124/4 "2019-12-03T13:32:47Z")

</div>

```
<!-- Orange Block -->
{{ $orange_title := "" }}
{{ $orange_btn := "" }}
{{ $orange_text := "" }}
{{ $orange_link := "" }}
{{ $orange_link_target := "" }}
{{ if or (eq .RelPermalink "/page/") (eq .RelPermalink "/de/page/") }}
{{ $orange_title := T "TEXT_EUROPE_Orange_title" | safeHTML }}
{{ else if or (eq .RelPermalink "/page2/") (eq .RelPermalink "/de/page2/") }}
{{ $orange_title := T "TEXT_RUSSIA_Orange_title" | safeHTML }}
{{ else }}
{{ $orange_title := T "TEXT_MAIN_PAGE_Orange_title" | safeHTML }}
{{ $orange_btn := T "TEXT_MAIN_PAGE_Orange_btn" | safeHTML }}
{{ $orange_text := T "TEXT_MAIN_PAGE_Orange_text" | safeHTML }}
{{ $orange_link := "/page3/dedicated/" | relLangURL }}
{{ $orange_link_target := 1 }}
{{ end }}
{{ .Scratch.Set "orange_title" $orange_title }}
{{ if or (eq .RelPermalink "/page3/") (eq .RelPermalink "/de/page3/") }}
{{ .Scratch.Set "orange_btn" $orange_btn }}
{{ .Scratch.Set "orange_text" $orange_text }}
{{ .Scratch.Set "orange_link" $orange_link }}
{{ .Scratch.Set "orange_link_target" $orange_link_target }}
{{ end }}
{{ partial "modules/orange_banner" . }}
<!-- END Orange Block -->

```

[http://localhost:1313/page3/](http://localhost:1313/page3/)  
I see an empty variable. Why?

---

<div class="post-metadata">

**Author:** ![leandro](https://yyz2.discourse-cdn.com/flex036/user_avatar/discourse.gohugo.io/leandro/32/3399_2.png) [@leandro](https://discourse.gohugo.io/u/leandro)\
**Post date:** [December 3, 2019, 5:23pm UTC](https://discourse.gohugo.io/t/assigning-variables-to-conditions/22124/5 "2019-12-03T17:23:13Z")

</div>

The first time you declare the variable you should use `:=`, when overriding use only `=`. Example:

```auto
{{ $orange_title := "" }}
{{ if true }}
{{ $orange_title = "foo" }}
{{ end }}

```
