「WordPressで学ぶPHP(1)変数・制御構造編」が発売されました。
「WordPressで学ぶPHP」シリーズの第1巻で、WordPressを通してPHPを学んでいく本です。
この本では、PHPの基本となる変数と制御構造について解説します。
Kindle本で、定価500円です。
EPUB3出力プラグイン(その5)
EPUB3出力プラグインの5回目として、テーマのカスタマイズ方法を解説します。
1.テーマを構成するテンプレート
EPUB用のテーマには、以下の9つのインデックステンプレートが含まれます。
テンプレート | 出力するファイル |
---|---|
メインページ | 表紙のページ |
目次 | 目次のページ |
ナビゲーション | EPUB3の仕様に沿った目次データ |
スタイルシート | EPUBの各ページに適用するスタイルシート(縦書き/横書き共通) |
スタイルシート(横書き用) | EPUBの各ページに適用するスタイルシート(横書きの場合のみ適用) |
スタイルシート(縦書き用) | EPUBの各ページに適用するスタイルシート(縦書きの場合のみ適用) |
スタイルシート(TinyMCE用) | TinyMCEに適用するためのスタイルシート |
content.opf | EPUB全体の情報や、EPUBに含むファイルの情報等が入ったXMLファイル |
toc.ncx | 目次データが入ったXMLファイル |
また、以下の3つのアーカイブテンプレートも含まれます。
テンプレート | 出力するファイル |
---|---|
ブログ記事 | 個々のページ |
ウェブページ | 前付/本文前/奥付のページ |
カテゴリ別ブログ記事リスト | 章の見出しのページ(カテゴリを章として使う場合) |
2.テンプレートのカスタマイズ
メインページ/目次/ブログ記事/ウェブページ/カテゴリ別ブログ記事リストの各テンプレートをカスタマイズすることで、EPUBの各ページのHTMLの構造を変えることができます。
EPUB3のHTMLは、HTML5(のXML形式であるXHTML5)で書きます。
また、スタイルシートのテンプレートをカスタマイズすることで、EPUBの各ページのデザインを変えることもできます。
EPUB3のスタイルシートは、CSS2をベースに、CSS3の一部にも対応しています。とほぼ同じ書き方をすることができます。
EPUB3のスタイルシートの仕様は、IDPFのEPUB3の仕様の中にあります。
「スタイルシート」のテンプレートには、横書き/縦書きに共通な部分を入れます。
また、「スタイルシート(横書き用)」「スタイルシート(縦書き用)」は、それぞれ横書き/縦書きのときだけ適用したい部分を入れます。
ただし、一般のWebブラウザと同様に、EPUBリーダーごとに、XHTML/CSSを仕様通りに正しく解釈しない不具合もあります。
そのため、EPUBリーダーによっては、思った通りの表示が得られないこともあります。
3.カスタマイズ禁止の箇所
各テンプレートの出力ファイル名/アーカイブマッピングは、変更しないでください。
以下のテンプレートは、原則として書き換えないでください。
これらを変更すると、EPUBの出力時に問題が起こります。
- content.opf
- toc.ncx
また、ナビゲーションのテンプレートも書き換えないでください。
書き換えると、EPUBリーダーの目次機能が正しく動作しなくなります。
4.テーマのエクスポート
カスタマイズしたテーマをエクスポートして、配布していただくこともできます。
ただし、テーマのtheme.yamlファイルを一部書き換える必要があります。
theme.yamlファイルの中で、「elements:」の行の前に、以下の2行を追加してください。
これらの行がないと、プラグインにEPUB用テーマとして認識されません。
required_components: MTePub: 1.00
また、SuperSortプラグイン対応のテーマをエクスポートする場合は、theme.yamlの「elements:」の行の前に、以下を追加します。
required_components: MTEPUB: 1.10 super_sort: 1.20
5.EPUB3出力プラグイン/テーマ関係の記事の一覧
EPUB3出力プラグイン/テーマ関係のその他の記事は、以下のリンクから参照できます。