はじめに
独自のショートコードを使用して、表1に示すブログの基本情報を自動表示します(表1参照)。
これにより、ブログの運営歴や投稿状況を簡単に伝えられます。
この記事では、この方法について説明します。
| 項目 | 内容 |
|---|---|
| 総投稿数 | 公開している投稿の総数 |
| ブログ開設日 |
|
| ブログ経過日数 | ブログ開設日から現在までの経過に数 |
完成イメージ
- 総投稿数:807
- ブログ開設日:2023-06-02
- ブログ経過日数:3年
使用方法
以下にショートコードを示します。
[my_blog_info]
実装手順
以下のコードをfunctions.phpに追加します。
add_shortcode('my_blog_info', function () {
// ユーザー登録日時を取得
$id = get_sns_default_follow_user();
$info = get_userdata($id);
$date = date(get_site_date_format(), strtotime($info->user_registered));
// 総投稿数を取得
$count = wp_count_posts()->publish;
// 経過日数を算出
$days = do_shortcode('[ago from="' . date('Y-m-d', strtotime($info->user_registered)) . '"]');
ob_start();
?>
<ul class="blog-info">
<li class="blog-info__item">総投稿数:<?= esc_html($count); ?></li>
<li class="blog-info__item">ブログ開設日:<?= esc_html($date); ?></li>
<li class="blog-info__item">ブログ経過日数:<?= esc_html($days); ?></li>
</ul>
<?php
return ob_get_clean();
});
解説
一般的には初投稿日をブログ開設日とみなしますが、投稿日を過去の日付に設定するケースもあります。
信頼性を確保するため、「WordPressユーザー登録日」としています。
参考:ブログ開設日を初投稿日とする方法
ブログ開設日を初投稿日とします。
実装手順
以下のコードをfunctions.phpに追加します。
add_shortcode('my_blog_info', function () {
// 総投稿数を取得
$count = wp_count_posts()->publish;
// 投稿がない場合
if (!$count) {
return '';
}
// 初投稿日を取得
$posts = get_posts([
'post_type' => 'post',
'posts_per_page' => 1,
'order' => 'ASC',
]);
$date = date(get_site_date_format(), strtotime($posts[0]->post_date));
// 経過日数を算出
$days = do_shortcode('[ago from="' . $posts[0]->post_date . '"]');
ob_start();
?>
<ul class="blog-info">
<li class="blog-info__item">総投稿数:<?= esc_html($count); ?></li>
<li class="blog-info__item">ブログ開設日:<?= esc_html($date); ?></li>
<li class="blog-info__item">ブログ経過日数:<?= esc_html($days); ?></li>
</ul>
<?php
return ob_get_clean();
});
さいごに
ブログ開設日や経過日数、総投稿数を表示することで、読者にブログの成長や運営状況を伝えやすくなります。
これらの情報は、ブログの信頼性を向上させるだけでなく、運営者自身にとっても励みになります。

