書籍(第4版)の章・セクションの見出しです。購入を検討する場合の参考にしてください。
1章
- WordPressが動作する仕組み
- WordPressでページが表示される仕組み
- 通常のWebページの場合
- WordPressがページを表示する仕組み
- データベースとは
- WordPressのメリット
- WordPressでページが表示される仕組み
- WordPress の投稿タイプと機能
- 投稿
- アーカイブページ
- 個別投稿ページ
- 固定ページ
- 固定ページと投稿の違い
- フロントページ
- カテゴリーとタグ
- スラッグとパーマリンク機能
- スラッグ
- パーマリンク機能とスラッグ
- 投稿
- WordPress のテーマとは
- WordPressのテーマはWebページのひな形
- HTMLで作成する場合の弱点
- WordPressで作成する場合のメリット
- 基本的に触るのはテーマ
- テーマは切り替えられる
- テーマをつくるのに必要な知識
- POINT WordPressのバージョン
- メジャーバージョンとマイナーバージョン
- バージョンアップ時の対応
- WordPressのテーマはWebページのひな形
2章
- PHPのコードを書く際のルール
- PHPのコードは「<?php」~「?>」で囲む
- 命令は「;」で終える
- 空白や改行を入れられる
- 単語の途中には空白は入れない
- コメントを記述する
- 行末までの記述をコメントアウトする
- コメントとPHPコードの関係
- 複数行のコメントを書く
- POINT コメントは重要
- 変数ってなに?
- 変数とは
- 変数の書き方
- 変数は繰り返し利用できる
- 変数の値は変更できる
- POINT 定数とは
- 変数とは
- 配列ってなに?
- 配列とは
- 配列の書き方
- 配列の値の呼び出し方
- 連想配列とは
- 連想配列の書き方
- 連想配列の値の呼び出し方
- 配列に要素を追加する
- 通常の配列での要素の追加
- WordPressでの配列の使用例
- WordPressでの連想配列の使用例
- POINT シングルクォートとダブルクォート
- 配列とは
- ifを利用した条件判定
- 単純な条件判定 ─ if文
- if文を使うメリット
- 複雑な条件分岐 ─ if~else文
- 複数の条件判定で気をつけたいこと
- 「:」を使ったif文の表記方法
- WordPressでのif文の使用例
- POINT 比較演算子
- 単純な条件判定 ─ if文
- whileを利用した繰り返し処理
- 繰り返し ─ while文
- while文の書き方
- 無限ループに注意
- 「:」を使ったwhileの表記方法
- whileの条件を柔軟に設定する
- WordPressでのwhileの使用例
- 関数を使う
- 関数とは
- 引数と関数の関係
- 引数は1つとは限らない
- 引数がない場合もある
- 多くの関数に引数がある理由
- POINT WordPressでよく使われるPHPの関数
- 自分で関数を作成する
- 関数にするメリット
- POINT 引数は配列の場合もある
- 関数を定義する場所
- POINT WordPressでの関数名の付け方
- オブジェクトとは
- WordPressを使う際に必要なオブジェクトの知識
- オブジェクトとは
- オブジェクトからデータを取り出す
- オブジェクトの配列からデータを取り出す
- POINT 型と変換
3章
- テンプレートタグとは
- テンプレートタグとは
- テンプレートタグはPHP部分に書く
- テンプレートタグの引数
- テンプレートタグの役割の違い
- the_category()とget_the_category()の違い
- テンプレートタグの使い方はWordPress ドキュメントで調べる
- POINT データを出力する関数/出力しない関数の傾向
- POINT WordPressの公式ドキュメント
- WordPress のループ
- WordPressにおける「ループ」とは
- ループの構造を詳しく見てみる
- have_posts()と the_post()の働き
- ループ中で使うテンプレートタグ
- WordPressにおける「ループ」とは
- 条件分岐タグ
- 条件分岐タグとは
- 条件分岐タグの特徴
- 条件分岐タグの実際の使用例
- 条件分岐タグとは
- テーマテンプレートとテンプレート階層
- テンプレートファイルとは
- index.php以外のPHPファイルが存在する理由
- テンプレートファイルは2種類ある
- テーマテンプレートのテンプレート階層
- テンプレート階層の仕組み
- テンプレート階層を利用したカスタマイズ
- POINT 最後は必ずindex.php
- POINT WordPressのIDとスラッグ
- テンプレートファイルとは
- モジュールテンプレートの使い方
- モジュールテンプレートの仕組み
- モジュールテンプレートの呼び出し
- インクルードタグの引数
- そのほかのパーツはget_template_part()で
- functions.php の役割
- functions.phpを使う意味
- フックとは
- フィルターフックの仕組み
- フィルターフックの場所
- フィルターフックへの処理の追加
- フックを使う理由
- アクションフックとは
- アクションフックで使用する関数
- テーマで使うのはadd_filter()とadd_action()
- セキュリティに注意する
- WordPressとセキュリティ
- エスケープ処理とは
- エスケープ処理を怠ると…
- クロスサイトスクリプティング攻撃への対策
- データ出力時に無害化する代表的な3つの関数
- esc_html()関数と esc_attr()関数
- esc_url()関数
- 意図しないタグを除去するwp_kses_post()関数
- echoで出力するときは必ず使う
- WordPress の関数を使う
- POINT HTMLの属性値は”“で囲む
- WordPressとセキュリティ
4章
- 本章で解説するサンプルのサイト
- ヘッダーに記述するコード
- header.phpに書かれるコード
- header.phpのコード例
- 言語属性と文字コードの出力
- language_attributes()
- bloginfo()
- wp_head()とwp_body_open()を必ず書く
- wp_head()
- wp_body_open()
- body要素以降の出力
- body_class()
- POINT 三項演算子(条件演算子)
- is_front_page()とis_home()
- home_url()
- functions.phpへの記述
- functions.phpで管理するメリット
- wp_enqueue_style()関数の書き方
- wp_enqueue_script()関数の書き方
- 関数の呼び出し
- やってみよう:ヘッダー部分のタイトルを画像にする。画像はテーマ内のimagesフォルダの画像top.pngを使用する。
- header.phpに書かれるコード
- ナビゲーションに記述するコード
- ナビゲーションメニュー
- 1 functions.phpでメニュー機能を有効にする
- 2 テンプレートへの出力
- POINT メニューは複数登録できる
- 3 管理画面でメニュー項目を設定
- POINT メニューの「表示オプション」
- やってみよう:ナビゲーションメニューの項目名の前に「>」の記号を追加する。
- ナビゲーションメニュー
- アーカイブ表示で記述するコード
- アーカイブ表示を行うarchive.php
- archive.phpのコード例
- ヘッダー部分を読み込むコード
- タイトルの表示
- 記事を表示するループ処理
- excerpt.phpの読み込み
- 記事を表示するexcerpt.php
- 投稿IDとクラス属性を出力
- 投稿タイトルの表示
- POINT the_title()をタグで直接囲まない理由
- アイキャッチ画像の出力
- 投稿の抜粋の表示
- entry-footer.phpの呼び出し
- 投稿日の表示
- カテゴリーと投稿タグの表示
- ループ後の処理
- 記事一覧へのリンク表示
- アーカイブがない場合の表示
- フッターの読み込み
- やってみよう:「アーカイブの説明」を表示する
- 個別投稿と固定ページを表示するコード
- 個別投稿・固定ページを表示するsingular.php
- singular.phpのコード例
- 個別投稿表示のループ
- content.phpの読み込み
- 本文を表示するthe_content()
- wp_link_pages()関数
- 個別投稿と固定ページを分岐する
- コメントの表示
- POINT if条件式でさまざまな条件を設定する
- 条件が複数の場合
- 条件が偽の場合に処理を実行
- 変数や関数を条件に指定
- 前後の記事へのリンクの出力
- やってみよう:アイキャッチ画像がない場合は前後のfigureタグを表示しないようにする。
- やってみよう:投稿が更新されたら更新日を表示する。
- 個別投稿・固定ページを表示するsingular.php
- フッターに記述するコード
- フッターの表示を行うfooter.php
- footer.phpのコード例
- ウィジェットとは
- ウィジェットの出力
- 1 functions.phpで登録
- 2 テンプレートファイルへの記述
- 3 管理画面でウィジェットを登録
- フッターにサイト情報を表示
- wp_footer()関数
- フッターの表示を行うfooter.php
- メインクエリとは異なるコンテンツを表示するコード
- メインクエリとサブクエリ
- get_posts()の使い方
- get_posts()を記述する
- 投稿IDと著者IDの取得
- get_posts()関数でのデータの取得
- 投稿データの表示
- setup_postdata()関数
- wp_reset_postdata()関数
- やってみよう:投稿記事と同じカテゴリーの記事を取得して表示する。
- カスタムフィールドを表示するコード
- カスタムフィールド
- カスタムフィールドを表示
- 表示させる条件の判定
- カスタムフィールドを表示するコード
- POINT 関数がWordPressのドキュメントに 見つからなかった場合
- やってみよう:カスタムフィールド「読んだ日」を追加して、入力されていない場合は「読んだ日」の行は表示しないようにする。
- 検索結果を表示するコード
- 検索結果を表示するコード
- search.phpのコード例
- the_search_query()関数
- get_search_form()関数
- ウィジェットを表示する
- 検索結果を表示するコード
- functions.phpに記述するコード
- テーマの設定
- add_editor_style()関数
- テーマで機能を有効にするadd_theme_support()関数
- <head>への出力
- アイキャッチ画像の処理
- ブロック用のCSS
- コンテンツ幅の設定
- スタイルシートとJavaScriptを登録
- フックによるカスタマイズ
- フックで加工できるデータ
- 格納されているデータを調べるvar_dump()
- テーマの設定
5章
- クラシックテーマ/ブロックテーマ/ハイブリッドテーマとは
- 各テーマの特徴
- クラシックテーマ
- ブロックテーマ
- ハイブリッドテーマ
- ブロックテーマの主な特徴
- ファイル構成
- テンプレートファイル
- パーツファイル
- functions.php
- theme.json
- ブロックパターンファイル
- クラシックテーマをハイブリッドテーマにする
- テンプレートパーツ機能を有効にする
- ブロックパターンを有効にする
- 各テーマの特徴
- theme.jsonに設定を記述する
- JSONとは
- WordPressのtheme.json
- theme.jsonの先頭でスキーマを指定しておく
- バージョンを必ず指定する
- コンテンツ幅の設定
- 文字色・文字サイズの設定
- 色設定を使用しない
- デフォルトのプリセット色を使用しない
- ブロックテンプレートで共通パーツを登録する
- ブロックテンプレートパーツ
- funcstions.phpへの記述
- parts/フォルダ内に設置する
- ブロックにプレースホルダを設定する
- テーマファイルからテンプレートパーツを呼び出す
- テンプレートパーツの内容を管理画面で書き換える
- ブロックパターンでひな形をつくる
- ファイルの置き場所
- ファイルの先頭の書式
- ブロックパターンにPHPを記述する
- WordPress本体のブロックパターンを表示しないようにする
- 公式ディレクトリに掲載されているブロックパターンを利用する
- theme.jsonに記述
- 新規投稿時にブロックを配置する
- templateプロパティへのブロック登録
- やってみよう:「この本を読んだきっかけ」「本の概要」「感想」「こんな人におススメ」のH3見出しブロックをテンプレートとして配置する。
- 一般的なテーマに使用されるそのほかのコードと機能
- style.cssとindex.php
- style.cssの役割
- index.phpの役割
- 公式配布されているテーマの機能
- 多言語対応
- テーマカスタマイザー
- ブログのトップに固定
- style.cssとindex.php
- 子テーマを使ったカスタマイズ
- WordPressのテーマは更新される
- 子テーマを使う
- 子テーマのつくり方
- style.css
- functions.php
- 子テーマの仕組み
- CSSは必要な記述のみを書く
- テンプレートファイルは子テーマにあるファイルに置き換わる
- functions.phpの読み込みは特殊
- 1 親テーマでfunction_existsが使われている場合
- 2 テーマでフックが使われている場合
- POINT テーマの更新がテンプレートファイルにおよんだ場合
- 子テーマでのtheme.json
- エラー対処法
- エラーの種類
- リカバリーモード
- メール通知先
- POINT テーマを初期テーマに戻す
- デバッグモードでエラーメッセージを確認する
- デバッグモードを有効にする
- よくあるエラーメッセージと対処
- エラーメッセージは出ないが表示が崩れる場合
- テーマファイルで問題が発生している箇所を探す
- echoが必要かどうかをチェックする
- 画像やCSSのパスを確認する
- 変数にデータが入っているかどうかチェックする
- データを取得する関数の設定を確認する
- POINT 「データが入っていない」が正常なこともある
- エラーの種類
更新日: