テーマ作成でよく使うPHPコードまとめ

wordpressでは各種ファイルや投稿記事(データベース)を呼び出す為のコードが用意されています。

検索するとすごい量のコードが出てきて初心者には何をどう使って良いのか分からない場合もありますが、とりあえず下に並べた物だけ覚えておけばオリジナルテーマの作成や配布テーマのカスタマイズも出来るようになるかと思います。

ワードプレスでシステム化されている物の呼び出し

<?php wp_header();?> //ワードプレスのシステムheader

<?php wp_footer();?> //ワードプレスのシステムfooter

<?php wp_nav_menu();?>//ワードプレスのナビゲーション(ダッシュボードから設定したもの)

<?php echo esc_url ( home_url());?> //このサイトのURL(ワードプレスのトップページURL)

<?php echo esc_url(get_template_directory_uri());?> //テーマフォルダまでのURL(画像やjsファイルなどを呼び出す際)
<?php echo esc_url ( get_styleseet_directory_uri() ); ?> //テーマフォルダまでのURL(CSSを呼び出す際)
//返り値はどちらも同じ "http://ドメイン名/wp-content/themes/テーマ名/"になる

wp_headerとwp_footerが無いとプラグインが作動しない可能性がありますので注意。

テーマ内のファイルを呼び出し

<?php get_header();?> //テーマ内のheader

<?php get_footer();?> //テーマ内のfooter

<?php get_sidebar();?> //テーマ内のsidebar.php

<?php comments_template();?> //テーマ内のcomments.php

<?php get_template_part();?> //テーマ内のテンプレートパーツを呼び出し

サイト(ページ)情報の呼び出し

<?php bloginfo('name');?> //サイト名※1

<?php bloginfo('description');?> //サイトのキャッチフレーズ※2

<?php the_title();?> //現在のページのタイトル※3

<?php the_ID();?> //現在のページID※3

<?php the_permalink();?> //現在のページURL※3

<?php the_time('Y-m-d');?> //投稿日(日本語表記の場合は<?php the_time('Y年n月j日');?>

<?php previous_post_link('%link', '前の記事へ');?> //ひとつ前の記事へのリンク

<?php next_post_link('%link','次の記事へ');?> //ひとつ後の記事へのリンク

※1と※2は設定 > 一般 > にあるサイト名とキャッチフレーズ

※3はwhile内で使った場合はその記事に対応した値が返る

記事コンテンツの呼び出し

全文コピペで一般的に必要な物が全て取得表示できます

<?php query_posts('showposts=5'); //最新の記事を5件まで表示ワードプレスのクエリを無視したオリジナルクエリの設定
	<?php if(have_posts()):?> //記事があるかどうかの分岐の開始タグ記事がある前提の場合はそもそも分岐が無いので不要
	//▼記事がある場合はこちらを返す▼
		<?php while(have_posts()): the_post();?> //記事の表示定形を作り該当するコンテンツを取得、更にループ表示させる
			<article id="<?php the_ID();?>" <?php post_class();?>> //記事ごとのIDとclassを取得
				<div class="entry-content">
					<header class="entry-header">
						<h2 class="entry-title"><a href="<?php the_permalink();?>"><?php the_title();?></a></h2> //記事へのリンクとタイトルを取得表示
					</header>
					<div class="entry-body">
						<?php if(has_post_thumbnail()):?> //サムネイルが設定されている場合は表示
						<div class="thumbnail">
							<figure><a href="<?php the_permalink();?>"><?php the_post_thumbnail();?></a></figure> //ページへのリンクとサムネイルの呼び出し
						</div>
						<?php endif;?> //サムネイルの表示終了タグ
						<div class="postcont archives">
							<?php the_content('続きを読む');?> //<!--more-->までの記事の内容を呼び出し
						</div>
					</div>
				</div>
				<footer class="entry-footer">
					<p class="date">
						投稿者:<?php the_author();?> //投稿者名を取得表示
						<time datetime="<?php the_time('Y-m-d')" class="entry-date updated">投稿日:<?php the_time('Y年n月j日');?></time> //投稿日の取得表示
						<?php
							$cat=get_the_category(); //帰属するカテゴリーの取得
							$catid=$cat[0] -> category_nicename; //カテゴリーのスラッグを取得
							$catName=$cat[0] -> name; //カテゴリーの名前を取得
						?>
						<a href="<?php echo esc_url(home_url('/'))?><?php echo $catid;?>"><?php echo $catName;?></a> //カテゴリー名を表示しリンクを付ける
					</p>
				</footer>
			</article>
		<?php endwhile();?> //ループ表示の終了タグ
	//▲記事がある場合はこちらを返す▲
	<?php else:?> //記事があるかどうかの分岐 上がtrueで下がfalse
	//▼記事が無い場合はこちらを返す▼
		<p>まだ記事が投稿されていません</p>
	//▲記事が無い場合はこちらを返す▲
	<?php endif;?> //記事があるかどうかの分岐の閉じタグ
<?php wp_reset_query();?> //オリジナルクエリの閉じタグ

サムネイルの設定方法についてはサムネイル画像の呼び出し方を参照

プラグインのショートコードをテンプレートで呼び出す

<?php echo do_shortcode('[ショートコードの文字列]'); ?>

この記事が気に入ったら
いいね ! お願いします(><;)

投稿者:和禅雅

この記事へのコメント