最新のJekyllを使用して、octopress-multilingualとoctopress-paginateの両方を統合しようとしています。そして、これは正しく動作していません。Octopress-Paginateを使用したOctopress-Multilingualは、最新のジキールと互換性がありません
この場合、octopress-paginateを使用して翻訳されたジキールページにページを設定することはできません。
私が達成しようとしているのは、_config.ymlファイルで定義されたグローバル変数に基づいてページングを許可するために_pluginフォルダに.rbファイルを置くことです。これはrubyメソッドalias_methodを使って現在の動作を上書きします。
_config.yml(抜粋)
lang: en
_plugins/.yml(抜粋)
module Octopress
module Paginate
def paginate(page)
defaults = DEFAULT.merge(page.site.config['pagination'] || {})
if page.data['paginate'].is_a? Hash
page.data['paginate'] = defaults.merge(page.data['paginate'])
else
page.data['paginate'] = defaults
end
if tag = Jekyll.configuration({})['lang']
page.data['paginate']['tags'] = Array(tag)
end
if category = page.data['paginate']['category']
page.data['paginate']['categories'] = Array(category)
end
old_paginate(page)
end
alias_method :old_paginate, :paginate
end
end
これが私のレイアウトです: _pagesの/のnews.html(抜粋)
---
layout: default
title: news
permalink: /latest/news/
paginate:
collection: posts
per_page: 4 # maximum number of items per page
limit: false
permalink: :num/ # pagination path (relative to template page)
---
<!-- Page code goes here-->
{% assign news = paginator.posts | where:'category', 'articles' | where:'lang', site.lang %}
{% for post in news %}
<!-- News code goes here-->
{% endfor %}
<!-- Page code goes here-->
{% for page in (1..paginator.total_pages) %}
<!-- Paginator code goes here-->
{% endfor %}
<!-- Page code goes here-->
上記の例では、言語による投稿をフィルタリングしていますが、ページ設定は言語別にフィルタリングされていません。
ここでの目標は、_config.ymlファイルのlangタグに基づいて投稿にページを設定できるようにすることです。
これは可能ですか?
残念ながら[Octopress](https://github.com/octopress/octopress)は死んだプロジェクトのようです。 1年半以上はそれ以上のことは起こっていないし、最新バージョンは完全には醸造されていない。ちょっとしたことがうまくいきません:-( – axiac
そうかもしれませんが、少なくとも可能でなければならないでしょうか? – ccamacho