리스트 페이지 필터링
리스트 페이지는 if문을 사용하여 각각의 페이지에 맞게 작업할 수 있습니다.
- Hubl
{@% if blog_author %@}
<!-- 작성자 아카이브 페이지인경우 -->
{@% elif tag %@}
<!-- 태그 아카이브 페이지인경우 -->
{@% else %@}
<!-- 리스트 페이지인경우 -->
{@% endif %@}
문서에서 키워드를 검색합니다
작성자 : 박찬영
마지막 업데이트 : 2024년 03월 21일
블로그 템플릿은 해당 블로그의 게시물들을 나열하는 리스트 페이지와 개별 게시물 페이지로 구성됩니다.
리스트 페이지는 작성자(author) 및 태그(tag) 목록 페이지를 렌더링하는 데에도 사용됩니다.
리스트 페이지는 if문을 사용하여 각각의 페이지에 맞게 작업할 수 있습니다.
{@% if blog_author %@}
<!-- 작성자 아카이브 페이지인경우 -->
{@% elif tag %@}
<!-- 태그 아카이브 페이지인경우 -->
{@% else %@}
<!-- 리스트 페이지인경우 -->
{@% endif %@}
<section class='articleWrap'>
{@% for content in contents %@}
<article>
{@# 포스트 url #@}
<a href="{@{content.absolute_url}@}" class='post'>label</a>
{@# 썸네일 이미지, 썸네일 이미지 alt 텍스트 #@}
<img src='{@{content.featured_image ? content.featured_image : get_asset_url("기본 이미지 src")}@}' alt="{@{ content.featured_image_alt_text }@}">
{@# 포스트 제목 #@}
<h2>{@{content.name}@}</h2>
{@# 포스트 메타 데스크립션 #@}
<h3>{@{content.meta_description}@}</h3>
{@# 발행일 #@}
<p>{@{ content.publish_date | format_date('yyyyy.MMMM.dd') }@}</p>
{@# 포스트 본문영역 코드 제외하고 가져오기 #@}
<p>{@{ content.post_body|striptags }@}</p>
{@# 포스트 태그 리스트 #@}
<ul>
{@% for tag in content.tag_list %@}
<li><a href="{@{ blog_tag_url(group.id, tag.slug) }@}">{@{ tag }@}</a></li>
{@% endfor %@}
</ul>
</article>
{@% endfor %@}
</section>
아래 변수는 게시물의 정보를 출력합니다.
해당 변수가 가지고 있는 모든 정보를 보려면 pprint 필터를 사용해 보십시오
변수명
타입
설명
String
게시물 제목
content.titleString
게시물 url
String
썸네일 src
String
썸네일 alt 텍스트
String
게시물 메타 데스크립션
Dict
태그들(배열)의 정보를 출력합니다.
tag.name(태그명)tag.slug(태그 url명)blog_tag_url(group.id, tag.slug)(태그 url)content.topic_listString
저자명
객체 형태로 쓰면 더 다양한 정보를 가져올 수 있습니다.
content.blog_post_author.avatarInteger
content.publish_date|format_date('yyyyy.MMMM.dd')Integer
마지막 수정일
content.updated|format_date('yyyyy.MMMM.dd')String
게시물 본문
content.post_body|striptags(코드 제외하기)String
이전글 slug url
String
이전글 썸네일 src
String
이전글 썸네일 alt 텍스트
String
이전글 제목
String
다음글 slug url
String
다음글 썸네일 src
String
다음글 썸네일 alt 텍스트
String
다음글 제목
블로그 리스트 페이지와 관련된 변수입니다.
변수명
타입
설명
Boolean
페이지가 1개인지 여부를 출력합니다.
Integer
총 페이지 수
Integer
리스트(일반,태그,작성자)의 총 게시물 수
Integer
현재 페이지 번호
Integer
이전 페이지 번호
Integer
다음 페이지 번호
String
해당 블로그의 모든 태그들을 출력합니다.
이 함수는 지정된 블로그에 대해 가장 많이 게시된 태그(최대 250개)를 반환합니다.
각 태그의 게시물 수는 tag.live_posts로 출력할 수 있습니다.
매개변수 1 : 태그를 가져올 블로그 id
매개변수 2 : 가져오는 태그 수
[ Blogging, Inbound Marketing, SEO, Social Media]
<ul>
<li><a href="http://blog.hubspot.com/marketing/tag/blogging"></a></li></li>
<li><a href="http://blog.hubspot.com/marketing/tag/inbound-marketing">Inbound Marketing</a></li></li>
<li><a href="http://blog.hubspot.com/marketing/tag/seo">SEO</a></li>
<li><a href="http://blog.hubspot.com/marketing/tag/social-media">Social Media</a></li></li>
</ul>
이 함수는 지정된 블로그에 대해 작성자 개체를 slug 오름차순으로 가져옵니다.
작성자별 게시물 수는 author.live_posts로 출력할 수 있습니다.
참고: 이 기능의 작성자는 250명으로 제한됩니다. 이 기능은 페이지당 호출 횟수가 10회로 제한됩니다.
매개변수 1 : 작성자를 가져올 블로그 id
매개변수 2 : 가져오는 작성자 수
[ Brian Halligan, Dharmesh Shah, Katie Burke, Kipp Bodnar]
<ul>
<li><a href="http://blog.hubspot.com/marketing/author/brian-halligan">Brian Halligan</a></li></li>
<li><a href="http://blog.hubspot.com/marketing/author/dharmesh-shah">Dharmesh Shah</a></li></li>
<li><a href="http://blog.hubspot.com/marketing/author/katie-burke">Katie Burke</a></li></li>
<li><a href="http://blog.hubspot.com/marketing/author/kipp-bodnar">Kipp Bodnar</a></li></li>
</ul>
이 함수는 지정된 블로그에 게시된 게시물의 총 개수를 반환합니다.
매개변수 1 : 계산할 블로그를 지정합니다. 블로그 ID는 모듈 blog 필드 에 의해 확인할 수 있습니다 .
16
54
이 필터는 특정 속성값을 기준으로 게시물의 순서를 바꿉니다.
매개변수 1 : 순서를 반대로 바꾸는 boolean
매개변수 2 : 대소문자 구분 여부 boolean
매개변수 3 : 정렬 기준이 되는 속성값
A post<br>
B post<br>
C post<br>
D post<br>
E post<br>
November 28, 2022
2022.November.28
28.11.2022
현재 페이지 : {@{current_page_num}@}
전체 페이지 수 : {@{contents.total_page_count}@}
전체 포스트 수 : {@{ blog_total_post_count(group.id) }@}
<!-- 페이지 그룹 (5로 나누고 올림) -->
{@% set pageGroup = (current_page_num / 5)|round(0, "floor") %@}
{@% set pageArr = [1,2,3,4,5] %@}
{@% for item in pageArr %@}
{@% set this_page = pageGroup * 5 + loop.index %@}
{@% if this_page <= contents.total_page_count %@}
<li class="number">
<a class='{@{'active' if current_page_num == this_page}@}' href="{@{blog_page_link(this_page)}@}">{@{this_page}@}</a>
</li>
{@% endif %@}
{@% endfor %@}