alienHRNの訓練日記

IT業界初心者で勉強中。

20201109授業メモ

授業内容

 

授業内容

wordpressのオリジナルテーマ作成方法

あとでサイトをみてまとめておくこと。


《object-oriented》ソフトウエアの設計や開発において、データや処理対象そのものに
重点を置く考え方のこと。
プログラムの内部動作や操作手順の詳細を知ることなく利用できるという利点がある。

インスタンス化とは、オブジェクト指向のプログラミングにおいて、
インスタンス(クラスを基にした実際の値としてのデータ)を生成することである。
通常、インスタンスはクラスと対比して使用される。
例えば「名前、身長、体重」というクラスがあるとすれば、そのインスタンスは「佐藤、170、60」
という風にして作られる。



〇表示サブループの仕組み
1.プログラマが用意した連想配列の条件にしたがってDBからページ情報を取得する

2.取得したページ情報は自分で用意した$wp_queryに代入して利用

3.ループ開始と同時に「変数->have_posts()」で確認
自分で用意したページ情報のオブジェクトを管理した変数のポインタ位置にページ情報があるか確認

4.ページ情報があったらループ内で処理をする

5.ループ内の最初で必ず「変数->the_post()」を呼ぶサブループ用のインスタンスのポインタ位置
のページ情報を暗黙変数$postにオブジェクト形式で代入
※ポインタ位置を次に移動

6.ループ内でテンプレートタグを使って必要情報を出力

7.ループを繰り返す

8.wp_reset_postdata関数を呼び出す。
暗黙変数$postに代入されたサブループのページ情報をリセットしてメインループで使用するデータに戻す。


※部屋の中の値を指定して表示させる方法
echo $the_query -> found_posts
部屋名->部屋内;

phpでif文の組み方
<?php if (0 < count($stickyList)) : ?>
  |
  |
  |
<?php endif ?>


'post__in' => $stickyList,
→'post__in'は配列で表示するページIDを指定する
// 配列が空(部屋がない)時は条件が無視される
// 絞り込みがかからない
// つまり先頭に固定表示の投稿がないと全件表示になってしまう
// そのためget_option('sticky_posts')の配列を使ってif文で表示・非表示の
// 分岐を追加しなければならない


phpファイルにおけるコメントアウトの仕方
<?php /* ?>  <?php */ ?>
この記述でコード上に表示させることなくコメントアウトすることができる。

〇共通パーツを部品化する際のポイント

・よく使う部品はがいる名が決まっている
header.php
footer.php

・よく使う部品の読み込み関数名が決まっている
get_header();
get_footer();
get_sidebar();

・部品読み込み関数の引数について
get_sidebar('content'): sidebar-content.php
get_sidebar('sub'): sidebar-sub.php

・オリジナル部品を読み込む場合
部品のファイル名は自由に決めて構わない
読み込むときは「get_template_part('読み込むファイル名')」を呼出し
※読み込むファイル名は拡張子は省略可

例)get_template_part('content'):content.php
parts/content.php