masonry.html 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. {{ $item := .item }}
  2. {{ $has_attachments := partial "functions/has_attachments" $item }}
  3. {{ $link := $item.RelPermalink }}
  4. {{ $target := "" }}
  5. {{ if $item.Params.external_link }}
  6. {{ $link = $item.Params.external_link }}
  7. {{ $target = "target=\"_blank\" rel=\"noopener\"" }}
  8. {{ end }}
  9. {{/* Get summary. */}}
  10. {{ $summary := "" }}
  11. {{ if $item.Params.summary }}
  12. {{ $summary = $item.Params.summary | markdownify | emojify }}
  13. {{ else if .Params.abstract }}
  14. {{ $summary = .Params.abstract | markdownify | emojify | truncate (site.Params.abstract_length | default 135) }}
  15. {{ else if $item.Summary }}
  16. {{ $summary = $item.Summary }}
  17. {{ end }}
  18. {{ $resource := ($item.Resources.ByType "image").GetMatch "*featured*" }}
  19. <div class="card">
  20. {{ with $resource }}
  21. {{ $image := .Resize "550x" }}
  22. <a href="{{ $link }}" {{ $target | safeHTMLAttr }} class="card-image hover-overlay">
  23. <img src="{{ $image.RelPermalink }}" alt="{{ $item.Title }}" class="img-responsive" loading="lazy">
  24. </a>
  25. {{ end }}
  26. <div class="card-text">
  27. <h4><a href="{{ $link }}" {{ $target | safeHTMLAttr }}>{{ $item.Title | markdownify | emojify }}</a></h4>
  28. {{ with $summary }}
  29. <div class="article-style">
  30. <p>{{ . }}</p>
  31. </div>
  32. {{ end }}
  33. {{ if $has_attachments }}
  34. <div class="btn-links">
  35. {{ partial "page_links" (dict "page" $item "is_list" 1) }}
  36. </div>
  37. {{ end }}
  38. </div>
  39. </div>