ホームページ制作の札幌真夜中WEBのトップページです 全国からご依頼承ります。

よく使うワードプレスのphp関数スニペット。随時追加

よく使うワードプレスのphp関数スニペット。随時追加

しょっちゅう使うわけではないけれど、ワードプレスを使うサイトが多くなってきたことに伴い使う頻度は増えてきたワードプレスの関数をその都度調べて記述するのもめんどくさくなってきたのでまとめてみました。

● まずは、htmlファイルでphpを読み込むときに必要な.htaccessへの記述

AddType application/x-httpd-php .php .html
AddHandler application/x-httpd-php .php .html

※エックスサーバーの場合には上記記述ではなく、以下のいずれかが必要
※phpのバージョンは使用環境に合わせる

AddHandler fcgid-script .html
AddHandler x-httpd-php7.2 .php .phps .html

● htmlファイルでphpを読み込むときは.htaccessへの記述とともにphpを読み込みたいhtmlごとに以下の記述が必要
※htmlファイルの1行目に記述する
※相対指定なので、環境に合わせてwp-load.phpを指定する

<?php require('./blog/wp-load.php'); ?>

● 投稿の項目表示一覧

<!-- タイトル -->
<?php the_title();?> 

<!-- 本文 -->
<?php the_content();?> 

<!-- 抜粋 -->
<?php the_excerpt();?> 

<!-- タグ -->
<?php the_tags();?> 

<!-- カテゴリ -->
<?php the_category();?> 

<!-- サムネイル画像(アイキャッチ) -->
<?php the_post_thumbnail();?> 

<!-- ファイル名(スラッグ) -->
<?php echo $post->post_name;?> 

<!-- 公開日付 -->
<?php the_date();?> 

<!-- サムネイル画像(アイキャッチ)のURL -->
<?php if ( has_post_thumbnail() ) {
$image_id = get_post_thumbnail_id ();
$image_url = wp_get_attachment_image_src ($image_id, true);
echo $image_url[0];
} else {
echo get_bloginfo( 'template_directory' ) . '/images/thumbnail.png';
} ?>

<!-- 最新の投稿5件を表示 -->
<ul>
<?php
$args = array(
'posts_per_page' => 5 // 表示件数の指定
);
$posts = get_posts( $args );
foreach ( $posts as $post ): // ループの開始
setup_postdata( $post ); // 記事データの取得
?>
<li>
<a href="<?php the_permalink(); ?>"><?php the_title(); ?></a>
</li>
<?php
endforeach; // ループの終了
wp_reset_postdata(); // 直前のクエリを復元する
?>
</ul>

●特定投稿の項目表示一覧

<!-- サムネイル画像(アイキャッチ) -->
<?php echo get_the_post_thumbnail(記事ID ); ?> 

<!-- タイトル -->
<?php get_the_title( 記事ID ); ?> 

<!-- URL -->
<?php get_permalink( 記事ID ); ?> 

<!-- 本文 -->
<?php echo get_post( 記事ID )->post_content; ?> 

<!-- 本文(改行あり) -->
<?php $post_id = 記事ID;
$post = get_post($post_id);
echo apply_filters('the_content',$post->post_content); ?> 

<!-- サムネイル画像(アイキャッチ)のURL -->
<?php echo wp_get_attachment_url(get_post_thumbnail_id(記事ID)); ?> 

● 基本的なループ

<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<!-- 内容  -->
<div><?php the_content(); ?></div>
<?php endwhile; else: ?>
<!-- 投稿なし  -->
<p><?php _e('Sorry, no posts matched your criteria.'); ?></p>
<?php endif; ?>

● 特定のカテゴリを特定件数表示

<?php
$posts = get_posts(array(
'posts_per_page' => 2, // 表示件数
'category' => '1' // カテゴリID/スラッグ名
));
?>
<?php if($posts): foreach($posts as $post): setup_postdata($post); ?>
<!--表示する内容が入ります。-->
<hn><a href="<?php the_permalink() ?>"><?php the_title(); ?></a></hn>
<p><?php the_time('Y/m/d') ?></p>
<p><?php the_excerpt(); ?></p>
<p><a href="<?php the_permalink() ?>">続きを見る</a></p>
<!--表示する内容ここまで-->
<?php endforeach; endif; ?>

● ページング

<!--アーカイブページの場合-->
<ul id="pagenavi">
<li class="prev"><?php previous_posts_link('%link','前のページへ'); ?></li>
<li class="next"><?php next_posts_link('%link','次のページへ'); ?></li>
</ul>

<!--シングルページの場合-->
<ul id="pagenavi">
<li class="prev"><?php previous_post_link('%link','前の記事へ'); ?></li>
<li class="next"><?php next_post_link('%link','次の記事へ'); ?></li>
</ul>

● サイドバーとかで

<!--カレンダー-->
<?php get_calendar(); ?> 

<!--アーカイブ特定件数-->			
<ul>
<?php wp_get_archives( 'type=postbypost&limit=5' ); ?>
</ul> 

<!--カテゴリー一覧-->
<ul>
<?php wp_list_categories( 'title_li=' ); ?>
</ul>

wordpressカテゴリの最新記事