@@ -919,29 +919,37 @@ func (p *Page) update(f interface{}) error {
919919 switch loki {
920920 case "title" :
921921 p .Title = cast .ToString (v )
922+ p .Params [loki ] = p .Title
922923 case "linktitle" :
923924 p .linkTitle = cast .ToString (v )
925+ p .Params [loki ] = p .linkTitle
924926 case "description" :
925927 p .Description = cast .ToString (v )
926- p .Params ["description" ] = p .Description
928+ p .Params [loki ] = p .Description
927929 case "slug" :
928930 p .Slug = cast .ToString (v )
931+ p .Params [loki ] = p .Slug
929932 case "url" :
930933 if url := cast .ToString (v ); strings .HasPrefix (url , "http://" ) || strings .HasPrefix (url , "https://" ) {
931934 return fmt .Errorf ("Only relative URLs are supported, %v provided" , url )
932935 }
933936 p .URLPath .URL = cast .ToString (v )
937+ p .Params [loki ] = p .URLPath .URL
934938 case "type" :
935939 p .contentType = cast .ToString (v )
940+ p .Params [loki ] = p .contentType
936941 case "extension" , "ext" :
937942 p .extension = cast .ToString (v )
943+ p .Params [loki ] = p .extension
938944 case "keywords" :
939945 p .Keywords = cast .ToStringSlice (v )
946+ p .Params [loki ] = p .Keywords
940947 case "date" :
941948 p .Date , err = cast .ToTimeE (v )
942949 if err != nil {
943950 p .s .Log .ERROR .Printf ("Failed to parse date '%v' in page %s" , v , p .File .Path ())
944951 }
952+ p .Params [loki ] = p .Date
945953 case "lastmod" :
946954 p .Lastmod , err = cast .ToTimeE (v )
947955 if err != nil {
@@ -965,21 +973,27 @@ func (p *Page) update(f interface{}) error {
965973 * published = cast .ToBool (v )
966974 case "layout" :
967975 p .Layout = cast .ToString (v )
976+ p .Params [loki ] = p .Layout
968977 case "markup" :
969978 p .Markup = cast .ToString (v )
979+ p .Params [loki ] = p .Markup
970980 case "weight" :
971981 p .Weight = cast .ToInt (v )
982+ p .Params [loki ] = p .Weight
972983 case "aliases" :
973984 p .Aliases = cast .ToStringSlice (v )
974985 for _ , alias := range p .Aliases {
975986 if strings .HasPrefix (alias , "http://" ) || strings .HasPrefix (alias , "https://" ) {
976987 return fmt .Errorf ("Only relative aliases are supported, %v provided" , alias )
977988 }
978989 }
990+ p .Params [loki ] = p .Aliases
979991 case "status" :
980992 p .Status = cast .ToString (v )
993+ p .Params [loki ] = p .Status
981994 case "sitemap" :
982995 p .Sitemap = parseSitemap (cast .ToStringMap (v ))
996+ p .Params [loki ] = p .Sitemap
983997 case "iscjklanguage" :
984998 isCJKLanguage = new (bool )
985999 * isCJKLanguage = cast .ToBool (v )
@@ -1034,17 +1048,20 @@ func (p *Page) update(f interface{}) error {
10341048 } else if published != nil {
10351049 p .Draft = ! * published
10361050 }
1051+ p .Params ["draft" ] = p .Draft
10371052
10381053 if p .Date .IsZero () && p .s .Cfg .GetBool ("useModTimeAsFallback" ) {
10391054 fi , err := p .s .Fs .Source .Stat (filepath .Join (p .s .PathSpec .AbsPathify (p .s .Cfg .GetString ("contentDir" )), p .File .Path ()))
10401055 if err == nil {
10411056 p .Date = fi .ModTime ()
1057+ p .Params ["date" ] = p .Date
10421058 }
10431059 }
10441060
10451061 if p .Lastmod .IsZero () {
10461062 p .Lastmod = p .Date
10471063 }
1064+ p .Params ["lastmod" ] = p .Lastmod
10481065
10491066 if isCJKLanguage != nil {
10501067 p .isCJKLanguage = * isCJKLanguage
@@ -1055,6 +1072,7 @@ func (p *Page) update(f interface{}) error {
10551072 p .isCJKLanguage = false
10561073 }
10571074 }
1075+ p .Params ["iscjklanguage" ] = p .isCJKLanguage
10581076
10591077 return nil
10601078
0 commit comments