고스트 CMS 다국어 블로그: 2. '포스트 더보기' 다국어 처리

고스트 CMS 다국어 블로그: 2. '포스트 더보기' 다국어 처리

포스트를 보면 영어 포스트임에도 불구하고 하단의 show_recent_posts 부분에는 언어 구분없이 모든 포스트가 노출되는걸 볼 수 있다. 이 부분을 수정해보자.

0.0.2 · sanghunka/ghost-multilingual-theme@0e2b7a3
Multilingual show_recent_posts_footer

post.hbs 수정

{{#get "posts" filter="id:-{{id}}" limit="3" as |more_posts|}}

    {{#if more_posts}}
        <aside class="read-more-wrap outer">
            <div class="read-more inner">
                {{#foreach more_posts}}
                    {{> "post-card"}}
                {{/foreach}}
            </div>
        </aside>
    {{/if}}

{{/get}}

위 코드를 삭제하고 아래 코드를 추가해주자.

{{#has tag="#en"}}
    {{#get "posts" filter="tag:en+id:-{{id}}" limit="3" as |more_posts|}}
        {{#if more_posts}}
            <aside class="read-more-wrap outer">
                <div class="read-more inner">
                    {{#foreach more_posts}}
                        {{> "post-card"}}
                    {{/foreach}}
                </div>
            </aside>
        {{/if}}
    {{/get}}
{{/has}}
{{#has tag="#ko"}}
    {{#get "posts" filter="tag:ko+id:-{{id}}" limit="3" as |more_posts|}}
        {{#if more_posts}}
            <aside class="read-more-wrap outer">
                <div class="read-more inner">
                    {{#foreach more_posts}}
                        {{> "post-card"}}
                    {{/foreach}}
                </div>
            </aside>
        {{/if}}
    {{/get}}
{{/has}}    

가장 최근 포스트 3개를 가져오는 부분을 수정했다. 포스트가 #en태그를 가지고 있을 경우, filter="tag:en"을 적용해주고 #ko태그를 가지고 있는 경우 filter="tag:ko"태그를 적용해준다.

결과

포스트의 언어태그와 일치하는 포스트만 하단에 노출된다.

다음글

고스트 CMS 다국어 블로그: 3. Language selector 추가
다국어 블로그 기초 설정을 완료했다. /와 /ko/ 경로를 사용하여 각 언어별 포스트를 구분하였다. 현재는 URL을 직접 입력해야만 영어 페이지에서 한국어 페이지로, 또는 그 반대로 이동할 수 있다. 사용자의 편의를 위해 언어를 선택할 수 있는 UI를 추가해보자. 0.0.3 · sanghunka/ghost-multilingual-theme@f5a2d86Add language selectorGitHubsanghunka default.hbs * <div class=“gh-head-actions”> 하단에 language-selector div 추가.</div>