令和元年10月28日

wordpressの基本的な出力コードの一覧

wordpressの独自コード(wp何とかとか…のやつ)って量が多くて覚えるのが大変。だから毎回検索してコピーペーストしてる…。

こんにちわアオイです。
今回はwordpressのオリジナルのコードを一覧にまとめました。
上記のようにいちいち検索して探す手間を省く為に、たくさんのコードをご紹介します。

毎回探すのって結構大変だからね

ファイルの呼出し等で使うコード

get_header();

header.phpの内容を出力。
名前(name)を指定すると、指定したヘッダーのコード
(例:header-{name}.php)を呼び出すことができる

get_footer()

footer.phpの内容を出力。
名前(name)を指定すると、指定したフッターのコード
(例:footer-{name}.php)を呼び出すことができる

get_sidebar()

sidebar.phpの内容を出力。
名前(name)を指定すると、指定したフッターのコード
(例: sidebar-{name}.php)を呼び出すことができる

<?php get_template_part('name') ?>

任意のテンプレートファイル (例: {name}.php)を呼び出すことができる関数

<?php bloginfo('template_directory'); ?>

テーマのディレクトリ階層(wp-content/themes/{folder}/)を取得できます。
主にcssやjsを呼び出す時に使用

bloginfo( $show )

サイトの基本情報を表示させる関数です。
出力される内容、プロフィールや一般設定などのWordpressの管理画面で入力された内容です。

WordPressで投稿された記事の表示

if ( have_posts() ) while ( have_posts() ) : the_post();
    //記事がある場合はこの中のコードを表示
endwhile;
else:
    echo '記事が見つかりませんでした。';
endif;
投稿記事を出力する基本的な条件判定とループ処理です

get_postsのパラメータ一覧

$args = array(
    'year' => 2011,
    //公開年を取得して表示
    'monthnum' => 2011,
    //公開月を取得して表示
    'day' => 5,
    //公開日を取得して表示
    'numberposts' => 5,
    //取得する投稿の数
    'offset' => 0,
    //先頭から何件の投稿を除外するか
    'category' => ,
    //指定したカテゴリID の投稿のみを返す。除外したい時は-を付ける
    'orderby' => 'post_date',
    //様々な値で並べ替える
    'order' => 'DESC',
    //$orderby でのソート方式。'ASC' - 昇順(低から高)。'DESC' - 降順(高から低)。
    'include' => ,
    //表示したい投稿のID
    'exclude' => ,
    //表示したくない投稿のID
    'meta_key' => ,
    'meta_value' => ,
    //カスタムフィールドのキーと値を持つ投稿のみ表示。両方のパラメータ指定が必要
    'post_type' => 'post',
    //表示する投稿のタイプ。post、page、any(全て)等
    'post_parent' => ,
    //このIDの投稿の子のみを表示
    'post_status' => 'publish'
    //指定したステータスの投稿を表示
);

投稿記事の内容を出力するコード一覧

//タイトル
the_title();

//本文
the_content();

//抜粋
the_excerpt();

//タグ
the_tags();

//カテゴリ
the_category();

//サムネイル画像(アイキャッチ)
the_post_thumbnail();

//ファイル名(スラッグ/slug)
echo $post->post_name;

//公開日付
the_date();

//リンク先
the_permalink();

アイキャッチを表示する。

//アイキャッチ画像を使用する
add_theme_support('post-thumbnails');

//サムネイルのサイズ
the_post_thumbnail('thumbnail');

//中サイズ
the_post_thumbnail('medium');

//大サイズ
the_post_thumbnail('large');

//元の画像サイズ
the_post_thumbnail('full');

//サイズを指定してリサイズ(縦:100px 横100px)
set_post_thumbnail_size(100, 100);

アイキャッチ画像が無い場合にサンプル画像を表示させる

<?php if ( has_post_thumbnail() ): // サムネイルを持っているときの処理 ?>
<?php

the_post_thumbnail(array( 599,599 ),
array( 'alt' =>$title, 'title' => $title)); ?>
<?php else: // サムネイルを持っていないときの処理 ?>

<?php endif; ?>

カテゴリーを表示する

リンクを付けずに親カテゴリ名を取得し表示する

$cats = get_the_category();
$cat  = $cats[0];
if($cat->parent) {
    $parent = get_category($cat->parent);
    echo $parent->cat_name;
}
else {
    echo $cat->cat_name;
}

特定カテゴリーの子カテゴリー一覧を作る

<ul>
<?php wp_list_cats('child_of=4'); ?>
</ul>

ID4の親カテゴリー内の子カテゴリーをリスト表示する場合のサンプルです。

記事の日付を表示する

<? the_date() ;?>

管理画面で設定している日時の書式に沿った日付が表示されます。
しかし、dataではもし同じ日付の記事があった場合は片方しか表示されないという仕様があります。
なので、その場合下記の関数を使用します

日付だけの場合

<?php the_time('Y-n-j'); ?>
<?php the_time('Y年n月j日'); ?>

時間も入れたい場合

<?php the_time('Y-n-j H:i'); ?>
<?php the_time('Y年n月j日 H時i分'); ?>

曜日も表示したい場合

<?php the_date('m月d日(D)'); ?>

パスワードを設定し保護領域を作る

<?php
if ( post_password_required( $post ) ) {
    echo '<div class="password">'.get_the_password_form().'</div>';
}
?>

wordpressのパスワード保護はデフォルトの機能に対してのみ有効化されています。
なので、カスタムフィールドを使用している場合は上記のようなコードを書き込んで保護する必要があります。

固定ページの中身を出力

if(have_posts()): while(have_posts()): the_post();
    the_content();
endwhile;
endif;

検索フォームを設置

<form role="search" method="get" id="searchform" class="searchform" action="<?php echo esc_url( home_url( '/' ) ); ?>">
    <div>
    <label class="screen-reader-text" for="s">
        <?php _x( 'Search for:', 'label' ); ?>
    </label>
    <input type="text" value="<?php echo get_search_query(); ?>" name="s" id="s" placeholder="検索" />
    <input type="submit" id="searchsubmit" value="<?php echo esc_attr_x( 'Search', 'submit button' ); ?>" />
    </div>
</form>

ウィジェットの登録と表示

register_sidebar(array(
    'name'          => 'サイドバーウィジット-1',
    'id'            => 'sidebar-1',
    'description'   => 'サイドバーのウィジットエリアです。',
    'before_widget' => '<div id="%1$s" class="widget %2$s">',
    'after_widget'  => '</div&gt',
));
ウィジェットの登録コード。functions.phpに記載することで新しいウィジェットを使用できます。
<?php dynamic_sidebar('ウィジェットのID'); ?>
IDを指定してウィジェットを出力
随時追加予定です
最後まで読んでいただきありがとうございます。
今回の記事が気に入ったら、是非下記ボタンよりシェアをよろしくお願いします。