{%- if include.params.name -%} {%- assign name = include.params.name -%} {%- endif -%} {%- assign return = nil -%} {%- assign keys = name | split:'.' -%} {%- assign name = keys.first -%} {%- assign keys = keys | shift -%} {%- for step in (1..7) -%} {%- case step -%} {%- when 1 -%} {%- assign return = page[name] -%} {%- when 2 -%} {%- assign return = site[name] -%} {%- when 3 -%} {%- assign return = site.data[name] -%} {%- when 4 -%} {%- assign return = site.defaults[page.layout][name] -%} {%- when 5 -%} {%- assign return = site.data.defaults[page.layout][name] -%} {%- when 6 -%} {%- assign return = layout[name] -%} {%- else -%} {%- assign return = include.params.default -%} {%- endcase -%} {%- for key in keys -%} {%- assign return = return[key] -%} {%- if return == nil -%} {%- break -%} {%- endif -%} {%- endfor -%} {%- if return != nil -%} {%- break -%} {%- endif -%} {%- endfor -%}