よく使うWordPressのテンプレートタグや条件分岐

よく使うWordPressのテンプレートタグや条件分岐

毎回毎回書き方を探すという無駄な手間や時間を省くためのメモ。

bodyにIDやclassを追加して、スタイルシートファイルを読ませる条件も追加。

bodyのコード

<body id="<?php echo $body_id; ?>" <?php body_class(); ?>>

bodyの上に追加するコード

<?php
//リセット
$body_id = ""; 
if ( is_home() || is_front_page() ) {
//homeかfrontpageのときは
$body_id = "top";
?>
<link href="<?php bloginfo('template_url') ?>/common/css/swiper.min.css" rel="stylesheet" media="all">
<link href="<?php bloginfo('template_url') ?>/common/css/top.css" rel="stylesheet" media="all">
<?php
//カスタム投稿newsreleasか、固定ページスラッグnewsか、カスタム投稿newsreleasの詳細ページのときは
} else if ( get_post_type() == "newsreleas" || is_page( 'news' ) || is_singular( 'newsreleas' ) ) {
$body_id = "news";
//記事の詳細ページのときは
if ( is_single() ) {
//bodyのclassにsingleを追加
$body_class = "single";
?>
<link href="<?php bloginfo('template_url') ?>/common/css/post-content.css" rel="stylesheet" media="all">
<?php } ?>
<link href="<?php bloginfo('template_url') ?>/common/css/news.css" rel="stylesheet" media="all">
<?php
//投稿か、固定ページスラッグblogのときは
} else if ( get_post_type() == "post" || is_page( 'blog' ) ) {
//bodyのIDのblogを追加
$body_id = "blog";
?>
<link href="<?php bloginfo('template_url') ?>/common/css/blog.css" rel="stylesheet" media="all">
//記事の詳細ページのときは
<?php if(is_single()){  ?>
<link href="<?php bloginfo('template_url') ?>/common/css/post-content.css" rel="stylesheet" media="all">
<?php
}
}
?>

条件分岐タグ

特定のページにだけ表示したい要素がある場合

if ( is_front_page() && is_home() ) {// home.phpで作成、または、管理画面の設定の表示設定で固定ページをトップページにした場合
//ここにトップページにだけ表示したい内容
} elseif ( is_page() ) {// 固定ページ
//ここに固定ページにだけ表示したい内容
} elseif ( is_single() ) {// 投稿
//ここに投稿にだけ表示したい内容
} else {// それ以外
//ここにそれ以外のページで表示したい内容
}

複数の条件を繋ぐ場合

  • ||  どちらかが真の場合に適用
  • && どちらも真の場合に適用
  • and どちらも真の場合に適用

テンプレートタグ

ブログのタイトル

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

ブログのURL

<?php echo home_url(); ?><?php bloginfo('url'); ?>

ディスクリプション

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

WordPressのアドレス(URL)

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

テーマのディレクトリ

<?php echo get_template_directory_uri();?>子テーマはget_stylesheet_directory_uri()<?php bloginfo('template_url') ?>

出力系

METAタイトルの出力

functions.phpに下記を追加。

//meta titleを追加
add_theme_support( 'title-tag' );
//meta titleの区切りを線にする
function title_sep( $sep ) {
return '|';
}
add_filter( 'document_title_separator', 'title_sep' );

ウェブページ側に表示されないときは、header.phpに<?php wp_head(); ?>の記述があるか確認。なければ追加。

リンクの出力

<?php the_permalink();?>

日付の出力

<?php the_time('Y/m/d');?>

例 2019/12/30

記事のタイトルの出力

<?php the_title();?>

テンプレートタグ – WordPress Codex 日本語版

http://wpdocs.osdn.jp/%E3%83%86%E3%83%B3%E3%83%97%E3%83%AC%E3%83%BC%E3%83%88%E3%82%BF%E3%82%B0

関連タグ

ブログ