WordPressWordPress2025-09-21

WordPress 関数チートシート

WordPressでよく使う関数を目的別にまとめたチートシートです。

投稿・ページ情報を取得

目的関数概要
投稿タイトルを取得
get_the_title()
投稿のタイトル文字列を取得します。
投稿本文を取得
get_the_content()
投稿本文を取得(フィルタ適用なし)。
抜粋を取得
get_the_excerpt()
投稿の抜粋(概要)を取得。
投稿URLを取得
get_permalink()
投稿のパーマリンクURLを取得。
投稿IDを取得
get_the_ID()
ループ内で現在の投稿IDを取得。
投稿タイプを取得
get_post_type()
投稿の投稿タイプ(post, page など)を取得。
投稿日付を取得
get_the_date()
投稿の公開日を取得。
投稿者名を取得
get_the_author()
投稿者の表示名を取得。

投稿データの出力(テンプレートタグ)

目的関数概要
タイトルを出力
the_title()
投稿タイトルを直接出力。
本文を出力
the_content()
投稿本文を直接出力(フィルタ適用)。
抜粋を出力
the_excerpt()
抜粋を直接出力。
パーマリンクを出力
the_permalink()
投稿URLを直接出力。
投稿日付を出力
the_date()
投稿の公開日を出力。
投稿者名を出力
the_author()
投稿者の表示名を出力。

カスタムフィールド(メタデータ)

目的関数概要
メタデータ取得
get_post_meta( $post_id, $key, $single )
指定キーのカスタムフィールドを取得。
メタデータ更新
update_post_meta( $post_id, $key, $value )
カスタムフィールドを更新。
メタデータ追加
add_post_meta( $post_id, $key, $value )
カスタムフィールドを追加。
メタデータ削除
delete_post_meta( $post_id, $key )
カスタムフィールドを削除。
// 使用例 $custom_value = get_post_meta(get_the_ID(), 'custom_field_name', true); update_post_meta(123, 'price', '1000');

カテゴリー・タグ関連

目的関数概要
カテゴリー取得
get_the_category()
投稿のカテゴリー情報を取得(配列)。
タグ取得
get_the_tags()
投稿のタグ情報を取得(配列)。
カテゴリーリンク取得
get_category_link( $cat_id )
カテゴリーのURLを取得。
タグリンク取得
get_tag_link( $tag_id )
タグのURLを取得。
カテゴリー名取得
get_cat_name( $cat_id )
カテゴリーIDから名前を取得。
タクソノミー項目取得
get_the_terms( $post_id, $taxonomy )
カスタムタクソノミーの項目を取得。

メディア関連

目的関数概要
アイキャッチURL取得
get_the_post_thumbnail_url( $post_id, $size )
アイキャッチ画像のURLを取得。
アイキャッチ出力
the_post_thumbnail( $size )
アイキャッチ画像を出力。
添付ファイルURL取得
wp_get_attachment_url( $attachment_id )
添付ファイルのURLを取得。
添付画像取得
wp_get_attachment_image( $attachment_id, $size )
添付画像のHTMLを取得。
画像サイズ追加
add_image_size( $name, $width, $height, $crop )
カスタム画像サイズを追加。
// 使用例 if (has_post_thumbnail()) { echo get_the_post_thumbnail_url(get_the_ID(), 'large'); }

ユーザー関連

目的関数概要
現在のユーザー取得
wp_get_current_user()
現在ログイン中のユーザー情報を取得。
ユーザーデータ取得
get_userdata( $user_id )
ユーザーIDから情報を取得。
ユーザーメタ取得
get_user_meta( $user_id, $key, $single )
ユーザーメタを取得。
ユーザーID取得
get_current_user_id()
現在のユーザーIDを取得。
ログイン状態確認
is_user_logged_in()
ユーザーがログイン中か判定。
権限確認
current_user_can( $capability )
現在のユーザーが指定した権限を持つか確認。

URL・サイト情報

目的関数概要
サイトURL取得
site_url()
サイトURL(WordPressインストール先)を取得。
ホームURL取得
home_url()
ホームページURLを取得。
テンプレートURL取得
get_template_directory_uri()
親テーマのディレクトリURLを取得。
子テーマURL取得
get_stylesheet_directory_uri()
子テーマのディレクトリURLを取得。
サイト名取得
get_bloginfo( 'name' )
サイトのタイトルを取得。
サイト説明取得
get_bloginfo( 'description' )
サイトのキャッチフレーズを取得。

条件分岐タグ

目的関数概要
フロントページ判定
is_front_page()
フロントページかどうか判定。
ホームページ判定
is_home()
ブログのホームページかどうか判定。
固定ページ判定
is_page()
固定ページかどうか判定。
投稿ページ判定
is_single()
個別投稿ページかどうか判定。
アーカイブページ判定
is_archive()
アーカイブページかどうか判定。
カテゴリーページ判定
is_category()
カテゴリーアーカイブページかどうか判定。
検索結果ページ判定
is_search()
検索結果ページかどうか判定。
404ページ判定
is_404()
404エラーページかどうか判定。
// 使用例 if (is_front_page()) { // フロントページの処理 } elseif (is_single()) { // 個別投稿の処理 }

ナビゲーション

目的関数概要
メニュー出力
wp_nav_menu( $args )
管理画面で設定したメニューを出力。
メニュー位置登録
register_nav_menus( $locations )
メニュー位置を登録。
パンくずリスト用
get_ancestors( $object_id, $object_type )
親階層を取得(パンくずリスト作成用)。
// 使用例 wp_nav_menu(array( 'theme_location' => 'primary', 'menu_class' => 'main-menu', 'container' => 'nav' ));

データベース関連

目的関数概要
投稿一覧取得
get_posts( $args )
条件に合った投稿一覧を取得。
カスタムクエリ
new WP_Query( $args )
複雑な条件で投稿を取得。
オプション取得
get_option( $option )
WordPressのオプション値を取得。
オプション更新
update_option( $option, $value )
オプション値を更新。

セキュリティ関連

目的関数概要
HTMLエスケープ
esc_html( $text )
HTMLの特殊文字をエスケープ。
属性エスケープ
esc_attr( $text )
HTML属性値をエスケープ。
URLエスケープ
esc_url( $url )
URLをエスケープ。
テキストサニタイズ
sanitize_text_field( $str )
テキストフィールドをサニタイズ。
nonce生成
wp_nonce_field( $action )
フォーム用のnonceフィールドを生成。
nonce検証
wp_verify_nonce( $nonce, $action )
nonceの妥当性を検証。
// 使用例 $safe_text = esc_html($user_input); $safe_url = esc_url($url);

フック関連

目的関数概要
アクション追加
add_action( $hook, $callback )
指定したタイミングで関数を実行。
フィルター追加
add_filter( $hook, $callback )
データを変更するフィルターを追加。
アクション削除
remove_action( $hook, $callback )
登録されたアクションを削除。
フィルター削除
remove_filter( $hook, $callback )
登録されたフィルターを削除。

その他便利な関数

目的関数概要
WordPressバージョン取得
get_bloginfo( 'version' )
現在のWordPressバージョンを取得。
翻訳文字列取得
__( $text, $domain )
翻訳可能な文字列を取得。
翻訳文字列出力
_e( $text, $domain )
翻訳可能な文字列を出力。
リダイレクト
wp_redirect( $location )
指定したURLにリダイレクト。
現在時刻取得
current_time( $type )
WordPressの設定に基づく現在時刻を取得。
テンプレート読み込み
get_template_part( $slug, $name )
テンプレートファイルを読み込み。

実際の使用例

基本的な投稿ループ

if (have_posts()) { while (have_posts()) { the_post(); echo '<h2>' . get_the_title() . '</h2>'; echo '<p>' . get_the_excerpt() . '</p>'; echo '<a href="' . get_permalink() . '">続きを読む</a>'; } }

カスタムフィールドの取得

$price = get_post_meta(get_the_ID(), 'price', true); if ($price) { echo '価格: ' . esc_html($price) . '円'; }

条件分岐の活用

if (is_single()) { // 個別投稿ページの処理 the_content(); } elseif (is_archive()) { // アーカイブページの処理 the_excerpt(); }