PHP(WordPress)

特徴

  • HTMLがPHPファイル内で書ける
  • <?php 処理 ?>これだけでコードが走る
  • 終わりの ?> の部分は省略できる
  • エントリーポイントがわかりにくい(PHPを扱う環境によって調べ方があるようだ。)

変数

  • 頭に【$】をつける。
  • 変数の型は推論型で型指定不要。
  • 予約語が使えるが非推奨。
  • floatはdoubleで返される。正確な型を知るには【var_dump(変数)】を使用する。
  • ブール型は true で 1 だが false は何も入らない。
  • 文字、文字列を扱う時はシングルコーテーションを使う。HTMLは普通にダブルコーテーション。

コメントアウト

C言語と同じ。
// 一行
/**/ 範囲

配列

演算子

演算子はC言語とほぼ同じ。
イコール3つ === は厳密等価演算子と呼ばれ、値と型の両方が一致しているかを比較する

if文の書き方

繰り返し処理

foreachはC言語とかと変数の配置が逆かつ as を表記

関数の書き方

クラス

変数や関数にアクセスするには -> を使う、その時変数の$が取れる。
public protected private 使用可能。

連想配列の書き方

通常の配列の宣言に => を使うと左がキー、右が値の連想配列ができる。

コロン構文

{}を使わない書き方 : と end~ に置き換える書き方。
これを使うと処理をまとめて書ける。

使いそうな関数(getが付く物はHTML内で使う時はechoを頭につける)

  • echo
    • 値を出力できる
  • var_dump
    • echoでは出力されない詳細なデータを出力できる
    • 型 + 値で出力される
  • get_theme_file_url(‘テーマディレクトリからのパス’)
    • テーマディレクトリまでのパスを取得する。
    • HTMLで使うならechoを頭につけて使う。(取得するだけでhtmlのhref=””等の中に文字列として表示されないから)
    • テーマ以下のファイルを読み込むときに便利
  • home_url(‘必要なファイルのパス’)
    • WordPressのトップのURLまでのパスを取得する。
    • HTMLで使うならechoを頭につけて使う。(取得するだけでhtmlのhref=””等の中に文字列として表示されないから)
  • get_header() & get_footer
    • header.php footer.php をインクルード出来る
      • header.phpの<head></head>内に<?php wp_head(); ?>必須
      • footer.phpの</body>の直上に<php? wp_footer(); ?>必須
      • header.phpの<body>の直下に<?php wp_body_open(); ?>必須
  • have_posts()
    • 投稿(記事)存在判定
  • the_posts()
    • 投稿リストから最新の投稿を取り出して取り出した投稿を消す
    • 恐らくオブジェクトで取得して一件ずつ吐き出す感じ
    • これの下で投稿の何を表示するかとかの処理をするのが一般的
  • the_title()
    • タイトルの取得、表示
  • the_date()
    • 日付の取得、表示
    • 引数で表示形式を変えれる(‘Y.m.d’で2025.9.10)
    • 同じ日付がある場合2回目以降は出力しない
    • 常に出力する場合はget_the_dateにする
      • HTMLで表示させるにはechoを頭につける
  • the_content()
    • 記事の内容を取得、表示
  • the_permalink()
    • URLの取得、表示
  • get_sideber()
    • サイドバーの取得
  • is_admin()
    • 現在のリクエストが管理画面ページであるかどうか
    • 現在のユーザーが管理者権限を持つかどうかを判定するものではなく、管理画面が表示されている状態かどうかを確認する目的で使用される
  • is_main_query()
    • メインクエリかどうか
    • クラスのメソッド
  • is_front_page()
    • front.php存在確認
    • frontはサイト全体のトップページを自由にカスタマイズするためのテンプレート(最優先にロードされる)
  • is_home()
    • home.php存在確認
    • homeはブログの投稿一覧ページ(投稿インデックス)をカスタマイズするためのテンプレート(最新の投稿一覧)
  • is_single()
    • 投稿記事存在確認
  • is_singulare()
    • 引数に投稿タイプを入れてそれの存在確認をする
    • カスタム投稿タイプを使用しているときに使える
  • the_posts_pagination()
    • ページタブの表示
  • add_action()
    • アクションフック、第一引数にフックする関数(アクション)
    • 第二引数に追加する関数名(自分で作った関数)
  • add_filter()
    • フィルターフック、第一引数にフックする関数(アクション)
    • 第二引数に追加する関数名(自分で作った関数)
    • アクションとはフックする関数が呼ばれるタイミングと内容で使い分ける

サブクエリ(任意のページのデータをDBから取得する)

アクションフック

特定の関数に処理を追加、または変更することができる
例:メインクエリで取ってくる最新の投稿10件分を特定の投稿タイプの時だけ9件に変更する
※functions_php に書く

xmlを扱う

準備として
file_get_contents()でxmlファイルを読み込み、
simplexml_load_string()でオブジェクト化する。
simplexml_load_file(‘ファイルパス’)でもok、これなら一行。
出来たオブジェクトからアロー演算子でアクセスする。

xpathが使用可能

要素にアクセスする場合に xpath で指定することができ、直接アクセス可能。

ただし xml に名前空間(xmlns属性)がある場合、SimpleXMLElementxpathはそのままでは要素を見つけられません。
xmlns= “~~” がある場合は registerXPathNamespace(‘変数’, ‘~~’) を使用してからパスの前に : を使って記述する。

json変換

コメント

タイトルとURLをコピーしました