2019/07/18 05:40 JST

Geeklog 2.1.1 テーマ開発方法

  • 投稿者:
  • 表示回数 1,191
Geeklog情報 Geeklog 2.1.0 でテンプレートエンジンが大きく機能アップしていますが、今回も、UIkit framework version 2.24.0 を Geeklogに追加する環境が整い、それを活用したテーマDenim、そしてその活用をさらに進めた、日本語版独自のテーマHorizonを公開しました。
今回広く機能アップしている内容をまとめてご紹介します。

1. UIkitを活用可能に。
/vendor/uikit/ にUIkitが追加されました。テーマDenimで活用しています。
Denimをベースに、UIkitの活用をさらに推し進めたシンプルなHorizonをさらに提供。このHorizonをベースに様々なテーマを開発可能です。

2. CSSをまとめてcacheする、高速化のためのstyle.css.php
functions.phpのfunction theme_config_テーマ()のなかで、

'etag' => true,

となっている場合に、style.css.phpでcssを1ファイルにまとめてcacheします。
cssが多数存在しているModern Curveテーマなどで有効です。
このしくみはどんなテーマでも活用可能で, Horizonでも活用しています。
cacheを活用しているため、ソースを変更してもすぐには反映されません。
管理画面でcacheをクリアしてください。
それでもまだ残る場合は、サーバーのdata/layout_css layout_cache下のファイルを削除してください。

3. テンプレートに条件文 if文などを記述できます。

詳しくは、
http://wiki.geeklog.net/index.php/Caching_Template_Library

4. テンプレートにPHPを自由に記述できます。

活用事例は、
http://www.ivysoho.net/article.php/geeklog-autotag-by-php

5. プラグインはdefaultテーマを持つことと、テーマ別にプラグインのテーマを持てるようになりました。

テーマに、プラグイン名のディレクトリを作成して、テンプレートをそこに置きます。
テーマHorizonには、staticpagesプラグインのテンプレートを追加しているのでそれを参考にしてください。

6. マシンリーダブルの Schema.orgに対応。見出し、投稿者、パンくずリストを適切なタグで記述。 テーマ Denim と Modern Curve, DenimベースのHorizonに対応しました。

7. その他、多数の機能アップ、変更が行われており、テンプレートファイルの追加・削除・リネームが行われています。
テーマに関する詳細な変更については以下のドキュメントを参照してください。(配布パッケージ同梱)
https://www.geeklog.jp/docs/japanese/theme.html


なお、テーマ名を修正したら、かならずfunctions.phpの5つの関数名を修正することを忘れないようにしてください。