<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sossyの助太刀ブログ</title>
	<atom:link href="https://sossy-blog.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://sossy-blog.com</link>
	<description>「WordPress / プログラミング」の痒い所に手が届く！</description>
	<lastBuildDate>Tue, 27 May 2025 01:31:51 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://sossy-blog.com/wp-content/uploads/2021/11/cropped-blog_logo-32x32.webp</url>
	<title>Sossyの助太刀ブログ</title>
	<link>https://sossy-blog.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>【WordPress】Invisible reCaptchaで__wakeup()のWarningエラーが発生？解消方法について解説！</title>
		<link>https://sossy-blog.com/plugin/13978/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Mon, 26 May 2025 16:10:07 +0000</pubDate>
				<category><![CDATA[プラグイン]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13978</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2025年05月27日に投稿されました。) WordPressサイトを運営されている皆さん、お問い合わせフォームやコメント欄のスパム対策、しっかり行っていますか？ 多くのサイトで利用されている便利なスパム対策 ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2025年05月27日に投稿されました。)</p>
<p class="blog-h2text">
WordPressサイトを運営されている皆さん、お問い合わせフォームやコメント欄のスパム対策、しっかり行っていますか？
</p>
<p class="blog-text">
多くのサイトで利用されている便利なスパム対策ツールの一つに「Invisible reCaptcha」があります。
</p>
<p class="blog-text">
しかし、この「Invisible reCaptcha」を導入した際に、「Warning: __wakeup()XXXXXX」といったエラーメッセージに遭遇し、頭を抱えている方もいらっしゃるのではないでしょうか。
</p>
<p class="blog-text">
このエラーは、サイトの表示には直接的な影響がないように見えても、放置しておくとセキュリティ上の不安が残ったり、将来的に予期せぬ不具合を引き起こす可能性も否定できません。
</p>
<p class="blog-text">
何より、トップページでエラーが表示されるのは、気持ちの良いものではありませんよね。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressのgInvisible reCaptchaで__wakeup()のWarningエラーが発生した際の解消方法</span></span>について紹介していきます。
</p>
<p class="blog-text">
エラーに悩まされている方はもちろん、これから「Invisible reCaptcha」の導入を検討している方も、安心して運用できるサイト構築のために、ぜひ最後までお読みください。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img fetchpriority="high" decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
WordPressのInvisible reCaptchaを導入したい場合
</p>
<p class= "hh30">
Invisible reCaptchaを有効化した際に発生するWarningエラーを消したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">Invisible reCaptchaとは</h2>
<p class="blog-h2text">
Invisible reCaptchaは、Googleが提供するスパム対策ツールの一種で、ユーザーにチェックボックスや画像認証を表示せず、バックグラウンドで自動的に人間かボットかを判別する仕組みを導入することができるプラグインになります。
</p>
<p class="blog-text">
WordPressのサイトを登録して「サイトキー」と「シークレットキー」を取得し、プラグインに追記することで、簡単にreCaptchaを導入することができます。
</p>
<h2 id="rtoc-2"  class="hh hh28">Invisible reCaptchaで発生した__wakeup()のWarningエラーの内容</h2>
<p class="blog-h2text">
Invisible reCaptchaで発生した__wakeup()のWarningエラーの内容ですが、下記の内容になります。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">Warningエラー画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-before.webp" alt="WordPressで発生したinvisible-recaptchaのWarningエラー_修正前" width="1000" height="590" class="alignnone size-full wp-image-14011" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-before.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-before-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-before-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-before-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">Waringエラー</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p>Warning: The magic method InvisibleReCaptcha\MchLib\Plugin\MchBasePublicPlugin::__wakeup() must have public visibility in /example.com/wp-content/plugins/invisible-recaptcha/includes/plugin/MchBasePublicPlugin.php on line 37
</p></div>
<p class="blog-text">
Warningエラーとしましては、「__wakeup() メソッドはpublicで可視化すべき」という内容になります。
</p>
<p class="blog-text">
色々調べてみたのですが、<span class= "keiko_red">PHP7.4より前のバージョンだと、__wakeup()メソッドはprivateで宣言することが許容されていましたが、PHP7.4以降では、__wakeup()メソッドは必ずpublicで宣言しなければならない</span>と変更になったようです。
</p>
<p class="blog-text" style= "color: lightgray;">出典: <a href='https://www.php.net/manual/ja/language.oop5.magic.php#object.wakeup'>PHP: マジックメソッド &#8211; Manual</a></p>
<p class="blog-text">
おそらく、プラグインの更新が止まっているため、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">最新のPHPとの互換性があってない</span></span>のが原因でした。
</p>
<h2 id="rtoc-3"  class="hh hh28">Invisible reCaptchaの__wakeup()のWarningエラーを解消するには</h2>
<p class="blog-h2text">
Invisible reCaptchaの__wakeup()のWarningエラーを解消するには、プラグインのソースコードを直接修正する必要があります。
</p>
<p class="blog-text">
修正するは箇所は「invisible-recaptcha/includes/plugin/」にある「MchBasePublicPlugin.php」になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● MchBasePublicPlugin.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php
/**
 * Copyright (c) 2016 Ultra Community (http://www.ultracommunity.com)
 */

namespace InvisibleReCaptcha\MchLib\Plugin;

abstract class MchBasePublicPlugin extends MchBasePlugin
{

	public abstract function enqueuePublicScriptsAndStyles();
	public abstract function registerAfterSetupThemeHooks();

	protected function __construct()
	{
		parent::__construct();

		add_action('wp_enqueue_scripts', array( $this, 'enqueuePublicScriptsAndStyles' ));
		add_action('after_setup_theme', array( $this, 'registerAfterSetupThemeHooks' ));

	}

	public function initializePlugin()
	{
		parent::initializePlugin();
		//$this-&gt;enqueuePublicScriptsAndStyles();
	}

	public static function registerShortCode($tagName, $callBackHandler)
	{
		add_shortcode($tagName, $callBackHandler );
	}

	private function __clone()
	{}

	private function __wakeup()
	{}

}</pre>
<p class="blog-text">
上記ソースコードのの37行目にある「private」を「public」に変更します。
</p>
<p class="blog-text" style= "font-weight: bold;">● MchBasePublicPlugin.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php
/**
 * Copyright (c) 2016 Ultra Community (http://www.ultracommunity.com)
 */

namespace InvisibleReCaptcha\MchLib\Plugin;

abstract class MchBasePublicPlugin extends MchBasePlugin
{

	public abstract function enqueuePublicScriptsAndStyles();
	public abstract function registerAfterSetupThemeHooks();

	protected function __construct()
	{
		parent::__construct();

		add_action('wp_enqueue_scripts', array( $this, 'enqueuePublicScriptsAndStyles' ));
		add_action('after_setup_theme', array( $this, 'registerAfterSetupThemeHooks' ));

	}

	public function initializePlugin()
	{
		parent::initializePlugin();
		//$this-&gt;enqueuePublicScriptsAndStyles();
	}

	public static function registerShortCode($tagName, $callBackHandler)
	{
		add_shortcode($tagName, $callBackHandler );
	}

	private function __clone()
	{}

	public function __wakeup()
	{}

}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">Warningエラー画面:修正後</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-after.webp" alt="WordPressで発生したinvisible-recaptchaのWarningエラー_修正後" width="1000" height="580" class="alignnone size-full wp-image-14012" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-after.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-after-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-after-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-recaptcha-warning-after-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
表示されたWarningエラーが表示されなくなりました。
</p>
<p class="blog-text">
また、定期的にページをロードしても、定期的に読み込むとWarningエラーが表示されません。
</p>
<h2 id="rtoc-4"  class="hh hh28">Invisible reCaptchaの__wakeup()のWarningエラーを解消するための方法</h2>
<p class="blog-h2text">
上記の修正を行うための方法としては下記の2つがあります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>FTPを使用する</li>
<li>プラグインファイルエディタを使用する</li>
</div>
</div>
<p class="blog-text">
それぞれの方法について解説しています。
</p>
<h3 id="rtoc-5"  class="blog-h3head">FTPを使用する</h3>
<p class="blog-text">
まず、1つ目はFTPを使用することです。
</p>
<p class="blog-text">
FTPとはFile Transfer Protocol(ファイル・トランスファー・プロトコル)といい、コンピュータネットワーク上のクライアントとサーバの間でファイル転送を行うための通信プロトコルの一つになります。
</p>
<p class="blog-text">
そのため、自分のPC内からレンタルしたサーバーの中へファイルを送ったり、とってきたりすることができます。
</p>
<p class="blog-text">
FTPではテーマファイルだけでなく、インストールしたプラグイファイルも入っているため、Invisible reCaptchaの自分のファイルを自分のPCにとってきて編集し、編集したファイルをサーバーに送ることで、修正することが可能になります。
</p>
<p class="blog-text">
ここでは、FTPの細かい設定の説明はここでは省き、接続できた前提で説明します。
</p>
<p class="blog-text">
FTPの接続が完了しましたら、自分のドメインのディレクトリまで移動し、「Plugin」ファイルの中にある「Invisible reCaptcha」をクリックします。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-1.webp" alt="FileZillaのFTP画面1" width="1000" height="590" class="alignnone size-full wp-image-14007" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
すると、Invisible reCaptchaのプラグインファイルが表示されますので、「invisible-recaptcha/includes/plugin/MchBasePublicPlugin.php」を右クリック → [ダウンロード]をクリックして自分のPCへダウンロードします。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-2.webp" alt="FileZillaのFTP画面2" width="1000" height="590" class="alignnone size-full wp-image-14008" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-2-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-2-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-2-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
自分のPCにてソースコードを修正した後に「MchBasePublicPlugin.php」を右クリック → [アップロード]をクリックして、サーバーへアップロードすると修正完了です。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-3.webp" alt="FileZillaのFTP画面3" width="1000" height="590" class="alignnone size-full wp-image-14009" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-3-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-3-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-invisible-rechapche-ftp-3-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<h3 id="rtoc-6"  class="blog-h3head">プラグインファイルエディタを使用する</h3>
<p class="blog-text">
2つ目はプラグインファイルエディタを使用することです。
</p>
<p class="blog-text">
WordPress上の[プラグインメニュー]にて[プラグインファイルエディタ]という項目があるため、そちらを選択します。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-1.webp" alt="WordPressのプラグインファイルエディタ画面1" width="1000" height="580" class="alignnone size-full wp-image-14003" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
プラグインファイルエディタの選択後、インストールしてあるプラグインのファイルが表示されるため、編集するプラグインを選択に「Invisible reCaptcha」を選択して[選択]をクリックします。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-2.webp" alt="WordPressのプラグインファイルエディタ画面2" width="1000" height="580" class="alignnone size-full wp-image-14004" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
すると、Invisible reCaptchaのプラグインファイルが表示されますので、「invisible-recaptcha/includes/plugin/MchBasePublicPlugin.php」をクリックすると、修正対象のソースコードが表示されます。
</p>
<p class="blog-text">
37行目のソースコード箇所を修正し、[ファイルを更新]をクリックすると完了です。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-3.webp" alt="WordPressのプラグインファイルエディタ画面3" width="1000" height="590" class="alignnone size-full wp-image-14005" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-3-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-3-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-plugin-editer-3-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<h2 id="rtoc-7"  class="hh hh28">今回のInvisible reCaptchaのWarningエラーがどうしても解消されない場合</h2>
<p class="blog-h2text">
上記の方法でも今回発生したWaringエラーが消えない場合は他のプラグインを使用することをおすすめします。
</p>
<p class="blog-text">
ここでは、Invisible reCaptchaの代わりとなるプラグインを下記の2つご紹介します。
</p>
<h3 id="rtoc-8"  class="blog-h3head">Advanced Google reCAPTCHA</h3>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-advanced-google-recaptcha.webp" alt="Advanced Google reCAPTCHAのスクリーンショット" width="1000" height="580" class="alignnone size-full wp-image-14016" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-advanced-google-recaptcha.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-advanced-google-recaptcha-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-advanced-google-recaptcha-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-advanced-google-recaptcha-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
Advanced Google reCAPTCHAとは、WordPressサイトにGoogle reCAPTCHA(リキャプチャ)を簡単に導入するためのプラグインとなります。
</p>
<p class="blog-text">
Google reCAPTCHAの管理コンソールにアクセスし、WordPressのサイトを登録して「サイトキー」と「シークレットキー」を取得することで、reCAPTCHAを設置することができます。
</p>
<p class="blog-text">
またv2とv3の両方を選べるため、WordPressサイトの基本的なセキュリティ強化に非常に有効なプラグインとなっています。
</p>
<h3 id="rtoc-9"  class="blog-h3head">reCaptcha by BestWebSoft</h3>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-recaptcha-by-bestwebsoft.webp" alt="reCaptcha by BestWebSoftのスクリーンショット" width="915" height="534" class="alignnone size-full wp-image-14015" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-recaptcha-by-bestwebsoft.webp 915w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-recaptcha-by-bestwebsoft-300x175.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-recaptcha-by-bestwebsoft-768x448.webp 768w" sizes="(max-width: 915px) 100vw, 915px" /></p>
<p class="blog-text">
reCaptcha by BestWebSoftとは、BestWebSoft社によって開発されたWordPressサイトをスパムやボットから保護するために、Google reCAPTCHAを導入するプラグインとなります。
</p>
<p class="blog-text">
同様にGoogle reCAPTCHAの管理コンソールにアクセスし、WordPressのサイトを登録して「サイトキー」と「シークレットキー」を取得することで、reCAPTCHAを設置することができます。
</p>
<p class="blog-text">
また「v2」と「v3」の両方を選べるため、こちらもWordPressサイトの基本的なセキュリティ強化に非常に有効なプラグインとなっています。
</p>
<h2 id="rtoc-10"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
⚫︎ nvisible reCaptcha(インビジブル リキャプチャ)とは、Googleが提供するバックグラウンドで自動的に人間かボットかを判別する仕組みを導入することができるプラグインである。
</p>
<p class="blog-text">
⚫︎ 今回発生したWarningエラーは、PHP8.0による規約の変更である。
</p>
<p class="blog-text">
⚫︎ Invisible reCaptchaの__wakeup()のWarningエラーを解消するには、プラグインの下記のソースコードを修正する<br />
・対象ソースコード: MchBasePublicPlugin.php<br />
・修正内容: private function __wakeup() → public function __wakeup()
</p>
<p class="blog-text">
⚫︎ Invisible reCaptchaの__wakeup()のWarningエラーをs修正するには下記のような方法がある<br />
・FTPを使用する<br />
・プラグインファイルエディタを使用する
</p>
<p class="blog-text">
⚫︎ 上記の修正方法でWaringエラーが解決しない場合は下記のプラグインを使用する。<br />
・Advanced Google reCAPTCHA<br />
・reCaptcha by BestWebSoft
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【WordPress】get_category()で指定したカテゴリーの情報を取得！使い方を徹底解説！</title>
		<link>https://sossy-blog.com/wordpress/13865/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Sun, 25 May 2025 10:54:02 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[中級編]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13865</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2025年05月25日に投稿されました。) WordPressでサイトを構築していると「指定したカテゴリー情報を取得して処理したり表示したりしたい」という場面によく遭遇します。 例えば、カテゴリー名、スラッグ ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2025年05月25日に投稿されました。)</p>
<p class="blog-h2text">
WordPressでサイトを構築していると「指定したカテゴリー情報を取得して処理したり表示したりしたい」という場面によく遭遇します。
</p>
<p class="blog-text">
例えば、カテゴリー名、スラッグ、説明文、親カテゴリー情報など、様々なデータにアクセスできれば、より柔軟で動的なサイト設計が可能になります。
</p>
<p class="blog-text">
WordPressで指定したカテゴリーの情報するにはget_category()を使用します。
</p>
<p class="blog-text">
get_category()とは<span class= "keiko_red">指定したカテゴリーの情報を取得するWordPressの関数</span>となります。
</p>
<p class="blog-text">
カテゴリー情報をオブジェクトで取得し、オブジェクトに対してプロパティを指定することで欲しい情報のみを取得することが可能になります。
</p>
<p class="blog-text">
そのため、こちらの関数を活用することで、指定したカテゴリーのあらゆる情報を簡単に取得し、思い通りの表示を実現することができます。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressのget_category()で指定したカテゴリーの情報を取得する方法</span></span>について徹底的に紹介していきます。
</p>
<p class="blog-text">
この記事を読み終える頃には、あなたも get_category()をマスターし、WordPressによる表現力の可能性をさらに引き出すことができるようになるでしょう。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
投稿記事に付与したカテゴリーの情報を取得したい場合
</p>
<p class= "hh30">
カテゴリー情報を条件分岐として使用したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">WordPressのget_category()とは</h2>
<p class="blog-h2text">
get_category()とは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">指定したカテゴリーの情報を取得するWordPressの関数</span></span>になります。
</p>
<p class="blog-text">
WordPress内で登録したカテゴリーをプログラム内で取得し、処理として使用したり、様々なページで出力したりすることができます。
</p>
<h3 id="rtoc-2"  class="blog-h3head">get_category()の書き方</h3>
<p class="blog-text">
get_category()の書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">get_category('カテゴリーID', ['取得形式'])</pre>
<p class="blog-text">
get_category()と記載し、括弧の中に<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">必須な引数を1つ</span></span>、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">任意な引数を1つ</span></span>指定することで使用できます。
</p>
<h3 id="rtoc-3"  class="blog-h3head">get_category()のパラメータ</h3>
<p class="blog-text">
get_category()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>カテゴリーID: 必須<br />
取得したいカテゴリー情報のIDを指定する。</li>
<li>取得形式: 任意<br />
カテゴリー情報を取得する際の形式を指定する。<br />
(デフォルトはオブジェクト)</li>
</ol>
</div>
</div>
<p class="blog-text">
get_category()を記載し、括弧の中に必須の引数として、「カテゴリーID」を指定します。
</p>
<p class="blog-text">
続けて、括弧の中に任意の引数として、「取得形式」を指定します。
</p>
<h3 id="rtoc-4"  class="blog-h3head">get_category()の戻り値</h3>
<p class="blog-text">
get_category()の戻り値は「オブジェクト」であり、指定したカテゴリーの情報を格納して返すようになります。
</p>
<h3 id="rtoc-5"  class="blog-h3head">get_category()の呼び出し元</h3>
<p class="blog-text">
get_category()の呼び出し元は「wp-includes/category.php」となります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">function get_category( $category, $output = OBJECT, $filter = 'raw' ) {
	$category = get_term( $category, 'category', $output, $filter );

	if ( is_wp_error( $category ) ) {
		return $category;
	}

	_make_cat_compat( $category );

	return $category;
}</pre>
<p class="blog-text">
get_category()は、get_terms()を呼び出しており、エラーでない場合、指定したカテゴリーの情報を返り値に指定しています。
</p>
<h2 id="rtoc-6"  class="hh hh28">get_category()を使用するメリット</h2>
<p>get_category()を使用するメリットについてご紹介します。</p>
<p>ここでは、下記の3点について解説していきます。</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>特定のカテゴリー情報をピンポイントで取得できる<</li>
<li>サイトのページを動的に表示することができる</li>
<li>SEO対策に有効である</li>
</div>
</div>
<h3 id="rtoc-7"  class="blog-h3head">特定のカテゴリー情報をピンポイントで取得できる</h3>
<p class="blog-text">
まず、1つ目は特定のカテゴリー情報をピンポイントで取得できるということです。
</p>
<p class="blog-text">
特定のカテゴリーIDさえ分かれば、そのカテゴリーに関する様々な情報を効率的に取得できます。
</p>
<p class="blog-text">
取得したいカテゴリー情報のみを取得することができるため、不要なデータ処理を省き、パフォーマンス向上にも期待ができます。
</p>
<h3 id="rtoc-8"  class="blog-h3head">サイトのページを動的に表示することができる</h3>
<p class="blog-text">
2つ目はサイトのページを動的に表示することができるということです。
</p>
<p class="blog-text">
取得した情報を使用することでカテゴリーごとに異なる表示をしたり、特定のカテゴリーへのリンクを動的に生成したりできます。
</p>
<p class="blog-text">
例えば、「カテゴリーA」のページでは説明文をページ上部に表示し、他のページには説明文を表示しないなど、静的な表示では難しい表現が可能になります。
</p>
<h3 id="rtoc-9"  class="blog-h3head">SEO対策に有効である</h3>
<p class="blog-text">
3つ目はSEO対策に有効であるということです。
</p>
<p class="blog-text">
カテゴリーの説明文などを動的に表示できるため、ユーザーだけでなく検索エンジンにもそのカテゴリーが何についてのものなのかを明確に伝えられます。
</p>
<p class="blog-text">
また、特定のカテゴリーアーカイブページへのリンクを適切に配置することもできるため、クローラビリティの向上からSEO対策に繋がります。
</p>
<h2 id="rtoc-10"  class="hh hh28">get_category()で指定したカテゴリーの情報を取得するサンプルコード</h2>
<p class="blog-h2text">
<span class= "keiko_red">get_category()で指定したカテゴリーの情報を取得するサンプルコード</span>を紹介します。
</p>
<p class="blog-text">ここでは、下記の2ケースでget_category()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>存在するカテゴリーIDを指定する場合</li>
<li>存在しないカテゴリーIDを指定する場合</li>
</div>
</div>
<h3 id="rtoc-11"  class="blog-h3head">存在するカテゴリーIDを指定する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">存在するカテゴリーIDを指定する場合</span></span>にget_category()を使用すると、指定したカテゴリーの情報を取得します。
</p>
<p class="blog-text">
試しに、下記の画像である「テスト」のカテゴリー情報を取得します。
</p>
<p class="blog-text">
「テスト」のカテゴリーIDは「8」であるため、引数に「8」を指定します。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-categoryList.webp" alt="WordPressのカテゴリー一覧画面" width="1000" height="600" class="alignnone size-full wp-image-13944" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-categoryList.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-categoryList-300x180.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-categoryList-768x461.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-categoryList-940x564.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category); ?&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-1.webp" alt="存在するカテゴリーIDを指定する場合にget_category()を使用した結果" width="1000" height="590" class="alignnone size-full wp-image-13943" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()で存在するカテゴリーIDを指定してカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
そのため、カテゴリー「テスト」のカテゴリー情報が表示されています。
</p>
<h3 id="rtoc-12"  class="blog-h3head">存在しないカテゴリーIDを指定する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">存在しないカテゴリーIDを指定する場合</span></span>にget_category()を使用すると、カテゴリー情報を取得しません。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('999'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category); ?&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-2.webp" alt="存在しないカテゴリーIDを指定する場合にget_category()を使用した結果" width="1000" height="590" class="alignnone size-full wp-image-13942" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-2-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-2-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-1-2-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()で存在しないカテゴリーIDを指定してカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
「999」を指定していますが、「999」のカテゴリーが存在しないため、情報を取得できず、何も表示されていません。
</p>
<h2 id="rtoc-13"  class="hh hh28">カテゴリーIDを指定しないでget_category()を使用する場合</h2>
<p class="blog-h2text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーIDを指定しない</span></span>でget_category()を使用するとエラーが発生します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category(); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category); ?&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p>Uncaught ArgumentCountError: Too few arguments to function get_category(), 0 passed in wp-content/themes/twentytwentyone/index.php on line 26 and at least 1 expected in wp-includes/category.php:92<br />
Stack trace:<br />
#0 wp-content/themes/twentytwentyone/index.php(26): get_category()<br />
#1 wp-includes/template-loader.php(106): include(&#8216;/virtual/sossyt&#8230;&#8217;)<br />
#2 wp-blog-header.php(19): require_once(&#8216;/virtual/sossyt&#8230;&#8217;)<br />
#3 index.php(17): require(&#8216;/virtual/sossyt&#8230;&#8217;)<br />
#4 {main}<br />
  thrown
</p></div>
<p class="blog-text">
get_category()でカテゴリーIDを指定しないで、カテゴリーの情報を取得しています。
</p>
<p class="blog-text">
カテゴリーIDは必須であるため、「get_category() の引数が少なすぎる」というエラーが表示されています。
</p>
<h2 id="rtoc-14"  class="hh hh28">get_category()でカテゴリー情報を別々で取得する場合</h2>
<p class="blog-h2text">
<span class= "keiko_red">get_category()でカテゴリー情報を別々で取得する場合</span>は、取得したデータに対して、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">アロー演算子</span></span>を使用します。
</p>
<p class="blog-text">
アロー演算子とは、<span class= "keiko_red">オブジェクトの中身にアクセスするための演算子</span>であリ、オブジェクトが持つプロパティやメソッドを呼び出すことができます。
</p>
<p class="blog-text">
そのため、取得したオブジェクトに対してアロー演算子を使用すると、取得したカテゴリー情報を別々で取得することが可能になります。
</p>
<p class="blog-text">
ここでは下記の6ケースでget_category()を使用し、カテゴリーの情報を別々で取得します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>カテゴリーの名前を取得する場合</li>
<li>カテゴリーのIDを取得する場合</li>
<li>カテゴリーのスラッグ名を取得する場合</li>
<li>カテゴリーの説明を取得する場合</li>
<li>カテゴリーの親カテゴリーIDを取得する場合</li>
<li>カテゴリーの投稿数を取得する場合</li>
</ol>
</div>
</div>
<p class="blog-text">
ここでは下記のカテゴリー情報を取得することとします。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_categoryList.webp" alt="WordPressのカテゴリー一覧画面" width="1000" height="580" class="alignnone size-full wp-image-13964" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_categoryList.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_categoryList-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_categoryList-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_categoryList-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<h3 id="rtoc-15"  class="blog-h3head">カテゴリーの名前を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーの名前を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">name</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">cat_name</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;name: &lt;?php echo ($category-&gt;name); ?&gt;&lt;/p&gt;
     &lt;p&gt;cat_name: &lt;?php echo ($category-&gt;cat_name); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-1.webp" alt="WordPressのget_category()でカテゴリーの名前を取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13957" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリーの名前を取得しています。
</p>
<p class="blog-text">
そのため、カテゴリーの名前である「テスト」それぞれ表示されています。
</p>
<h3 id="rtoc-16"  class="blog-h3head">カテゴリーのIDを取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーのIDを取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">term_id</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">cat_ID</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;term_id: &lt;?php echo ($category-&gt;term_id); ?&gt;&lt;/p&gt;
     &lt;p&gt;cat_ID: &lt;?php echo ($category-&gt;cat_ID); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-2.webp" alt="WordPressのget_category()でカテゴリーのIDを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13956" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリーのIDを取得しています。
</p>
<p class="blog-text">
そのため、「テスト」カテゴリーのIDである「8」がそれぞれ表示されています。
</p>
<h3 id="rtoc-17"  class="blog-h3head">カテゴリーのスラッグ名を取得する場合</h3>
<p class="blog-text">
カテゴリー名を取得する場合は、get_category()で取得したオブジェクトに対して、「slug」もしくは「category_nicename」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;slug: &lt;?php echo ($category-&gt;slug); ?&gt;&lt;/p&gt;
     &lt;p&gt;category_nicename: &lt;?php echo ($category-&gt;category_nicename); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-3.webp" alt="WordPressのget_category()でカテゴリーのスラッグを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13955" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリーのスラッグを取得しています。
</p>
<p class="blog-text">
そのため、「お知らせ」カテゴリーのスラッグである「test」がそれぞれ表示されています。
</p>
<h3 id="rtoc-18"  class="blog-h3head">カテゴリーの説明を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーの説明を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">description</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_description</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;description: &lt;?php echo ($category-&gt;description); ?&gt;&lt;/p&gt;
     &lt;p&gt;category_description: &lt;?php echo ($category-&gt;category_description); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-4.webp" alt="WordPressのget_category()でカテゴリーの説明を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13954" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-4-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-4-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-4-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリーの説明を取得しています。
</p>
<p class="blog-text">
そのため、「テスト」カテゴリーの説明文がそれぞれ表示されています。
</p>
<h3 id="rtoc-19"  class="blog-h3head">カテゴリーの投稿数を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリー名を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">count</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_count</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;count: &lt;?php echo ($category-&gt;count); ?&gt;&lt;/p&gt;
     &lt;p&gt;category_count: &lt;?php echo ($category-&gt;category_count); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-5.webp" alt="WordPressのget_category()でカテゴリーの投稿数を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13953" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-5-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-5-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-5-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリーの投稿数を取得しています。
</p>
<p class="blog-text">
そのため、「テスト」のカテゴリーの投稿数である「12」が表示されています。
</p>
<h3 id="rtoc-20"  class="blog-h3head">親カテゴリーのIDを取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">親カテゴリーのIDを取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">parent</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_parent</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;parent: &lt;?php echo ($category-&gt;parent); ?&gt;&lt;/p&gt;
     &lt;p&gt;category_parent: &lt;?php echo ($category-&gt;category_parent); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
 &nbsp;&lt;?php $category = get_category('2'); ?&gt;
  &lt;div&gt;
     &lt;p&gt;parent: &lt;?php echo ($category-&gt;parent); ?&gt;&lt;/p&gt;
     &lt;p&gt;category_parent: &lt;?php echo ($category-&gt;category_parent); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-6.webp" alt="WordPressのget_category()で親カテゴリーのIDを取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13952" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-6-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-6-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-2-6-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()で親カテゴリーIDを取得しています。</p>
<p class="blog-text">
「テスト」カテゴリーは親カテゴリーがいないため、「0」が表示されています。</p>
<p class="blog-text">
また、「テスト1」カテゴリーは親が存在するため、親カテゴリー「テスト」のIDである「8」が表示されています。
</p>
<h2 id="rtoc-21"  class="hh hh28">取得形式を指定してget_category()で指定したカテゴリーの情報を取得する場合</h2>
<p class="blog-h2text">
<span class= "keiko_red">取得形式を指定してget_category()で指定したカテゴリーの情報を取得する</span>にはパラメータに「取得形式」を指定します。
</p>
<p class="blog-text">
取得形式を変更することで、カテゴリー情報を自分の好みの形式を指定して受け取ることが可能になります。
</p>
<p class="blog-text">
そのため、ここでは下記の3ケースでget_category()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>オブジェクトで取得する場合</li>
<li>連想配列で取得する場合</li>
<li>配列で取得する場合</li>
</div>
</div>
<h3 id="rtoc-22"  class="blog-h3head">オブジェクトで取得する場合</h3>
<p class="blog-text">
指定したカテゴリーの情報をオブジェクトで取得するには「引数なし」にするか、パラメータである取得形式に「OBJECT」を指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を取得&lt;/h1&gt;
 &nbsp;&lt;?php $category1 = get_category('8'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category1); ?&gt;
     &lt;p&gt;&lt;?php print_r($category2-&gt;name); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
 &nbsp;&lt;?php $category2 = get_category('8', 'OBJECT'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category2); ?&gt;
     &lt;p&gt;&lt;?php print_r($category2-&gt;name); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-1-min.gif" alt="get_category()で指定したカテゴリーの情報をオブジェクト形式で取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13958" />
</div>
<p class="blog-text">
get_category()でカテゴリー情報をオブジェクトで取得しています。
</p>
<p class="blog-text">
nameプロパティにカテゴリー名が格納されているため、アロー関数にnameを指定して「テスト」が表示されています。
</p>
<h3 id="rtoc-23"  class="blog-h3head">連想配列形式で取得する場合</h3>
<p class="blog-text">
指定したカテゴリーの情報を連想配列形式で取得するには、パラメータである取得形式に「ARRAY_A」を指定します。
</p>
<p class="blog-text">
連想配列のため、キーを指定することで、取得したいカテゴリーの情報を取得することが可能になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を連祖配列で取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8', 'ARRAY_A'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category); ?&gt;
     &lt;p&gt;&lt;?php print_r($category[name]); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-2.webp" alt="get_category()で指定したカテゴリーの情報を連想配列形式で取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13949" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-2-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-2-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-2-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリー情報を連祖配列で取得しています。
</p>
<p class="blog-text">
「name」のキーにはカテゴリー名が格納されているため、「name」を指定して「テスト」が表示されています。
</p>
<h3 id="rtoc-24"  class="blog-h3head">配列で取得する場合</h3>
<p class="blog-text">
get_category()で指定したカテゴリーの情報を配列で取得するには、パラメータである取得形式に「ARRAY_N」を指定します。
</p>
<p class="blog-text">
配列のため、カテゴリー情報をインデックスで取得することが可能になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_category()で指定したカテゴリー情報を添字形式で取得&lt;/h1&gt;
 &nbsp;&lt;?php $category = get_category('8', 'ARRAY_N'); ?&gt;
  &lt;div&gt;
     &lt;?php print_r($category); ?&gt;
     &lt;p&gt;&lt;?php print_r($category[1]); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-3.webp" alt="get_category()で指定したカテゴリーの情報を添字形式で取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13948" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-3-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-3-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-3-3-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_category()でカテゴリー情報を配列で取得しています。
</p>
<p class="blog-text">
配列の2番目にはカテゴリー名が格納されているため、インデックスに「1」を指定して「テスト」が表示されています。
</p>
<h2 id="rtoc-25"  class="hh hh28">get_category()を使用した実際のケース</h2>
<p class="blog-h2text">
get_category()を使用した実際のケースについてご紹介します。
</p>
<p class="blog-text">
ここでは、下記の2ケースをご紹介します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>特定のカテゴリーページのみ特定の内容を表示する<</li>
<li>カテゴリーごとにコンテンツやレイアウトを変更する</li>
</div>
</div>
<h3 id="rtoc-26"  class="blog-h3head">特定のカテゴリーページのみ追加情報を表示する</h3>
<p class="blog-text">
get_category()を使用することで、特定のカテゴリーページのみ追加情報を表示することができます。
</p>
<p class="blog-text">
例えば、get_category()で「テスト」のカテゴリーページである場合のみ、ページの概要を表示するようにします。
</p>
<p class="blog-text" style = "font-weight: bold;">● category.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
&lt;?php if ( have_posts() ) : ?&gt;
	&lt;header&gt;
        &lt;h2 class='h2-title'&gt;&lt;span&gt;&lt;?php echo single_cat_title(); ?&gt;&lt;/span&gt;&lt;/h2&gt;
        &lt;?php 
        $cat_id = get_query_var('cat');
        $category = get_category($cat_id, 'ARRAY_A');
        if ($category[name] == 'テスト'): ?&gt;
          &lt;p class=''&gt;このページは弊社がテストを行った実績一覧を紹介しています。&lt;/p&gt;
          &lt;?php endif ;?&gt;
	&lt;/header&gt;
        &lt;div class= 'flex'&gt;	 
	&lt;?php while ( have_posts() ) : ?&gt;
		&lt;?php the_post(); ?&gt;
		&lt;?php // 記事の出力処理 ?&gt; 
	&lt;?php endwhile; ?&gt;
        &lt;/div&gt;
&lt;?php else : ?&gt;
	&lt;p&gt;現在、記事はありません。&lt;/p&gt;
&lt;?php endif; ?&gt;

&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.h2-title {
    text-align:center;
}
.explanation {
    width: 80%;
    margin: 0 auto;
    text-align: center;
    font-size: 1.25em;
}
.flex {
    display: flex;
    flex-wrap: wrap;
}
article {
    width: 42.5%;
    margin: 0 auto;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-result-4-1-min.gif" alt="get_category()で特定のカテゴリーページのみ追加情報を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13971" />
</div>
<p class="blog-text">
get_category()でテストのIDと一致した場合に、カテゴリーページの概要を出力するようにしています。
</p>
<p class="blog-text">
そのため、テストのページ一覧に「弊社で行ったテストの実績一覧が表示されています。」という文章が表示されています。
</p>
<h3 id="rtoc-27"  class="blog-h3head">カテゴリーによってコンテンツやレイアウトを変更する</h3>
<p class="blog-text">
get_category()で、カテゴリーによってコンテンツやレイアウトを変更することができます。
</p>
<p class="blog-text">
例えば、get_category()で「テスト」のカテゴリーページと「お知らせ」のカテゴリーページとで、それぞれ異なるレイアウトで表示します。
</p>
<p class="blog-text" style = "font-weight: bold;">● category.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
&lt;header&gt;
&lt;?php $cat_id = get_query_var('cat');
      $category = get_category($cat_id, 'ARRAY_A');
?&gt;
&lt;/header&gt;
&lt;?php 
$category = get_category($cat_id, 'ARRAY_A');
if(($category[name]) == 'テスト'): 
?&gt;
&lt;div class='flex box-size'&gt;
    &lt;div class= 'post-flex'&gt;
    &lt;?php while ( have_posts() ) : ?&gt;
         &lt;?php the_post(); ?&gt;
         &lt;?php // 記事の出力処理 ?&gt; 
    &lt;?php endwhile; ?&gt;
    &lt;/div&gt;
    &lt;aside class='sidebar'&gt;
       &lt;h2 class='entry-title mrgn-tp'&gt;カテゴリー一覧&lt;/h2&gt;
       &lt;?php $categories = get_categories(); ?&gt;
       &lt;div&gt;
          &lt;ul&gt;
          &lt;?php foreach($categories as $category):
                  $categoryName = $category-&gt;name; ?&gt;
             &lt;li style=&quot;text-align: left;&quot;&gt;
                &lt;?php echo $categoryName; ?&gt;
             &lt;/li&gt;
          &lt;?php endforeach; ?&gt;
          &lt;/ul&gt;	 
       &lt;/div&gt;
    &lt;/aside&gt;
&lt;/div&gt;

&lt;?php else: ?&gt;
&lt;div class= 'flex'&gt;
    &lt;?php while ( have_posts() ): ?&gt;
       &lt;?php the_post(); ?&gt;
       &lt;?php // 記事の出力処理 ?&gt; 
    &lt;?php endwhile; ?&gt;
&lt;/div&gt;
&lt;?php endif; ?&gt;
&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">h2.entry-title {
    text-align: center;
    font-size: 1.75em;
}
.mrgn-tp{
	margin-top: 10px;
}
.flex {
    display: flex;
    flex-wrap: wrap;
}
.box-size {
    width: 85%;
    margin: 10% auto;
}
article {
    width: 42.5%;
    margin: 13px auto;
    border: 2px solid lightgrey;
    box-shadow: 10px 10px 15px -10px;
}
.post-flex {
    width: 75%;
    display:flex;
	flex-wrap:wrap;
}
.sidebar {
    width:24.5%;
	border:1px solid lightgray;
	box-shadow: 10px 10px 15px -10px;	
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_result-4-2-min.gif" alt="get_category()でカテゴリーによってコンテンツやレイアウトを変更した
結果" width="1000" height="590" class="alignnone size-full wp-image-13973" />
</div>
<p class="blog-text">
get_category()でカテゴリーによってコンテンツやレイアウトを変更しています。
</p>
<p class="blog-text">
そのため、「テスト」のカテゴリーページと「お知らせ」のカテゴリーページを表示すると、それぞれレイアウトが変更されています。
</p>
<h2 id="rtoc-28"  class="hh hh28">WordPressでカテゴリー情報を取得する他の関数</h2>
<p class="blog-h2text">
get_category()でカテゴリーの情報を取得しましたが、他にもカテゴリー情報を取得できる関数は存在します。
</p>
<p class="blog-text">
そのため、ここではWordPressでカテゴリー情報を取得できる他の関数についてご紹介します。
</p>
<h3 id="rtoc-29"  class="blog-h3head">get_categories()</h3>
<p class="blog-text">
全てのカテゴリー情報を取得するには、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">get_categories()</span></span>を使用します。
</p>
<p class="blog-text">
get_categories()とは、<span class= "keiko_red">WordPress上で登録されているカテゴリーの情報を全て取得することができるWordPressの関数</span>になります。
</p>
<p class="blog-text">
カテゴリー情報を取得するため、こちらもオブジェクトでデータを返すようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
    &lt;h1 class=&quot;entry-title&quot;&gt;get_categories()で全てのカテゴリー情報を取得&lt;/h1&gt;
    &lt;?php $categories = get_categories(); ?&gt;
    &lt;div&gt;
        &lt;ol&gt;
            &lt;?php foreach($categories as $category):
                $categoryName = $category-&gt;name; ?&gt;
                &lt;li style=&quot;text-align: left;&quot;&gt;&lt;?php echo $categoryName; ?&gt;&lt;/li&gt;
            &lt;?php endforeach; ?&gt;
        &lt;/ol&gt;	 
    &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_categories-result.webp" alt="WordPressのget_categories()で全てのカテゴリーの情報を取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13951" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_categories-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_categories-result-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_categories-result-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_categories-result-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_categories()で全てのカテゴリー情報を取得しています。
</p>
<p class="blog-text">
今回はカテゴリー名だけを取得して表示したため、WordPress内に登録されている全てのカテゴリー名が表示されています。
</p>
<h3 id="rtoc-30"  class="blog-h3head">get_the_category()</h3>
<p class= "blog-text">
get_the_category()とは、投稿記事に付与されているカテゴリーの情報を取得する関数になります。
</p>
<p class= "blog-text">
そのため、各投稿記事のページにて付与されているカテゴリー情報を取得したり、表示したりすることができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
    &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの情報を取得&lt;/h1&gt;
    &lt;?php $category = get_the_category(141); ?&gt;
    &lt;?php $cat =  $category[0]; ?&gt;
    &lt;div class= &quot;cat-info&quot;&gt;
        &lt;p&gt;&lt;?php echo($cat-&gt;name); ?&gt;&lt;/p&gt;
        &lt;p&gt;&lt;?php echo($cat-&gt;slug); ?&gt;&lt;/p&gt;
    &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_postList.webp" alt="WordPressの投稿記事一覧画面" width="1000" height="580" class="alignnone size-full wp-image-13962" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_postList.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_postList-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_postList-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category_postList-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_the_categories-result.webp" alt="get_the_category()で投稿記事に付与されているカテゴリーの情報を取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13950" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_the_categories-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_the_categories-result-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_the_categories-result-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-get_category-get_the_categories-result-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()で投稿記事に付与したカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
投稿記事ID「141」には「お知らせ」のカテゴリーが付与されているため、お知らせのカテゴリー情報が表示されています。
</p>
<p class= "blog-text">
もし、get_the_category()について詳しく知りたい場合は下記の記事をご参考ください。
</p>
<div class="linkcard"><div class="lkc-internal-wrap"><a class="lkc-link no_icon" href="https://sossy-blog.com/wordpress/13568/"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon lazyloaded loaded" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width="16" height="16" data-src="https://www.google.com/s2/favicons?domain=sossy-blog.com" decoding="async" data-was-processed="true"><noscript><img decoding="async" class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width=16 height=16 data-eio="l"/></noscript><div class="lkc-domain">Sossyの助太刀ブログ</div><div class="lkc-date">11月 01, 2024</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img decoding="async" width="150" height="150" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-icatch-150x150.webp" class="lkc-thumbnail-img loaded ls-is-cached lazyloaded wp-post-image" alt="【WordPress】get_the_category()でカテゴリー情報を取得！使い方を徹底解説！" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-icatch-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-icatch-160x160.webp 160w" sizes="(max-width: 150px) 100vw, 150px" /></figure><div class="lkc-title"><div class="lkc-title-text">【WordPress】get_the_category()でカテゴリー情報を取得！使い方を徹底解説！</div></div><div class="lkc-url">https://sossy-blog.com/wordpress/13568/</div></div><div class="clear"></div></div></a></div></div>
<h2 id="rtoc-31"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
⚫︎ get_category()とは、投稿記事に付与されているカテゴリーの情報をオブジェクトで取得するWordPressの関数である。
</p>
<p class="blog-text">
⚫︎ get_category()は下記のパラメータを指定して使用する。<br />
・カテゴリーID(必須)<br />
・取得形式(任意)
</p>
<p class="blog-text">
⚫︎ get_category()を使用することで下記のようなメリットがある。<br />
・特定のカテゴリー情報をピンポイントで取得できる<br />
・サイトのページを動的に表示することができる<br />
・SEO対策に有効である
</p>
<p class="blog-text">
⚫︎ 存在するカテゴリーIDを指定してget_category()を使用すると、指定したカテゴリー情報を取得する。
</p>
<p class="blog-text">
⚫︎ 存在しないカテゴリーIDを指定してget_category()を使用すると、カテゴリー情報を取得しない。
</p>
<p class="blog-text">
⚫︎ カテゴリーIDを指定しないでget_category()を使用すると、エラーとなる。
</p>
<p class="blog-text">
⚫︎ get_category()でカテゴリー情報を別々で取得する場合は、get_category()で取得したデータに対してアロー演算子を使用し、プロパティを指定して使用する。<br />
・カテゴリーの名前を取得する場合:<br />
　→ プロパティは「name」もしくは「cat_name」<br />
・カテゴリーのIDを取得する場合:<br />
　→ プロパティは「term_id」もしくは「cat_ID」<br />
・カテゴリーのスラッグ名を取得する場合<br />
　→ プロパティは「slug」もしくは「category_nicename」<br />
・カテゴリーの説明を取得する場合<br />
　→ プロパティは「description」もしくは「category_description」<br />
・カテゴリーの投稿数を取得する場合<br />
　→ プロパティは「copunt」もしくは「category_count」<br />
・親カテゴリーのIDを取得する場合<br />
　→ プロパティは「parent」もしくは「category_parent」
</p>
<p class="blog-text">
⚫︎ get_category()でカテゴリー情報をオブジェクトで取得するにはパラメータである取得形式に「OBJECT」を指定するか、パラメータなしで使用する。
</p>
<p class="blog-text">
⚫︎ get_category()でカテゴリー情報を連祖配列で取得するにはパラメータである取得形式に「ARRAY_A」を指定する。
</p>
<p class="blog-text">
⚫︎ get_category()でカテゴリー情報を添字形式で取得するにはパラメータである取得形式に「ARRAY_N」を指定する。
</p>
<p class="blog-text">
⚫︎ get_category()は下記のようなケースで使用できる。<br />
・特定のカテゴリーページのみ特定の内容を表示する<br />
・カテゴリーごとにコンテンツやレイアウトを変更する
</p>
<p class="blog-text">
⚫︎ get_category()以外にも下記の関数でカテゴリー情報を取得できる。<br />
・get_categories()<br />
→WordPressに登録されているカテゴリーのカテゴリー情報を全て取得する関数<br />
・get_the_category()<br />
→投稿記事に付与されているカテゴリー情報を取得することができる関数
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【WordPress】特定のカテゴリー内の子カテゴリーをリンク付きで表示する方法！</title>
		<link>https://sossy-blog.com/wordpress/13820/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Wed, 21 May 2025 20:42:16 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[上級編]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13820</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childcatlink-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2025年05月22日に投稿されました。) WordPressで特定のカテゴリー内にある子カテゴリーをリンク付きで表示することでユーザーとって親切で、魅力的なページへと変身します。 例えば、ブログの記事数が多 ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childcatlink-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2025年05月22日に投稿されました。)</p>
<p class="blog-h2text">
WordPressで特定のカテゴリー内にある子カテゴリーをリンク付きで表示することでユーザーとって親切で、魅力的なページへと変身します。
</p>
<p class="blog-text">
例えば、ブログの記事数が多くなってきた時、関連性の高い子カテゴリーを整理して表示できれば、ユーザーはよりスムーズに目的の情報へとたどり着くことが可能になります。
</p>
<p class="blog-text">
つまり、ユーザーの満足度が高まり、クローラーが循環しやすくなるため、SEO対策としても有効です。
</p>
<p class="blog-text">
こちらの記事で紹介している方法は、コードを直接修正する方法にはなりますが、プラグインを使用して特定のカテゴリー内にある子カテゴリーをリンク付きで表示する方法についても補足として記載しています、
</p>
<p class="blog-text">
この記事を読めば、ユーザーが求める情報へ最短距離でアクセスできるようになり、サイト全体の価値を高めることができるでしょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressで特定のカテゴリー内の子カテゴリーをリンク付きで表示する方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
サイトのユーザビリティを高めたい場合
</p>
<p class= "hh30">
親子関係となっているカテゴリーをリンク付きで出力したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">特定のカテゴリー内の子カテゴリーをリンク付きで表示するメリット</h2>
<p class="blog-h2text">
WordPressで特定のカテゴリー内の子カテゴリーをリンク付きで表示すると、下記のようなメリットがあります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>ユーザー使用率が向上する</li>
<li>SEO対策になる</li>
</div>
</div>
<p class="blog-text">
それぞれのメリットについて解説します。
</p>
<h3 id="rtoc-2"  class="blog-h3head">ユーザビリティーが向上する</h3>
<p class="blog-text">
まず、1つ目はユーザビリティーが向上することです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-userblity.webp" alt="ユーザビリティーの向上画像" width="813" height="516" class="alignnone size-full wp-image-13907" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-userblity.webp 813w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-userblity-300x190.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-userblity-768x487.webp 768w" sizes="(max-width: 813px) 100vw, 813px" /></p>
<p class="blog-text">
子カテゴリーを表示することで、そのページに関連するカテゴリーページへと遷移できるため、目的のコンテンツへのスムーズな導線を引くことができます。
</p>
<p class="blog-text">
また、サイト全体の構造が分かりやすくなるため、サイト内の循環経路が完成し、回遊率の向上にも繋がります。
</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
回遊率とは「ユーザーがサイト内の複数のページを閲覧する割合を示す指標」であり、回遊率が高いほどユーザーがサイト内のコンテンツに興味を持ち、積極的に探索しているということになります。
</p>
</div>
</div>
<h3 id="rtoc-3"  class="blog-h3head">SEO対策になる</h3>
<p class="blog-text">
2つ目はSEO対策になるということです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-seo.webp" alt="SEOの画像" width="1000" height="590" class="alignnone size-full wp-image-13908" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-seo.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-seo-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-seo-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-seo-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
子カテゴリーを表示することで、サイトの内部リンクの強化に繋がるため、クローラーの巡回を促進することができます。
</p>
<p class="blog-text">
また、親子カテゴリーに属している記事はとても関連している内容が書かれているため、関連性の高いコンテンツ間の連携強化にもつながります。
</p>
<h2 id="rtoc-4"  class="hh hh28">特定のカテゴリー内の子カテゴリーをリンク付きで表示するには</h2>
<p class="blog-h2text">
特定のカテゴリー内の子カテゴリーをリンク付きで表示するには下記の2つの方法があります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>get_categories()を使用する</li>
<li>wp_list_categories()を使用する</li>
</div>
</div>
<p class="blog-text">
2つの方法についてそれぞれ解説していきます。
</p>
<p class="blog-text">
また、今回使用する親子カテゴリーは下記の画像のように「テスト」内に「テスト1」、「テスト2」、「テスト3」が含まれているとします。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1.webp" alt="WordPressのカテゴリー一覧画面" width="1000" height="590" class="alignnone size-full wp-image-13876" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<h3 id="rtoc-5"  class="blog-h3head">get_categories()を使用する</h3>
<p class="blog-text">
まず、1つ目はget_categories()を使用する方法です。
</p>
<p class="blog-text">
get_categories()とはWordPres内で登録されている全てのカテゴリー情報を取得することができる関数になります。
</p>
<p class="blog-text">
そのため、get_categories()にパラメータを指定することで対象のカテゴリーと親子関係になっているか確認し、親子関係であるカテゴリー情報のみを取得することで、子カテゴリーをリンク付きで表示することが可能になります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
&lt;body&gt;
    &lt;main id=&quot;main_content&quot;&gt;
    &lt;h1 class=&quot;entry-title&quot;&gt;get_categories()で子カテゴリーのリンクを表示&lt;/h1&gt;
    &lt;!-- このコードを追記　START --&gt;
     &lt;?php
     $cat_id = get_query_var('cat');
     ?&gt;
     &lt;h2 class='h2-title'&gt;&lt;span&gt;&lt;?php echo single_cat_title(); ?&gt;&lt;/span&gt;の一覧記事&lt;/h2&gt;
     &lt;?php 
     $args = array('orderby' =&gt; 'name','order' =&gt; 'ASC','hide_empty' =&gt; 1);
     $categories = get_categories($args); 
     ?&gt;
     &lt;div class=&quot;childCat_list&quot;&gt;
       &lt;ul&gt;
     &lt;?php
     foreach($categories as $category):
      if(($category-&gt;parent) == $cat_id):
      ?&gt;
      &lt;li&gt;
        &lt;a href=&quot;&lt;?php echo get_category_link($category-&gt;term_id); ?&gt;&quot;&gt;
          &lt;span&gt;&lt;?php echo $category-&gt;name; ?&gt;&lt;/span&gt; : 
          &lt;span&gt;&lt;?php echo $category-&gt;count; ?&gt;&lt;/span&gt;件
        &lt;/a&gt;
      &lt;/li&gt;
      &lt;?php endif; ?&gt;
     &lt;?php endforeach; ?&gt;  
        &lt;/ul&gt;
      &lt;/div&gt;   
    &lt;!-- このコードを追記　END --&gt;
     .
     .
     .
    &lt;/main&gt;
&lt;/body&gt;
&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style= "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.h2-title {
　　　text-align:center;
}
.childCat_list &gt; ul {
　　　text-align: center;
　　　padding: 0;
}
.childCat_list &gt; ul &gt; li {
　　　display:inline-block;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-result-1-1-min.gif" alt="get_categories()を使用して特定のカテゴリー内の子カテゴリーをリンク付きで表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13878" />
</div>
<p class="blog-text">
上記のコードについて解説します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>get_query_var()にて表示された親カテゴリーページのIDを取得</li>
<li>get_categories()にパラメータを指定し、親カテゴリーのIDをもっているすべてのカテゴリーの情報を取得</li>
<li>1の処理で取得したIDと2の処理で取得した親カテゴリーのIDが同じであるかどうかを判別する</li>
<li>同じでないなら何もしないで、同じであるならカテゴリー名と記事数を出力</li>
<li>get_category_link()に3で取得したカテゴリー情報からIDを指定してリンクを作成</li>
</div>
</div>
<p class="blog-text">
そのため、get_categories()で特定のカテゴリー内にある子カテゴリーをリンク付きで表示されています。
</p>
<p class="blog-text">
また、カテゴリー名だけでなく、各カテゴリーの記事数も表示され、クリックすると各カテゴリーページへ遷移しています。
</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
こちらは方法だと全てのカテゴリーに対して処理を行っています。<br />
そのため、内部的な処理として使用する場合にはこちらの方法が有効かもです。
</p>
</div>
</div>
<h3 id="rtoc-6"  class="blog-h3head">wp_list_categories()を使用する</h3>
<p class="blog-text">
2つ目の方法はwp_list_categories()を使用する方法です。
</p>
<p class="blog-text">
そもそも、wp_list_categories()とは、カテゴリーの一覧を生成し、HTMLのリスト形式で表示することができる関数になります。
</p>
<p class="blog-text">
そのため、wp_list_categories()にパラメータを指定して使用することで、特定のカテゴリー内にある子カテゴリーをリンク付きで表示することが可能になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● category.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
&lt;body&gt;
    &lt;main id=&quot;main_content&quot;&gt;
    &lt;h1 class=&quot;entry-title&quot;&gt;get_categories()で子カテゴリーのリンクを表示&lt;/h1&gt;
    &lt;!-- このコードを追記　START --&gt;
     &lt;?php
       $cat_id = get_query_var('cat');
      ?&gt;
     &lt;h2&gt;&lt;span&gt;&lt;?php echo single_cat_title(); ?&gt;&lt;/span&gt;の一覧記事&lt;/h2&gt;
     &lt;?php
     $arg  = 'show_option_none=&amp;echo=0&amp;show_count=1&amp;use_desc_for_title=0&amp;depth=1&amp;title_li=&amp;child_of='.$cat_id;
     $childCat = wp_list_categories($arg);
     if (!empty($childCat)): ?&gt;
     &lt;div class=&quot;childCat_list&quot;&gt;
        &lt;ul&gt;&lt;?php echo $childCat; ?&gt;&lt;/ul&gt;
     &lt;/div&gt;
     &lt;?php endif; ?&gt;   
    &lt;!-- このコードを追記　END --&gt;
     .
     .
     .
    &lt;/main&gt;
&lt;/body&gt;
&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style= "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.h2-title {
　　　text-align:center;
}
.childCat_list &gt; ul {
　　　text-align: center;
　　　padding: 0;
}
.cat-item {
　　　display:inline-block;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-result-1-2-min.gif" alt="wp_list_categories()を使用して特定のカテゴリー内の子カテゴリーをリンク付きで表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13882" />
</div>
<p class="blog-text">
上記のコードについて解説します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>get_query_var()にて表示された親カテゴリーページのIDを取得</li>
<li>wp_list_categories()にパラメータを指定し、対象のカテゴリー内の子カテゴリーの情報を取得</li>
<li>子カテゴリー情報を持っているかどうかを判別する</li>
<li>持っていないならなにもしないで、持っているならHTML要素として画面へ出力する</li>
</div>
</div>
<p class="blog-text">
そのため、wp_list_categories()で特定のカテゴリー内にある子カテゴリーをリンク付きで表示しています。
</p>
<p class="blog-text">
こちらも、カテゴリー名だけでなく、各カテゴリーの記事数も表示されています。
</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
こちらは方法はWordPressで登録しているカテゴリーの関係性を維持したままカテゴリーを表示しています。<br />
そのため、サイドバーなど、手軽にカテゴリーリストをHTML出力したい場合に有効かもです。
</p>
</div>
</div>
<h2 id="rtoc-7"  class="hh hh28">WordPressで特定のカテゴリー内の子カテゴリーをリンク付きで表示する実際のケース</h2>
<p class="blog-h2text">
<span class= "keiko_red">特定のカテゴリー内にある子カテゴリーをリンク付きで表示する実際のケース</span>を紹介します。
</p>
<p class="blog-text">
ここでご紹介するのは、下記の2ケースのとなります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示する</li>
<li>サイドバーに対象記事と関連するカテゴリーの投稿記事を表示する</li>
</div>
</div>
<p class="blog-text">
また、今回使用する親子カテゴリーも下記の画像のようになります。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1.webp" alt="WordPressのカテゴリー一覧画面" width="1000" height="590" class="alignnone size-full wp-image-13876" srcset="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-categoryList-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<h3 id="rtoc-8"  class="blog-h3head">対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示する</h3>
<p class="blog-text">
子カテゴリーのリンク付き表示は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示する場合</span></span>に使用できます。
</p>
<p class="blog-text">
対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示することで、自分が見たい記事のカテゴリーへ移動するため、滞在時間やPV数を上げることが可能になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● category.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
&lt;body&gt;
    &lt;main id=&quot;main_content&quot;&gt;
     &lt;?php
       $cat_id = get_query_var('cat');
      ?&gt;
     &lt;h2 class='h2-title'&gt;&lt;span&gt;&lt;?php echo single_cat_title(); ?&gt;&lt;/span&gt;の一覧記事&lt;/h2&gt;
     &lt;?php 
     $args = array('orderby' =&gt; 'name','order' =&gt; 'ASC','hide_empty' =&gt; 1);
     $categories = get_categories($args); 
     ?&gt;
     &lt;div class=&quot;childCat_list&quot;&gt;
       &lt;ul&gt;
        &lt;?php
        foreach($categories as $category):
          if(($category-&gt;parent) == $cat_id):
        ?&gt;
        &lt;li&gt;
          &lt;a href=&quot;&lt;?php echo get_category_link($category-&gt;term_id); ?&gt;&quot; class= &quot;linkBtn&quot;&gt;
            &lt;span&gt;&lt;?php echo $category-&gt;name; ?&gt;&lt;/span&gt; : 
            &lt;span&gt;&lt;?php echo $category-&gt;count; ?&gt;&lt;/span&gt;件
          &lt;/a&gt;
        &lt;/li&gt;
          &lt;?php endif; ?&gt;
        &lt;?php endforeach; ?&gt;  
      &lt;/ul&gt;
    &lt;/div&gt;   
     .
     .
     .
    &lt;/main&gt;
&lt;/body&gt;
&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style= "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.h2-title {
	text-align:center;
}
.childCat_list &gt; ul {
	text-align: center;
	padding: 0;
}
.childCat_list &gt; ul &gt; li {
	display:inline-block;
}	
.linkBtn {
  background-color: #fff;
  border: double 6px #3cb371;
  color: #3cb371;
  border-radius: 10px;
  padding: 10px;
  text-decoration: none;
  font-size: 1em;
}
.linkBtn:hover {
  background-color: #3cb371;
  border: double 6px #fff;
  color: #fff;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-result-2-1-min.gif" alt="対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13898" />
</div>
<p class="blog-text">
対象のカテゴリーページ一覧内に子カテゴリー名のボタンを表示しています。
</p>
<p class="blog-text">
そのため、子カテゴリー名のボタンをクリックすると、子カテゴリーページの一覧画面が表示されます。
</p>
<h3 id="rtoc-9"  class="blog-h3head">サイドバーに対象記事と関連するカテゴリーの投稿記事を表示する</h3>
<p class="blog-text">
また、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">サイドバーに対象記事と関連するカテゴリーの投稿記事を表示する場合</span></span>にも使用できます。
</p>
<p class="blog-text">
サイドバーに対象記事と関連するカテゴリーの投稿記事を表示することで、カテゴリー外の関連しそうな記事を続けて読んでくれる可能性があるため、滞在時間をあげることが可能になります。
</p>
<p class="blog-text" style= "font-weight: bold;">● sidebar.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div id=&quot;sidebar1&quot;&gt;
&lt;aside&gt;
    &lt;div id=&quot;sidebar&quot;&gt;
        &lt;?php if (is_single): ?&gt;
        &lt;p class=&quot;block-head&quot;&gt;関連カテゴリーの記事&lt;/p&gt;
        &lt;div class=&quot;block&quot;&gt;
            &lt;div class=&quot;block-group&quot;&gt;
        &lt;?php
            $the_cat = get_the_category();
            foreach ($the_cat as $category):
                $the_cat_id = $category-&gt;cat_ID;
                $the_cat_parent = $category-&gt;parent;
                if (!empty($the_cat_parent)):
                    $args = array('orderby' =&gt; 'name','order' =&gt; 'ASC','hide_empty' =&gt; 1,'exclude' =&gt; $the_cat_id);
                    $categories = get_categories($args);
                    foreach ($categories as $wpcategory):
                        if ($the_cat_parent == $wpcategory-&gt;parent): ?&gt;
                &lt;h2 class=&quot;side-block-head&quot;&gt;&lt;?php echo $wpcategory-&gt;name?&gt;&lt;/h2&gt;
                &lt;ul class=&quot;block-list&quot;&gt;
                &lt;?php $cat_posts = get_posts(array(
                    'post_type' =&gt; 'post', 
                    'category' =&gt; $wpcategory-&gt;cat_ID, 
                    'posts_per_page' =&gt; 3, 
                    'orderby' =&gt; 'date'
                ));
                global $post;
                if($cat_posts):
                    foreach($cat_posts as $post):
                        setup_postdata($post); ?&gt;
                    &lt;li&gt;
                        &lt;a href=&quot;&lt;?php the_permalink() ?&gt;&quot;&gt;&lt;?php the_post_thumbnail(); ?&gt;&lt;span class=&quot;side-post-title&quot;&gt;&lt;?php the_title(); ?&gt;&lt;/span&gt;&lt;/a&gt;&lt;/li&gt;&lt;/a&gt;
                    &lt;/li&gt;
                    &lt;?php endforeach; endif; 
                    wp_reset_postdata(); ?&gt;
                &lt;/ul&gt;
                &lt;?php endif; endforeach; ?&gt;
            &lt;?php endif; endforeach; ?&gt;
            &lt;/div&gt;
        &lt;/div&gt;
        &lt;?php endif; ?&gt;
    &lt;/div&gt;
    &lt;?php endif;?&gt;
&lt;/aside&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.side-head {	
	color: #ffffff;
    padding: 7px 13px;
    font-size: 1.2em;
    font-weight: bold;
    background: #6bb6ff;
    margin: 0;
    border-bottom: 2px solid #b3b8dc;
}
.block-group {
	box-sizing: border-box;
}
.sidebar .block-group h2 {
    margin-bottom: 0;
    padding: 7px 13px;
    font-size: 1.2em;
}
h2.side-block-head {
    margin: 0;
	color: #655d5d;
    background-color: #c8e4ff;
}
ul.block-list {
    margin: 0;
    background-color: #fff;
}
img.attachment-post-thumbnail.size-post-thumbnail.wp-post-image {
    width: 32%;
}
.block-list &gt; li {
    border-bottom: 1.5px dashed #e5e0e0
}
.block-list .side-post-title {
	margin-left: 8px;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2025/05/wordpress-childCatLink-result-2-2-min.gif" alt="サイドバーに対象記事と関連するカテゴリーの投稿記事を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13897" />
</div>
<p class="blog-text">
サイドバーに対象記事と関連するカテゴリーの投稿記事を表示しています。
</p>
<p class="blog-text">
そのため、「テスト1」の投稿記事には関連するカテゴリーの一覧として「テスト2」と「テスト3」が、「テスト3」の投稿記事には「テスト1」と「テスト2」が関連するカテゴリーの一覧としてサイドバーに表示されています。
</p>
<h2 id="rtoc-10"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
⚫︎ WordPressで特定のカテゴリー内の子カテゴリーをリンク付きで表示すると、下記のようなメリットがある。<br />
・ユーザビリティーが向上する<br />
・SEO対策になる
</p>
<p class="blog-text">
⚫︎ 特定のカテゴリー内にある子カテゴリーをリンク付きで表示するには下記の2つの方法がある。<br />
・get_categories()を使用する<br />
→WordPressに登録している全てのカテゴリーに対して処理を行う方法<br />
・wp_list_categories()を使用する<br />
→特定のカテゴリーと親子関係になっているカテゴリーのみに対して処理を行う方法
</p>
<p class="blog-text">
⚫︎ 特定のカテゴリー内にある子カテゴリーをリンク付きで表示する際には下記のようなケースで使用できる。<br />
・対象カテゴリーのページ内に子カテゴリーとして表示する<br />
・サイドバーで関連記事のカテゴリー一覧として表示する
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>海外からWordPressにアクセスするならVPN！使い方とおすすめサービスを解説！</title>
		<link>https://sossy-blog.com/useful/13725/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Sat, 14 Dec 2024 05:38:46 +0000</pubDate>
				<category><![CDATA[お役立ち]]></category>
		<category><![CDATA[ドメイン・サーバー]]></category>
		<category><![CDATA[WordPress]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13725</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年12月15日に投稿されました。) みなさんは海外でWordPressを使用したことがありますか？ 海外からWordPressにアクセスする際、接続制限やセキュリティが気になることがあります。 そんな ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年12月15日に投稿されました。)</p>
<p class="blog-h2text">
みなさんは海外でWordPressを使用したことがありますか？
</p>
<p class="blog-text">
海外からWordPressにアクセスする際、接続制限やセキュリティが気になることがあります。
</p>
<p class="blog-text">
そんな時、VPNを活用することで、海外からでも安全にWordPressの管理画面にアクセスし、作業を進めることが可能になります。
</p>
<p class="blog-text">
VPNとはVirtual Private Network(ヴァーチャル プライベート ネットワーク)といい、インターネットにアクセスする際に仮想の専用回線を利用する技術となります。
</p>
<p class="blog-text">
物理的な専用回線を使用せずにインターネットに接続するため、ウイルス感染など気にすることなく使用することができ、コストも抑えることが可能となります。
</p>
<p class="blog-text">
今回は、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">海外からWordPressにアクセスするのにVPNがおすすめである理由や実際の使い方、おすすめサービスなど</span></span>を紹介します。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
海外からでもWordPressを使用したい場合
</p>
<p class= "hh30">
不正アクセスを防ぎながらWordPressを使用したい場合
</p>
</div>
</div></div>
<h2 class="hh hh28">海外からWordPressにアクセスできる？</h2>
<p class="blog-h2text">
海外からWordPressにアクセスすることは可能なのかどうかというと可能です。
</p>
<p class="blog-text">
そもそも、WordPressとは、世界中で多くの人に選ばれている人気のCMSとなります。
</p>
<p class="blog-text">
CMSとは「Contents Management System」といい、Webサイトのコンテンツを管理・更新するためのシステムであり、利用することで初心者の方でも簡単にWebサイトを作成することが可能になります。
</p>
<p class="blog-text">
しかし、普段使用している国以外からアクセスしようとすると、<span class= "keiko_red">ログインページが表示されなかったりエラーが発生したりする</span>ことがあります。
</p>
<p class="blog-text">
これには主に、サーバー側のセキュリティ設定が関係しています。
</p>
<p class="blog-text">
一部のウェブホスティングサービスやセキュリティプラグインは、不正アクセスを防ぐために<span class= "keiko_red">国外からのアクセスを制限する機能</span>を搭載しています。
</p>
<p class="blog-text">
Webサイトの保護が強化される一方、正当なユーザーであっても海外からのアクセスが制限されることがあります。
</p>
<p class="blog-text">
ただし、海外からのアクセス制限は、セキュリティ設定を変更したり、VPNなどのツールを使ったりすることで回避が可能です。
</p>
<h2 class="hh hh28">海外からWordPressへのアクセスが制限される理由</h2>
<p class="blog-h2text">
海外からWordPressへのアクセスが制限される主な理由は、<span class= "keiko_red">サーバーセキュリティの観点</span>からあります。
</p>
<p class="blog-text">
不正アクセスやハッキングは国際的に行われることが多いため、一部のサーバーやプラグインでは国外や特定の地域からのログイン試行を自動的にブロックする仕組みを導入しています。
</p>
<p class="blog-text">
特に、海外のIPアドレスを制限する設定は、管理者アカウントの乗っ取りを防ぐセキュリティ対策として有効です。
</p>
<p class="blog-text">
ただし、その反面、正当な管理者が海外からアクセスする場合も同様に制限されてしまうため、海外から作業をすることが多い人の場合、不便を感じることもあるでしょう。
</p>
<h2 class="hh hh28">海外からWordPressにアクセスする2つの方法</h2>
<p class="blog-h2text">
それでは海外からWordPressにアクセスするにはどうすれば良いのでしょうか？
</p>
<p class="blog-text">
海外からWordPressにアクセスする方法は、主に2つあります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>海外アクセス制限をオフにする</li>
<li>VPNを使用する</li>
</div>
</div>
<p class="blog-text">
それぞれの方法についてご紹介していきます。
</p>
<h3 class="blog-h3head">海外アクセス制限をオフにする</h3>
<p class="blog-text">
まず1つ目は、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">海外アクセス制限をオフにする</span></span>ことです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-1.webp" alt="海外アクセス制限をオフにする
" width="1000" height="580" class="alignnone size-full wp-image-13752" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
海外からWordPressにアクセスする方法の1つ目は、レンタルサーバーのセキュリティ設定を変更し、海外IPアドレスからのアクセス制限を解除する方法です。
</p>
<p class="blog-text">
サーバーの設定画面で海外からのアクセス制限をオフにすることで、海外からでも日本と同じようにアクセスできるようになります。
</p>
<p class="blog-text">
しかし、アクセス制限を解除することには、一定のセキュリティリスクが伴います。
</p>
<p class="blog-text">
不正アクセスやハッキングのリスクが高まり、サイトの安全性が損なわれる可能性があるため、あくまで一時的な対処法として行うといいでしょう。
</p>
<p class="blog-text">
継続的に海外からWordPressにアクセスしたい場合は、より安全な方法としてVPNの使用がおすすめです。
</p>
<h3 class="blog-h3head">VPNを使用する</h3>
<p class="blog-text">
そして2つ目は、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">VPNを使用する</span></span>ことです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-2.webp" alt="VPNを使用する" width="1000" height="600" class="alignnone size-full wp-image-13751" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-2-300x180.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-2-768x461.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-2-2-940x564.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
VPNを使用することで、レンタルサーバーの海外アクセス制限を変更することなく、海外からWordPressにアクセスすることができます。
</p>
<p class="blog-text">
先ほども言いましたが、VPNとはインターネット上のセキュリティとプライバシーを強化する技術となります。
</p>
<p class="blog-text">
VPNを使って日本にあるサーバーに接続してユーザーのIPアドレスを隠し、あたかも日本国内からアクセスしているように見せかけることで、海外アクセス制限を回避することができます。
</p>
<p class="blog-text">
この方法の大きなメリットは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">安全性が高い</span></span>ことです。
</p>
<p class="blog-text">
海外からのアクセス制限を解除する必要がないため、不正アクセスのリスクを増加させることなく、どの国からでも必要な作業をスムーズに行えます。
</p>
<p class="blog-text">
さらに、VPNは通信データの暗号化機能を備えており、ログイン情報や作業内容を第三者に盗まれる心配もありません。
</p>
<p class="blog-text">
海外から安全にWordPressにアクセスしたいなら、VPNの活用が最適です。
</p>
<h2 class="hh hh28">VPNを使って海外からWordPressにアクセスする方法</h2>
<p class="blog-h2text">
こちらではVPNを使って海外からWordPressにアクセスする方法についてご紹介します。
</p>
<p class="blog-text">
VPNを使って海外からWordPressにアクセスするのは簡単で、一般的に以下の4ステップで行えます。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>VPNサービスに登録する</li>
<li>VPN専用アプリをインストールする</li>
<li>日本国内のサーバーに接続する</li>
<li>WordPressの管理画面にログインする</li>
</div>
</div>
<p class="blog-text">
ここでは例として、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">NordVPN</span></span>を使ったWordPressへのアクセス方法を手順ごとに詳しく解説します。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-6.webp" alt="NordVPNのロゴ" width="1000" height="580" class="alignnone size-full wp-image-13765" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-6-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-6-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-6-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text" style= "color: lightgray;">出典: NordVPN</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
NordVPNとは、サイバーセキュリティ企業Nord Securityが提供している個人向けの仮想プライベートネットワーク (VPN) サービスとなります。
</p>
</div>
</div>
<h3 class="blog-h3head">VPNサービスに登録する</h3>
<p class="blog-text">
まず、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">VPNサービスに登録</span></span>します。
</p>
<p class="blog-text">
VPNサービスは有料と無料版があるのですが、無料VPNはセキュリティリスクが高いため避け、セキュリティが高く、接続が安定しているプロバイダーを選ぶことが大切です。
</p>
<p class="blog-text">
NordVPNを利用する場合は、公式サイトにアクセスして購入ページに進みます。
</p>
<p class="blog-text">
NordVPNでは、利用できるデバイスの台数やセキュリティ機能などが異なる幅広いプランから選べます。
</p>
<p class="blog-text">
自分に合ったプランを選び、購入しましょう。
</p>
<div class= "btn--red">
<a class= 'link' href="https://nordvpn.com/ja/offer-site" rel="dofollow">公式サイトはこちらから</a>
</div>
<h3 class="blog-h3head">VPN専用アプリをインストールしログインする</h3>
<p class="blog-text">
VPNサービスへの登録が完了しましたら、WordPressにアクセスしたいお手持ちの端末に<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">VPN専用アプリをインストールしログイン</span></span>します。
</p>
<p class="blog-text">
NordVPNの場合は公式サイトのメニューに[VPNをダウンロード]がありますので、クリックし自分の対応しているデバイスを選択してインストールします。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-1.webp" alt="NordVPNの公式サイト" width="1000" height="580" class="alignnone size-full wp-image-13747" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text" style= "color: lightgray;">出典: NordVPN</p>
<p class="blog-text">
アプリをインストールしたら、IDとパスワードを入力してログインするだけで設定は完了です。
</p>
<p class="blog-text">
インストール後、右上の[ログイン/登録]をクリックし、登録した際のIDとパスワードを入力します。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-2.webp" alt="NordVPNの画面1" width="1000" height="580" class="alignnone size-full wp-image-13748" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-3.webp" alt="NordVPNの画面2" width="1000" height="600" class="alignnone size-full wp-image-13746" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-3-300x180.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-3-768x461.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-3-940x564.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
アプリを使って簡単にVPNを設定できるので、初心者の方でも簡単に設定することができます。
</p>
<h3 class="blog-h3head">日本国内のサーバーに接続する</h3>
<p class="blog-text">
VPN専用アプリをインストールし、ログインできましたら<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">日本国内のサーバーに接続</span></span>します。
</p>
<p class="blog-text">
NordVPNアプリではVPNサーバーの接続先一覧が表示されるので、「Japan（日本）」を選択します。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-4.webp" alt="NordVPNの画面3" width="1000" height="580" class="alignnone size-full wp-image-13749" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-4-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-4-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-4-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
「クイック接続」でもVPNサーバーに接続できますが、今回は日本のVPNサーバーにアクセスしたいので、必ず日本を選びましょう。
</p>
<p class="blog-text">
「Japanに接続済み」と表示されたら完了です。
</p>
<p class="blog-text">
接続が完了すると、接続先の日本のVPNサーバーのIPアドレスが表示されます。
</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
設定方法がとても簡単ですね！
</p>
</div>
</div>
<h3 class="blog-h3head">WordPressの管理画面にログインする</h3>
<p class="blog-text">
VPN接続が完了したら、通常通り<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressの管理画面にログイン</span></span>しましょう。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-5.webp" alt="WordPressのログイン画面" width="1000" height="600" class="alignnone size-full wp-image-13759" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-5-300x180.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-5-768x461.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-4-5-940x564.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
VPNを接続した状態で、今まで使用していたWordPressにログインします。
</p>
<p class="blog-text">
日本のVPNサーバーに接続されているので、まるで日本に居るかのようにWordPressにアクセスすることができます。
</p>
<h2 class="hh hh28">VPNを使う際の注意点</h2>
<p class="blog-h2text">
VPNサービスへの登録が完了したところですが、VPNを使ってWordPressにアクセスする際の注意点が2つあります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>接続が不安定になることがある</li>
<li>コストがかかる</li>
</div>
</div>
<p class="blog-text">
それぞれの注意点について解説していきます。
</p>
<h3 class="blog-h3head">接続が不安定になることがある</h3>
<p class="blog-text">
まず、1つ目は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">接続が不安定になることがある</span></span>ということです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-1.webp" alt="接続が不安定になる" width="1000" height="590" class="alignnone size-full wp-image-13757" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-1-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-1-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-1-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
VPNはインターネット接続を暗号化し、VPNサーバーを経由してアクセスする仕組みのため、接続が不安定になることがあります。
</p>
<p class="blog-text">
特に、海外から日本のサーバーに接続する際は、物理的な距離が遠いため、通信速度が低下したり遅延が発生したりすることもあります。
</p>
<p class="blog-text">
また、一部のウェブサイトやアプリケーションではVPN接続をブロックし、アクセスや機能が制限される可能性もあります。
</p>
<p class="blog-text">
これらの問題を最小限に抑えるには、接続速度や安定性に定評のあるVPNサービスを選ぶことが大切です。
</p>
<h3 class="blog-h3head">コストがかかる</h3>
<p class="blog-text">
そして、2つ目は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">コストがかかる</span></span>ということです。
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-2.webp" alt="コストがかかる" width="1000" height="590" class="alignnone size-full wp-image-13756" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-2-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-2-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-5-2-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
VPNの利用には、一定のコストが発生します。
</p>
<p class="blog-text">
中には、無料VPNもありますが、セキュリティや通信速度の面でリスクが伴うため、一般的には有料の信頼性の高いVPNサービスを選ぶことが推奨されます。
</p>
<p class="blog-text">
有料のVPNサービスの料金は、月額数百円から数千円と幅がありますが、長期プランを選ぶことでコストを抑えられることが多いです。
</p>
<p class="blog-text">
特に、海外からのWordPress管理にVPNを利用する場合、セキュリティが脆弱なサービスではサイバー攻撃のリスクが高まるため、十分な機能を備えたVPNを選ぶ必要があります。
</p>
<p class="blog-text">
コストを負担する価値があるかを判断し、用途や予算に最適なサービスを選択しましょう。
</p>
<h2 class="hh hh28">実際に「NordVPN」を使ってWordPressにアクセスしてみた</h2>
<p class="blog-h2text">
<span class= "keiko_red">実際に「NordVPN」を使用してWordPressにアクセスしてみました。</span>
</p>
<p class="blog-text">
ユーザーの登録からWordPressを使用するところまでの流れがとても簡単で、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">かかった時間は約5分くらい</span></span>でした。
</p>
<p class="blog-text">
登録の操作もわかりやすく、次になにをすればよいかが明確になっているため、初心者の方でも簡単に使用できるかと感じました。
</p>
<p class="blog-text">
そして、WordPressを使用した時の所感ですが、VPNの接続中は違和感を感じることなく、<span class= "keiko_red">普段使用しているWordPressと同様</span>な感じがしました。
</p>
<p class="blog-text">
また、海外滞在中にNordVPNを使って日本のサーバーに接続し、WordPressでの作業を行ったところ、日本に居るときと同じように作業ができました。
</p>
<p class="blog-text">
<span class= "keiko_red">接続速度も安定しており、ストレスを感じることもありませんでした。</span>
</p>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6.webp" alt="NordVPNを使用した時の接続状況画面" width="1000" height="575" class="alignnone size-full wp-image-13754" srcset="https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6-300x173.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6-768x442.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6-940x541.webp 940w, https://sossy-blog.com/wp-content/uploads/2024/12/nordvpn-wordpress-6-520x300.webp 520w" sizes="(max-width: 1000px) 100vw, 1000px" /></p>
<p class="blog-text">
僕も普段不正アクセスが多いことにストレスを感じていたため、いつも使用しているWordPressにプラスで不正アクセスを防ぐことができるのはとても利便性がよく、今後導入してみるのもありかと思います。
</p>
<h2 class="hh hh28">海外からWordPressを使うならNordVPNがおすすめ</h2>
<p class="blog-h2text">
海外からWordPressを安全かつスムーズに利用したいなら、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">NordVPN</span></span>がおすすめです。
</p>
<p class="blog-text">
上でも少しご紹介しましたが、NordVPNとは、サイバーセキュリティ企業Nord Securityが提供している個人向けの仮想プライベートネットワーク (VPN) サービスとなります。
</p>
<p class="blog-text">
世界111カ国に6,700台以上のサーバーを展開し、広範囲で安定した接続を提供しています。
</p>
<p class="blog-text">
そして、日本国内にも130台以上のサーバーを保持しているため、海外から日本国内のサービスやWordPressの管理画面へ簡単にアクセスできます。
</p>
<p class="blog-text">
また、NordVPNは、ノーログポリシーを採用し、セキュリティ面で高い評価を受けています。
</p>
<p class="blog-text">
高速通信技術により、WordPressの管理や編集作業もストレスなく行うことが可能です。
</p>
<p class="blog-text">
さらに、NordVPNによる「<a href='https://nordvpn.com/ja/ip-lookup/'>IPアドレスの検索機能</a>」を利用することで、自分が正しいサーバーに接続できているかを簡単に確認できます。
</p>
<p class="blog-text">
海外滞在中の作業効率と安全性を向上させるべく、ぜひNordVPNの活用をおすすめします！
</p>
<h2 class="hh hh28">まとめ</h2>
<p class="blog-h2text">
この記事では、海外からWordPressにアクセスする際に役立つVPNの使い方やおすすめサービスなどについて紹介しました。
</p>
<p class="blog-text">
VPNを使えば、海外からでも安全かつスムーズにWordPressを管理できます。
</p>
<p class="blog-text">
特に、信頼性の高いVPNサービスを選ぶことで、セキュリティと通信速度の両方を確保できる点は大きなメリットです。
</p>
<p class="blog-text">
海外滞在中で快適なサイト運営を続けたい方、不正アクセスが多くて悩んでいる方、ぜひVPNの導入を検討してみてください。
</p>
<div class="summary">
<p class="blog-text">
⚫︎ 海外からWordPressへのアクセスが制限される<br />
(不正アクセスやハッキングは国際的に行われることが多いため、国外や特定の地域からのログイン試行を自動的にブロックする仕組みを導入しているため)
</p>
<p class="blog-text">
⚫︎ 海外からWordPressにアクセスする方法は下記の2つがある。<br />
・海外アクセス制限をオフにする<br />
・VPNを使用する
</p>
<p class="blog-text">
⚫︎ VPNを使って海外からWordPressにアクセスするのは簡単で、一般的に以下の4ステップとなる。<br />
・VPNサービスに登録する<br />
・VPN専用アプリをインストールする<br />
・日本国内のサーバーに接続する<br />
・WordPressの管理画面にログインする
</p>
<p class="blog-text">
⚫︎ VPNを使ってWordPressにアクセスする際に下記の注意点が2つある。<br />
・接続が不安定になることがある<br />
・コストがかかる
</p>
<p class="blog-text">
⚫︎ 海外からWordPressを安全かつスムーズに利用するなら、NordVPNがおすすめ。
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【WordPress】get_the_category()でカテゴリー情報を取得！使い方を徹底解説！</title>
		<link>https://sossy-blog.com/wordpress/13568/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Thu, 31 Oct 2024 15:20:53 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[中級編]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13568</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年11月01日に投稿されました。) WordPressでカテゴリー情報を取得するにget_the_category()を使用します。 get_the_category()とは投稿記事に付与したカテゴリ ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年11月01日に投稿されました。)</p>
<p class="blog-h2text">
WordPressでカテゴリー情報を取得するにget_the_category()を使用します。
</p>
<p class="blog-text">
get_the_category()とは<span class= "keiko_red">投稿記事に付与したカテゴリーの情報を取得するWordPressの関数</span>となります。
</p>
<p class="blog-text">
パラメータに投稿記事のIDを指定することで、指定した記事に登録されているカテゴリーの情報を取得します。
</p>
<p class="blog-text">
そして、get_the_category()はWP_Term()のオブジェクトを返すため、カテゴリーの名前やスラッグなど必要なデータのみを取得することができます。
</p>
<p class="blog-text">
また、こちらの関数はカテゴリー情報を取得するのみになりますので、画面に出力したい場合はecho関数を使用しましょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressのget_the_category()でカテゴリー情報を取得する方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
投稿記事に付与したカテゴリーの情報を取得したい場合
</p>
<p class= "hh30">
カテゴリー情報を条件分岐として使用したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">get_the_category()とは</h2>
<p class="blog-h2text">
get_the_category()とは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">投稿記事に付与されているカテゴリーの情報を取得するWordPressの関数</span></span>になります。
</p>
<p class="blog-text">
投稿記事を公開した際に、カテゴリー枠にチェックを入れたカテゴリーの情報を取得することができるようになります。
</p>
<h3 id="rtoc-2"  class="blog-h3head">get_the_category()の書き方</h3>
<p class="blog-text">
get_the_category()の書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">get_the_category(['投稿記事ID'])</pre>
<p class="blog-text">
get_the_category()と記載し、括弧の中に<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">任意な引数を1つ</span></span>指定することで使用できます。
</p>
<h3 id="rtoc-3"  class="blog-h3head">get_the_category()のパラメータ</h3>
<p class="blog-text">
get_the_category()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>投稿記事ID: 任意<br />
カテゴリーの情報を取得したい投稿記事のIDを指定する。</li>
</ol>
</div>
</div>
<p class="blog-text">
get_the_category()を記載し、括弧の中に任意の引数として、「投稿記事ID」を指定します。
</p>
<h3 id="rtoc-4"  class="blog-h3head">get_the_category()の戻り値</h3>
<p class="blog-text">
get_the_category()の戻り値は「WP_Tearmオブジェクト」であり、カテゴリー情報（オブジェクト）を配列に格納して返すようになります。
</p>
<h3 id="rtoc-5"  class="blog-h3head">get_the_category()の呼び出し元</h3>
<p class="blog-text">
get_the_category()の呼び出し元は「post-templete.php」となります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">function get_the_category( $post_id = false ) {
	$categories = get_the_terms( $post_id, 'category' );
	if ( ! $categories || is_wp_error( $categories ) ) {
		$categories = array();
	}

	$categories = array_values( $categories );

	foreach ( array_keys( $categories ) as $key ) {
		_make_cat_compat( $categories[ $key ] );
	}

	/**
	 * Filters the array of categories to return for a post.
	 *
	 * @since 3.1.0
	 * @since 4.4.0 Added the `$post_id` parameter.
	 *
	 * @param WP_Term[] $categories An array of categories to return for the post.
	 * @param int|false $post_id    The post ID.
	 */
	return apply_filters( 'get_the_categories', $categories, $post_id );
}</pre>
<p class="blog-text">
get_the_category()は、get_the_terms()を呼び出しており、指定した投稿記事IDのカテゴリー情報を返しています。
</p>
<h2 id="rtoc-6"  class="hh hh28">get_the_category()でカテゴリー情報を取得するサンプルコード</h2>
<p class="blog-h2text">
<span class= "keiko_red">get_the_category()でカテゴリー情報を取得するサンプルコード</span>を紹介します。
</p>
<p class="blog-text">
ここでは、下記の2ケースでget_the_category()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>存在する投稿記事IDを指定する場合</li>
<li>存在しない投稿記事IDを指定する場合</li>
</div>
</div>
<h3 id="rtoc-7"  class="blog-h3head">存在する投稿記事IDを指定する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">存在する投稿記事IDを指定する場合</span></span>にget_the_category()を使用すると、指定した投稿記事に付与されているカテゴリーの情報を取得します。
</p>
<p class="blog-text">
試しに、下記の画像である投稿記事IDが「141」の記事に付与されたカテゴリー情報を取得します。
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿記事一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-1-.webp" alt="Wordressの記事一覧画面-1" width="1000" height="580" class="alignnone size-full wp-image-13647" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-1-.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-1--300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-1--768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-1--940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-1.webp" alt="Wordressのカテゴリー一覧画面-1" width="1000" height="570" class="alignnone size-full wp-image-13662" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの情報を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;&lt;?php print_r($cat); ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-1.webp" alt="存在する投稿記事IDを指定してWordPressのget_the_category()でカテゴリー情報を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13645" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()で指定した投稿記事に付与されているカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
「141」の投稿記事には「お知らせ」というカテゴリーが付与されていたため、「お知らせ」のカテゴリー情報がオブジェクトとして表示されています。
</p>
<h3 id="rtoc-8"  class="blog-h3head">存在しない投稿記事IDを指定する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">存在しない投稿記事IDを指定する場合</span></span>にget_the_category()を使用すると、カテゴリー情報を取得しません。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの情報を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(9999); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;&lt;?php print_r($cat); ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-2.webp" alt="存在しない投稿記事IDを指定してWordPressのget_the_category()でカテゴリー情報を取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13644" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()で指定した投稿記事に付与されているカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
「9999」を指定していますが、「9999」を持つ投稿記事が存在しないため、カテゴリー情報を取得することができず「array(」のみが表示されています。
</p>
<h2 id="rtoc-9"  class="hh hh28">投稿記事IDを指定しないでget_the_category()を使用する場合</h2>
<p class="blog-h2text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">投稿記事IDを指定しない場合</span></span>にget_the_category()を使用すると、最新の投稿記事に付与されているカテゴリー情報を取得します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの情報を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;&lt;?php print_r($cat); ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿記事一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-2-.webp" alt="Wordressの記事一覧画面-1" width="1000" height="570" class="alignnone size-full wp-image-13646" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-2-.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-2--300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-2--768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-2--940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-3.webp" alt="投稿記事IDを指定しないでWordPressのget_the_category()でカテゴリー情報を取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13643" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-3-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-3-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-1-3-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()で指定した投稿記事に付与されているカテゴリーの情報を取得しています。
</p>
<p class="blog-text">
投稿記事IDを指定していないため、一番最新の投稿記事に付与されている「」のカテゴリー情報が表示されています。
</p>
<h2 id="rtoc-10"  class="hh hh28">get_the_category()でカテゴリー情報を別々で取得する場合</h2>
<p class="blog-h2text">
<span class= "keiko_red">get_the_category()でカテゴリー情報を別々で取得する場合</span>は、取得したデータに対して、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">アロー演算子</span></span>を使用します。
</p>
<p class="blog-text">
アロー演算子とは、<span class= "keiko_red">オブジェクトの中身にアクセスするための演算子</span>であリ、オブジェクトが持つプロパティやメソッドを呼び出すことができます。
</p>
<p class="blog-text">
そのため、取得したオブジェクトに対してアロー演算子を使用すると、取得したカテゴリー情報を別々で取得することが可能になります。
</p>
<p class="blog-text">
ここでは下記の6ケースでget_the_category()を使用し、カテゴリーの情報を別々で取得します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>カテゴリーの名前を取得する場合</li>
<li>カテゴリーのIDを取得する場合</li>
<li>カテゴリーのスラッグ名を取得する場合</li>
<li>カテゴリーの説明を取得する場合</li>
<li>カテゴリーの投稿数を取得する場合</li>
<li>親カテゴリーのIDを取得する場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-11"  class="blog-h3head">カテゴリーの名前を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーの名前を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">name</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">cat_name</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの名前を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;name: &lt;?php echo $cat-&gt;name; ?&gt;&lt;/p&gt;
    &lt;p&gt;cat_name: &lt;?php echo $cat-&gt;cat_name; ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-1.webp" alt="WordPressのget_the_category()でカテゴリーの名前を取得した結果" width="1000" height="560" class="alignnone size-full wp-image-13649" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-1-300x168.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-1-768x430.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-1-940x526.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()でカテゴリーの名前を取得しています。
</p>
<p class="blog-text">
そのため、カテゴリーの名前である「お知らせ」が表示されています。
</p>
<h3 id="rtoc-12"  class="blog-h3head">カテゴリーのIDを取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーのIDを取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">term_id</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">cat_ID</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーのIDを取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;term_id: &lt;?php echo $cat-&gt;term_id; ?&gt;&lt;/p&gt;
    &lt;p&gt;cat_ID: &lt;?php echo $cat-&gt;cat_ID; ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-2.webp" alt="WordPressのget_the_category()でカテゴリーのIDを取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13622" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()でカテゴリーのIDを取得しています。
</p>
<p class="blog-text">
そのため、「お知らせ」カテゴリーのIDである「8」が表示されています。
</p>
<h3 id="rtoc-13"  class="blog-h3head">カテゴリーのスラッグ名を取得する場合</h3>
<p class="blog-text">
カテゴリー名を取得する場合は、get_category()で取得したオブジェクトに対して、「slug」もしくは「category_nicename」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーのスラッグ名を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;slug: &lt;?php echo $cat-&gt;slug; ?&gt;&lt;/p&gt;
    &lt;p&gt;category_nicename: &lt;?php echo $cat-&gt;category_nicename; ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-3.webp" alt="WordPressのget_the_category()でカテゴリーのスラッグを取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13654" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-3-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-3-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-3-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()でカテゴリーのスラッグを取得しています。
</p>
<p class="blog-text">
そのため、「お知らせ」カテゴリーのスラッグである「news」が表示されています。
</p>
<h3 id="rtoc-14"  class="blog-h3head">カテゴリーの説明を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリーの説明を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">description</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_description</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの説明を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;description: &lt;?php echo $cat-&gt;description; ?&gt;&lt;/p&gt;
    &lt;p&gt;category_description: &lt;?php echo $cat-&gt;category_description; ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-4.webp" alt="WordPressのget_the_category()でカテゴリーの説明を取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13658" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-4-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-4-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-4-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<h3 id="rtoc-15"  class="blog-h3head">カテゴリーの投稿数を取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">カテゴリー名を取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">count</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_count</span></span>」というプロパティを指定します。
</p>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()でカテゴリーの投稿数を取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;count: &lt;?php echo $cat-&gt;count; ?&gt;&lt;/p&gt;
    &lt;p&gt;category_count: &lt;?php echo $cat-&gt;category_count; ?&gt;&lt;/p&gt;
  &lt;/div&gt; 
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-5.webp" alt="WordPressのget_the_category()でカテゴリーの投稿数を取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13657" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-5-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-5-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-5-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()でカテゴリーの投稿数を取得しています。
</p>
<p class="blog-text">
そのため、「お知らせ」のカテゴリーの投稿数である「6」が表示されています。
</p>
<h3 id="rtoc-16"  class="blog-h3head">親カテゴリーのIDを取得する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">親カテゴリーのIDを取得する場合</span></span>は、get_category()で取得したオブジェクトに対して、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">parent</span></span>」もしくは「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">category_parent</span></span>」というプロパティを指定します。
</p>
<p class="blog-text">
ここでは下記2つの投稿記事に付与されているカテゴリー情報を取得します
</p>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿記事一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-3.webp" alt="Wordressの記事一覧画面-3" width="1000" height="570" class="alignnone size-full wp-image-13660" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-3-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-3-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-3-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">カテゴリー一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-2.webp" alt="Wordressのカテゴリー一覧画面-2" width="1000" height="570" class="alignnone size-full wp-image-13663" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-cat-list-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()で親カテゴリーのIDを取得&lt;/h1&gt;
  &lt;?php $category = get_the_category(141); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;parent: &lt;?php echo $cat-&gt;parent; ?&gt;&lt;/p&gt;
    &lt;p&gt;category_parent: &lt;?php echo $cat-&gt;category_parent; ?&gt;&lt;/p&gt;
  &lt;/div&gt;
  &lt;?php $category = get_the_category(); ?&gt;
  &lt;?php $cat =  $category[0]; ?&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
    &lt;p&gt;parent: &lt;?php echo $cat-&gt;parent; ?&gt;&lt;/p&gt;
    &lt;p&gt;category_parent: &lt;?php echo $cat-&gt;category_parent; ?&gt;&lt;/p&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-6.webp" alt="WordPressのget_the_category()で親カテゴリーのIDを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13656" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-6-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-6-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-2-6-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_category()で親カテゴリーIDを取得しています。</p>
<p class="blog-text">
「お知らせ」カテゴリーは親がいないため、「0」が表示されています。</p>
<p class="blog-text">
また、「テスト1」カテゴリーは親が存在するため、親カテゴリー「テスト」のIDである「8」が表示されています。
</p>
<h2 id="rtoc-17"  class="hh hh28">get_the_category()で複数のカテゴリー情報を取得する場合</h2>
<p class="blog-h2text">
先ほどまでは、引数に1つのカテゴリー情報を取得していましたが、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">2つ以上のカテゴリー情報</span></span>をまとめて取得することもできます。
</p>
<p class="blog-text">
get_the_category()で複数のカテゴリー情報を取得するには<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">foreach()</span></span>を使用します。
</p>
<p class="blog-text">
foreach()とは、指定した配列のそれぞれの要素に対して処理を行う文法になります。
</p>
<p class="blog-text">
今回、カテゴリー情報はオブジェクトで取得するため、forEach()を使用することで記事に紐づいている複数のカテゴリー情報を取得することが可能になります。
</p>
<p class="blog-text">
もし、<span class= "keiko_red">foreach()について詳しく知りたい場合</span>は下記の記事をご参考ください。
</p>
<div class="linkcard"><div class="lkc-internal-wrap"><a class="lkc-link no_icon" href=""https://sossy-blog.com/useful/4951"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon lazyloaded loaded" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width="16" height="16" data-src="https://www.google.com/s2/favicons?domain=sossy-blog.com" decoding="async" data-was-processed="true"><noscript><img decoding="async" class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width=16 height=16 data-eio="l"/></noscript><div class="lkc-domain">Sossyの助太刀ブログ</div><div class="lkc-date">9月 18, 2022</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img decoding="async" width="150" height="150" src="https://sossy-blog.com/wp-content/uploads/2022/09/php-foreach-icatch-150x150.webp" class="lkc-thumbnail-img loaded ls-is-cached lazyloaded wp-post-image" alt="【PHP】foreach文で配列や連想配列の要素数に合わせて繰り返し処理を行う！" srcset="https://sossy-blog.com/wp-content/uploads/2022/09/php-foreach-icatch-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/09/php-foreach-icatch-160x160.webp 160w" sizes="(max-width: 150px) 100vw, 150px" /></figure><div class="lkc-title"><div class="lkc-title-text">【PHP】foreach文で配列や連想配列の要素数に合わせて繰り返し処理を行う！</div></div><div class="lkc-url">"https://sossy-blog.com/useful/4951</div></div><div class="clear"></div></div></a></div></div>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
  &lt;h1 class=&quot;entry-title&quot;&gt;get_the_category()で複数のカテゴリー情報を取得&lt;/h1&gt;
  &lt;div class= &quot;cat-info&quot;&gt;
  &lt;?php 
   $categories = get_the_category(141);
   foreach ( $categories as $category ) {
	echo '&lt;p&gt;';
    print_r($category);
	echo '&lt;/p&gt;';
   }
  ?&gt;
  &lt;/div&gt;
  &lt;div class= &quot;cat_info&quot;&gt;
  &lt;?php
   $categories = get_the_category(141);
   foreach ( $categories as $category ) {
    $cat_name = $category-&gt;name;
    $cat_slug = $category-&gt;slug;
    echo '&lt;p&gt;'.$name.$cat_name.'&lt;/p&gt;';
    echo '&lt;p&gt;'.$slug.$cat_slug.'&lt;/p&gt;';
   }
  ?&gt;
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-4.webp" alt="Wordressの記事一覧画面-4" width="1000" height="570" class="alignnone size-full wp-image-13667" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-4-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-4-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-4-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-3-min.gif" alt="WordPressのget_the_category()で複数のカテゴリーの情報を取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13665" />
</div>
<p class="blog-text">
get_the_category()で複数のカテゴリー情報を取得しています。
</p>
<p class="blog-text">
今回は「お知らせ」と「テスト」のカテゴリーが付与されているため、それぞれのカテゴリー情報が表示されています。
</p>
<p class="blog-text">
また、それぞれのカテゴリー情報から「カテゴリー名」と「スラッグ」を取得して表示されています。
</p>
<h2 id="rtoc-18"  class="hh hh28">get_the_category()を使用した実際のケース</h2>
<p class="blog-h2text">
get_the_category()を使用した実際のケースについてご紹介します。
</p>
<h3 id="rtoc-19"  class="blog-h3head">投稿記事と同じカテゴリーの記事を表示する</h3>
<p class="blog-text">
get_the_category()を使用することで、カテゴ投稿記事と同じカテゴリーの記事を表示することができます。
</p>
<p class="blog-text">
例えば、表示している投稿記事内に関連記事の枠を設け、その枠に同じカテゴリーに属している投稿記事を関連記事として表示することができます。
</p>
<p class="blog-text">
するとサイト内での循環がよくなり、サイト内の投稿記事をみたユーザがほかの記事を見てくれるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;&lt;?php the_title(); ?&gt;&lt;/h1&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;

    &lt;h2 style='text-align:center;'&gt;関連記事&lt;/h2&gt;
    &lt;div class='related-list'&gt;
      &lt;?php 
        $post_id = get_the_ID();
        $post_cat = get_the_category();
        $post_slug = $post_cat[0]-&gt;slug;
      ?&gt;
      &lt;?php
        $args = array(
          'post_type'      =&gt; 'post', // 投稿タイプ
          'posts_per_page' =&gt; 9, // 表示件数
          'post__not_in'   =&gt; array($post_id), // 自分記事
          'category_name'  =&gt; $post_slug
        );

        $wp_query = new WP_Query( $args );
　　　   $the_query = new WP_Query($args);
        if($the_query-&gt;have_posts()):
        while($the_query-&gt;have_posts()): $the_query-&gt;the_post();
      ?&gt;
        &lt;div class=&quot;related-post&quot;&gt;
           &lt;h3&gt;&lt;?php the_title(); ?&gt;&lt;/h3&gt;
            &lt;div class=&quot;post-thumb&quot;&gt;
               &lt;?php the_post_thumbnail(); ?&gt;
            &lt;/div&gt;
        &lt;/div&gt;
      &lt;?php
        endwhile;
        endif;
      ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.related-list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 auto;
    width: 60%;
    margin: 0 auto;
}
.related-post {
    width: 32%;
    border: 2px solid black;
    margin-top: 8px;
    margin-right: 2%;
    list-style:none;
}
.related-post &gt; a {
    text-decoration:none;
}
.related-post:nth-child(3n) {
    margin-right: 0;
}
.post-thumb {
    width: 100%;
    height: 100%;
}
.post-title {
    margin: 16px;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-1.webp" alt="Wordressの記事一覧画面-5(特定のカテゴリーでフィルター)" width="1000" height="570" class="alignnone size-full wp-image-13702" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-4-1-min.gif" alt="WordPressのget_the_category()で投稿記事に対する関連記事を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13709" />
</div>
<p class="blog-text">
get_the_category()で投稿記事と同じカテゴリーの記事を表示しています。
</p>
<p class="blog-text">
WP_Query()オブジェクトで同じカテゴリに属している自分以外の投稿記事を10件取得するようにしています。
</p>
<p class="blog-text">
そのため、それぞれの記事を表示すると同じカテゴリに属している投稿記事が関連記事として表示されています。
</p>
<h3 id="rtoc-20"  class="blog-h3head">付与しているカテゴリーで表示する内容を変える</h3>
<p class="blog-text">
get_the_category()を使用することで、付与しているカテゴリーで表示する内容を変えることができます。
</p>
<p class="blog-text">
例えば、get_the_category()で「お知らせ」のカテゴリーを付与している記事と「紹介」のカテゴリーを付与している記事とで、それぞれ異なるキャッチ文を表示します。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
    &lt;?php 
      $post_cat = get_the_category();
      $post_slug = $post_cat[0]-&gt;slug;
    ?&gt;
    
    &lt;?php 
      $content1 = '';
      $content2 = ''; 
      switch ($post_slug) {
        case 'news':
          $content1 = '2024年12月9日に新しいエリアがオープン！';
          $content2 = '詳しい情報はこちらから！';
          break
        case 'intro':
          $content1 = '岩盤浴エリアでは9つのエリアが遊び放題！';
          $content2 = 'フードコートもあり、子供も大人も一日中楽しめます！';
          break
        }
    ?&gt;

    &lt;?php
      if ($content1 != '' || $content2 != '') {
        $html1 =  &quot;&lt;div class= 'new-title'&gt;&lt;p&gt;&quot;.$content1.'&lt;/p&gt;';
        $html2 = '&lt;p&gt;'.$content2.'&lt;/p&gt;&lt;/div&gt;';
        echo $html1.$html2;
       }
    ?&gt;
       &lt;?php the_post_thumbnail('medium'); ?&gt;
       &lt;?php the_title('&lt;h1&gt;', '&lt;/h1&gt;'); ?&gt;
    &lt;/header&gt;

    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;

    &lt;footer&gt;&lt;/footer&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.new-title {
	text-align:center;
	font-size:20px;
	font-weight:bold;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿一覧画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-post-list-5-2.webp" alt="Wordressの記事一覧画面-5-2" width="1000" height="580" class="alignnone size-full wp-image-13708" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_category-result-4-2-min.gif" alt="WordPressのget_the_category()で付与しているカテゴリーで表示する内容を変えて表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13707" />
</div>
<p class="blog-text">
get_the_category()で取得したデータからスラッグ名を取得し、スラッグ名を条件として該当する記事には投稿内容の前に固定の文字列を出力するようにしています。
</p>
<p class="blog-text">
そのため、「お知らせ」のカテゴリーに属している記事と「紹介」のカテゴリーに属している記事にはそれぞれ別の文章が表示されています。
</p>
<h2 id="rtoc-21"  class="hh hh28">全てのカテゴリー情報を取得する場合</h2>
<p class="blog-h2text">
全てのカテゴリー情報を取得するには、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">get_categories()</span></span>を使用します。
</p>
<p class="blog-text">
get_categories()とは、<span class= "keiko_red">WordPress上で登録されているカテゴリーの情報を全て取得することができるWordPressの関数</span>になります。
</p>
<p class="blog-text">
カテゴリー情報を取得するため、こちらのWP_Term()のオブジェクトを返すようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;div class= 'cat-list'&gt;
 &nbsp;&lt;h1 class=&quot;entry-title&quot;&gt;get_categories()で全てのカテゴリー情報を取得&lt;/h1&gt;
  &lt;?php $categories = get_categories(); ?&gt;
  &lt;div&gt;
　　　&lt;ol&gt;
　　　&lt;?php 
	foreach( $categories as $category ) {
　　　　　　$category = $category-&gt;name; 
　　　　　　echo '&lt;li style=&quot;text-align: left;&quot;&gt;'.$category.'&lt;/li&gt;';
	}
　　　　?&gt;
　　　&lt;/ol&gt;	 
  &lt;/div&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_categories-result.webp" alt="WordPressのget_categories()で全てのカテゴリーの情報を取得した結果" width="1000" height="570" class="alignnone size-full wp-image-13677" srcset="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_categories-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_categories-result-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_categories-result-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_categories-result-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_categories()で全てのカテゴリー情報を取得しています。
</p>
<p class="blog-text">
今回はカテゴリー名だけを表示したため、WordPress内に登録されている全てのカテゴリー名が表示されています。
</p>
<h2 id="rtoc-22"  class="hh hh28">カテゴリーをHTML要素として表示する場合</h2>
<p class="blog-h2text">
カテゴリーをHTML要素として表示するには、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">the_category()</span></span>を使用します。
</p>
<p class="blog-text">
the_category()とは、<span class= "keiko_red">投稿記事に付与されているカテゴリー名をHTMLタグ付きで表示することができるWordPressの関数</span>になります。
</p>
<p class="blog-text">
リンク付きで表示することができるため、それぞれの記事にカテゴリー名を表示したり、カテゴリーページと繋げたりしたい場合に使用できます。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">ndex.html
&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;the_category()でカテゴリーをHTML要素として表示&lt;/h1&gt;
    　　&lt;div&gt;
　　　　　　&lt;?php the_post_thumbnail('thumbnail'); ?&gt;
　　　　　　&lt;?php the_title('&lt;h3&gt;', '&lt;/h3&gt;') ?&gt;
   　　 &lt;/div&gt;　　
    &lt;/header&gt; 
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
    &lt;div&gt;
       &lt;?php the_category(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-the_category-result-min.gif" alt="the_category()でカテゴリーをHTML要素として表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13678" />
</div>
<p class="blog-text">
the_category()でカテゴリーをHTML要素として表示しています。
</p>
<p class="blog-text">
そのため、それぞれの投稿記事に付与されているカテゴリーがリンク付きで表示されています。
</p>
<h2 id="rtoc-23"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
⚫︎ get_the_category()とは、投稿記事に付与されているカテゴリーの情報をオブジェクトで取得するWordPressの関数である。
</p>
<p class="blog-text">
⚫︎ get_the_category()は下記のパラメータを指定して使用する。<br />
・投稿記事ID(任意)
</p>
<p class="blog-text">
⚫︎ 存在する投稿記事IDを指定してget_the_category()を使用すると、付与されているカテゴリー情報を取得する。
</p>
<p class="blog-text">
⚫︎ 存在しない投稿記事IDを指定してget_the_category()を使用すると、カテゴリー情報を取得しない。
</p>
<p class="blog-text">
⚫︎ 投稿記事IDを指定しないでget_the_category()を使用すると、最新記事に付与されたカテゴリー情報を取得する。
</p>
<p class="blog-text">
⚫︎ get_the_category()でカテゴリー情報を別々で取得する場合は、get_the_category()で取得したデータに対してアロー演算子を使用し、プロパティを指定して使用する。<br />
・カテゴリーの名前を取得する場合:<br />
　→ プロパティは「name」もしくは「cat_name」<br />
・カテゴリーのIDを取得する場合:<br />
　→ プロパティは「term_id」もしくは「cat_ID」<br />
・カテゴリーのスラッグ名を取得する場合<br />
　→ プロパティは「slug」もしくは「category_nicename」<br />
・カテゴリーの説明を取得する場合<br />
　→ プロパティは「description」もしくは「category_description」<br />
・カテゴリーの投稿数を取得する場合<br />
　→ プロパティは「copunt」もしくは「category_count」<br />
・親カテゴリーのIDを取得する場合<br />
　→ プロパティは「parent」もしくは「category_parent」
</p>
<p class="blog-text">
⚫︎ get_the_category()で複数のカテゴリー情報を取得するにはforeach()と組み合わせて使用する。
</p>
<p class="blog-text">
⚫︎ get_the_category()の具体的な使用ケースとして下記のようなものがある。<br />
・ブログカードとして表示する<br />
・ジャンル別に分けて表示する
</p>
<p class="blog-text">
⚫︎ 全てのカテゴリー情報を取得するには、get_categories()を使用する。
</p>
<p class="blog-text">
⚫︎ カテゴリーをHTML要素として表示するには、the_category()を使用する。
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【WordPress】get_the_title()でページのタイトルを取得する！</title>
		<link>https://sossy-blog.com/wordpress/9727/</link>
					<comments>https://sossy-blog.com/wordpress/9727/#respond</comments>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Wed, 02 Oct 2024 17:08:10 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[中級編]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=9727</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_title-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年10月03日に投稿されました。) WordPressでページのタイトルを取得するにはget_the_title()を使用します。 get_the_title()とは指定したページのタイトルを取得する ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/10/wordpress-get_the_title-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年10月03日に投稿されました。)</p>
<p class="blog-h2text">
WordPressでページのタイトルを取得するにはget_the_title()を使用します。
</p>
<p class="blog-text">
get_the_title()とは<span class= "keiko_red">指定したページのタイトルを取得するWordPressの関数</span>となります。
</p>
<p class="blog-text">
パラメータに記事のIDを指定することで、指定した投稿ページのタイトル枠に入力された文字列を取得することができます。
</p>
<p class="blog-text">
あくまで、タイトルの文字列を取得するだけになりますので、もし取得したタイトルをページ上に出力したい場合はecho関数などで出力するようにしてください。
</p>
<p class="blog-text">
また、こちらの関数を使用することで、サイトのTOPページ上投稿記事の一覧を表示することができたり、ジャンル別で表示したりしてとても便利ですのでもし、ページのタイトルを取得したい場合は使用しましょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressのget_the_title()でページのタイトルを取得する方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
指定した投稿記事のタイトルを取得する場合
</p>
<p class= "hh30">
投稿記事のタイトルを一覧で取得する場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">get_the_title()とは</h2>
<p class="blog-h2text">
get_the_title()とは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">指定したページのタイトルを取得するWordPressの関数</span></span>になります。
</p>
<p class="blog-text">
投稿ページ編集画面に表示されているタイトル枠に入力した文字列を取得するようになります。
</p>
<h3 id="rtoc-2"  class="blog-h3head">get_the_title()の書き方</h3>
<p class="blog-text">
get_the_title()の書き方は下記のようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">get_the_title('記事のID')</pre>
<p class="blog-text">
get_the_title()と記載し、括弧の中に<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">必須な引数を1つ</span></span>指定することで使用できます。
</p>
<h3 id="rtoc-3"  class="blog-h3head">get_the_title()のパラメータ</h3>
<p class="blog-text">
get_the_title()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>記事ID:必須<br />
タイトルを取得したい投稿記事や固定記事のIDを指定する。</li>
</ol>
</div>
</div>
<p class="blog-text">
get_the_title()は、必須な引数として「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">記事のID</span></span>」を指定します。
</p>
<h3 id="rtoc-4"  class="blog-h3head">get_the_title()の戻り値</h3>
<p class="blog-text">
get_the_title()の戻り値は投稿の<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">タイトルの文字列</span></span>となります。
</p>
<h3 id="rtoc-5"  class="blog-h3head">get_the_title()の呼び出し元</h3>
<p class="blog-text">
get_the_title()の呼び出し元は、post-template.phpになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">function get_the_title( $post = 0 ) {
	$post = get_post( $post );
	$post_title = isset( $post-&gt;post_title ) ? $post-&gt;post_title : '';
	$post_id    = isset( $post-&gt;ID ) ? $post-&gt;ID : 0;

	if ( ! is_admin() ) {
		if ( ! empty( $post-&gt;post_password ) ) {
			$prepend = __( 'Protected: %s' );
			$protected_title_format = apply_filters( 'protected_title_format', $prepend, $post );
			$post_title = sprintf( $protected_title_format, $post_title );

		} elseif ( isset( $post-&gt;post_status ) &amp;&amp; 'private' === $post-&gt;post_status ) {
			$prepend = __( 'Private: %s' );
			$private_title_format = apply_filters( 'private_title_format', $prepend, $post );
			$post_title = sprintf( $private_title_format, $post_title );
		}
	}
	return apply_filters( 'the_title', $post_title, $post_id );
}</pre>
<p class="blog-text">
記事から記事のタイトルを取得し、管理画面を表示していないならば、そのままタイトルを取得します。
</p>
<p class="blog-text">
また、管理画面の場合は条件によって「パスワード保護のタイトル」か「非公開のタイトル」を取得するようになります。
</p>
<h2 id="rtoc-6"  class="hh hh28">get_the_title()でページのタイトルを取得するサンプルコード</h2>
<p>get_the_title()で<span class= "keiko_red">記事のタイトルを取得するサンプルコード</span>をご紹介します。</p>
<p class="blog-text">
ここでは下記の2パータンでget_the_title()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>記事のIDが存在するIDである場合</li>
<li>記事のIDが存在しないIDである場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-7"  class="blog-h3head">記事のIDが存在するIDである場合</h3>
<p class="blog-text">
記事IDが存在するIDである場合にget_the_title()を使用すると、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">記事で設定したタイトルの文字列</span></span>を取得します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php $title = get_the_title(82) ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-1.webp" alt="記事のIDが存在するIDである場合にWordPressのget_the_title()でページのタイトルを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13493" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
記事のIDが存在するIDである場合にget_the_title()でページのタイトルを取得しています。
</p>
<p class="blog-text">
今回は「82」の記事IDを指定したため、「記事で登録したタイトルを表示！」が表示されています。
</p>
<h3 id="rtoc-8"  class="blog-h3head">記事のIDが存在しないIDである場合</h3>
<p class="blog-text">
記事IDが存在しないIDである場合にget_the_title()を使用すると、ページのタイトルが取得できず、「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">名称未設定</span></span>」という文字列を取得します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php $title = get_the_title(999) ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-2.webp" alt="記事のIDが存在しないIDである場合にWordPressのget_the_title()でページのタイトルを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13528" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-1-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
記事のIDが存在しないIDである場合にget_the_title()でページのタイトルを取得しています。
</p>
<p class="blog-text">
存在しないIDの投稿ページを指定したため、「名称未設定」が表示されています。
</p>
<h2 id="rtoc-9"  class="hh hh28">get_the_title()で公開状態の異なるページのタイトルを取得する場合</h2>
<p class="blog-h2text">
get_the_title()で公開状態の異なるページのタイトルを取得すると、管理画面では<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">取得したタイトルの先頭に特定の文字列</span></span>がつくようになります。
</p>
<p class="blog-text">
そのため、ここでは下記の3パータンでget_the_title()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>投稿ページが公開状態である場合</li>
<li>投稿ページがパスワード保護状態である場合</li>
<li>投稿ページが非公開状態である場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-10"  class="blog-h3head">投稿ページが公開状態ある場合</h3>
<p class="blog-text">
投稿ページが公開である場合にget_the_title()を使用すると、記事で<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">設定したタイトルの文字列</span></span>をそのまま取得します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php $title = get_the_title(82) ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-1.webp" alt="WordPressの投稿記事一覧-1" width="1000" height="570" class="alignnone size-full wp-image-13533" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-1.webp" alt="get_the_title()で公開状態のページのタイトルを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13535" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
投稿ページが公開状態である場合にget_the_title()でページのタイトルを取得しています。
</p>
<p class="blog-text">
そのため、「記事で登録したタイトルを表示！」が表示されています。
</p>
<h3 id="rtoc-11"  class="blog-h3head">投稿ページがパスワード保護状態である場合</h3>
<p class="blog-text">
投稿ページがパスワード保護状態である場合にget_the_title()を使用すると、記事で設定したタイトルの前に「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">保護中:</span></span>」の文字列を取得します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php $title = get_the_title(82) ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-2.webp" alt="WordPressの投稿記事一覧-2" width="1000" height="570" class="alignnone size-full wp-image-13532" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-2.webp" alt="WordPressのget_the_title()でパスワード保護状態のページのタイトルを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13498" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
投稿ページがパスワード保護状態である場合にget_the_title()でページのタイトルを取得しています。
</p>
<p class="blog-text">
そのため、「保護中：記事で登録したタイトルを表示！」が表示されています。
</p>
<h3 id="rtoc-12"  class="blog-h3head">投稿ページが非公開状態である場合</h3>
<p class="blog-text">
投稿ページが非公開状態である場合にget_the_title()を使用すると、記事で設定したタイトル前に「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">非公開:</span></span>」の文字列を取得します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php $title = get_the_title(82) ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-3.webp" alt="WordPressの投稿記事一覧-3" width="1000" height="570" class="alignnone size-full wp-image-13531" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-3-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-3-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-3-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-3.webp" alt="WordPressのget_the_title()で非公開状態のページのタイトルを取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13496" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-2-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
投稿ページが非公開状態である場合にget_the_title()でページのタイトルを取得しています。
</p>
<p class="blog-text">
そのため、「非公開：記事で登録したタイトルを表示！」が表示されています。
</p>
<h2 id="rtoc-13"  class="hh hh28">get_the_title()で現在のページのタイトルを動的に取得する場合</h2>
<p class="blog-h2text">
get_the_title()で現在のページのタイトルを動的に取得するには、引数に<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">get_the_ID()</span></span>を指定します。
</p>
<p class="blog-text">
get_the_ID()とは、<span class= "keiko_red">現在開いているページのIDを取得することができるWordPressの関数</span>になります。
</p>
<p class="blog-text">
つまり、get_the_ID()で取得したIDをget_the_title()のパラメータに指定することで、現在表示しているページのタイトルを取得することが可能になります。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php 
        $post = get_the_ID();
        $title = get_the_title($post); 
       ?&gt;
       &lt;h3&gt;&lt;?php echo $title ?&gt;&lt;/h3&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-4.webp" alt="WordPressの投稿記事一覧-4" width="1000" height="580" class="alignnone size-full wp-image-13530" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-4-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-4-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-4-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-3-min.gif" alt="WordPressのget_the_title()で現在のページのタイトルを動的に取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13503" />
</div>
<p class="blog-text">
get_the_title()で現在のページのタイトルを動的に取得しています。
</p>
<p class="blog-text">
そのため、表示されている投稿記事のタイトルが表示されています。
</p>
<h2 id="rtoc-14"  class="hh hh28">get_the_titile()でページのタイトルを一括で取得する場合</h2>
<p class="blog-h2text">
get_the_title()でページのタイトルを一括で取得するには<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">繰り返し処理</span></span>と<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">the_post()</span></span>を組み合わせて使用します。
</p>
<p class="blog-text">
the_post()とは、<span class= "keiko_red">取得した投稿記事をループで順番に表示するためのWordPressの関数</span>になります。
</p>
<p class="blog-text">
そのため、the_post()で登録されている投稿記事のIDを順番に取得し、get_the_title()のパラメータに指定することで投稿ページのタイトルを一括で取得するとができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 class='entry-title'&gt;get_the_title()でページのタイトルを一括で取得&lt;/h1&gt;
       &lt;div class= 'title-lists'&gt;
       &lt;?php 
       if(have_posts()) :
         while(have_posts()) : the_post();
            $postId = get_the_id(); 
            echo '&lt;p&gt;'.get_the_title($postId).'&lt;/p&gt;';
         endwhile; ?&gt;
      &lt;?php else: ?&gt;
      &lt;?php endif; ?&gt;
      &lt;/div&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.title-lists {
    border: 2px solid;
    text-align: center;
    width: 80%;
    margin: 0 auto;
    font-size: 24px;
}
.entry-title {
    font-size:32px; 
    text-align:center;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-5.webp" alt="WordPressの投稿記事一覧-5" width="1000" height="570" class="alignnone size-full wp-image-13529" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-5-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-5-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-5-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-4.webp" alt="get_the_titile()でページのタイトルを一括で取得した
結果" width="1000" height="590" class="alignnone size-full wp-image-13534" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-4-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-4-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-4-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
get_the_titile()でページのタイトルを一括で取得しています。
</p>
<p class="blog-text">
投稿一覧には8つの記事が投稿されているため、「sossyテスト1」から「sossyテスト8」までの記事のタイトルが表示されています。
</p>
<h2 id="rtoc-15"  class="hh hh28">get_the_title()の具体的な使用ケース</h2>
<p>ここでは、get_the_title()を使用した<span class= "keiko_red">具体的な使用ケース</span>についてご紹介します。</p>
<h3 id="rtoc-16"  class="blog-h3head">ブログカードを作成する場合</h3>
<p class="blog-text">
get_the_title()を使用することで、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">ブログカード</span></span>を作成することができます。
</p>
<p class="blog-text">
例えば、ブログのTOPページに新着10記事をブログカードで作成します。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;h1 class=&quot;entry-title&quot;&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
&lt;?php 
  // データの取得
  $query = new WP_Query(array(
      'posts_per_page' =&gt; 10, //投稿件数
      'orderby' =&gt; 'data', //日付
      'order' =&gt; 'DESC', //日付が新しいもの
  )
); 
?&gt;
&lt;div class= 'blog-card-list'&gt;
　&lt;?php if($query-&gt;have_posts()) :
　　while($query-&gt;have_posts()) : $query-&gt;the_post(); ?&gt;
　　　&lt;div class = &quot;blog-card&quot;&gt;
　　　　&lt;a href=&quot;&lt;?php the_permalink(); ?&gt;&quot;&gt;
　　　　　&lt;?php $postId = get_the_id(); ?&gt;
　　　　　&lt;div class= &quot;card-thum&quot;&gt;
　　　　　&lt;?php if(has_post_thumbnail()):
　　　　　　the_post_thumbnail(&quot;thumbnail&quot;); ?&gt;
　　　　　&lt;?php endif; ?&gt;
　　　　　&lt;/div&gt;
　　　　　&lt;div class= &quot;card-title&quot;&gt;
　　　　　　&lt;?php echo '&lt;span&gt;'.get_the_title($postId).'&lt;/span&gt;'; ?&gt;
　　　　　 &lt;/div&gt;
　　　　&lt;/a&gt;
　　　&nbsp;&lt;/div&gt;
　　&nbsp;&lt;?php endwhile; ?&gt;
　&lt;?php else: ?&gt;
　&lt;?php endif; ?&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.entry-title {
    text-align:center;
}
.blog-card-list {
    width: 64%;
    display: flex;
    flex-wrap: wrap;
    margin: 3px auto;
}
.blog-card {
    width: 40%;
    background: antiquewhite;
    border: 2px solid black;
    margin: 3px auto;
    height: fit-content;
    box-shadow: 8px 8px 8px rgb(0 0 0 / 50%);
}
.blog-card a {
    text-decoration: none;
}
.card-thum {
    display: inline-block;
    width: 28%;
    height: 88%;
    margin: 6px 6px 4px 4px;
}
.card-title {
    display: inline-block;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-6.webp" alt="WordPressの投稿記事一覧-6" width="1000" height="550" class="alignnone size-full wp-image-13561" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-6-300x165.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-6-768x422.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-6-940x517.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-5-1-min.gif" alt="WordPressのget_the_title()でブログカードを作成した結果" width="1000" height="590" class="alignnone size-full wp-image-13562" />
</div>
<p class="blog-text">
get_the_title()でブログカードを作成し、ページ上に表示しています。
</p>
<p class="blog-text">
投稿画面を見ると、WordPress内の記事は全部で「11」ありますが、今回は表示数を「10」に指定しています。
</p>
<p class="blog-text">
そして、投稿記事データを日付の降順で取得しているため、最近投稿した10記事がブログカードとして表示されています。
</p>
<p class="blog-text">
また、サムネイルが登録されている場合はthe_post_thumbnail()でサムネイル画像を表示しています。
</p>
<p class="blog-text">
もし、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">the_post_thumbnail()について詳しく知りたい場合</span></span>は下記の記事をご参考ください。
</p>
<div class="linkcard"><div class="lkc-internal-wrap"><a class="lkc-link no_icon" href="https://sossy-blog.com/wordpress/13368/"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon lazyloaded loaded" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width="16" height="16" data-src="https://www.google.com/s2/favicons?domain=sossy-blog.com" decoding="async" data-was-processed="true"><noscript><img decoding="async" class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width=16 height=16 data-eio="l"/></noscript><div class="lkc-domain">Sossyの助太刀ブログ</div><div class="lkc-date">9月 11, 2024</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img decoding="async" width="150" height="150" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-icatch-150x150.webp" class="lkc-thumbnail-img loaded ls-is-cached lazyloaded wp-post-image" alt="【WordPress】the_post_thumbnail()でアイキャッチ画像をページに表示する！" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-icatch-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-icatch-160x160.webp 160w" sizes="(max-width: 150px) 100vw, 150px" /></figure><div class="lkc-title"><div class="lkc-title-text">【WordPress】the_post_thumbnail()でアイキャッチ画像をページに表示する！</div></div><div class="lkc-url">https://sossy-blog.com/wordpress/13368/</div></div><div class="clear"></div></div></a></div></div>
<h3 id="rtoc-17"  class="blog-h3head">投稿記事をジャンル別で表示する</h3>
<p class="blog-text">
get_the_title()を使用することで<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">投稿記事をジャンル別で表示</span></span>することができます。
</p>
<p class="blog-text">
例えば、お知らせ欄に最新のお知らせ情報が表示され、クリックすると、お知らせの詳細内容を表示します。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php 
  // データの取得
  $query = new WP_Query(array(
      'posts_per_page' =&gt; 5, //投稿件数
      'orderby' =&gt; 'data', //日付
      'order' =&gt; 'DESC', //日付が新しいもの
      'category_name' =&gt; 'news', //お知らせ
  )
); 
?&gt;

&lt;div class= 'news-lists'&gt;
   &lt;h1 class=&quot;entry-title&quot;&gt;お知らせ&lt;/h1&gt;
   &lt;?php if($query-&gt;have_posts()) : ?&gt;
      &lt;?php while($query-&gt;have_posts()) : $query-&gt;the_post(); ?&gt;
	&lt;div class = &quot;news-list&quot;&gt;
　　　　    &lt;a href=&quot;&lt;?php the_permalink(); ?&gt;&quot;&gt;
　　　　　    &lt;?php $postId = get_the_id(); ?&gt;
            &lt;p&gt;&lt;?php the_date(); ?&gt;&lt;/p&gt;
	    &lt;p&gt;&lt;?php echo get_the_title($postId); ?&gt;&lt;/p&gt;
　　　　   &lt;/a&gt;
　    　&lt;/div&gt;
       &lt;?php endwhile; ?&gt;
   &lt;?php else: ?&gt;
   &lt;?php endif; ?&gt;

   &lt;?php $cat_obj = get_category_by_slug( 'news ');
         $cat_id = $cat_obj-&gt;term_id; ?&gt;
   &lt;p class=&quot;news-all&quot;&gt;
      &lt;a href='&lt;?php echo get_category_link($cat_id);?&gt;'&gt;お知らせの一覧を見る&lt;/a&gt;
   &lt;/p&gt;
&lt;/div&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● style.css</p>
<pre class="urvanov-syntax-highlighter-plain-tag">.entry-title {
     text-align:center;
}
.news-lists {
     width: 80%;
     margin: 3px auto;
     text-align:center;
}
.news-list a {
     text-decoration-line:none;
}
.news-all {
     text-align:right;
}</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-7.webp" alt="WordPressの投稿記事一覧-7" width="1000" height="570" class="alignnone size-full wp-image-13580" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-7.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-7-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-7-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-7-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-get_the_title-result-6-2-min.gif" alt="WordPressのget_the_title()で投稿記事をジャンル別で表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13584" />
</div>
<p class="blog-text">
get_the_title()で投稿記事をジャンル別で表示しています。
</p>
<p class="blog-text">
今回は、the_post()で「お知らせ」というカテゴリーに属している最新の投稿記事5件を取得しています。
</p>
<p class="blog-text">
そして、get_the_id()で取得した投稿記事のIDを取得し、get_the_title()のパラメータに指定することでタイトルを表示しています。
</p>
<p class="blog-text">
そのため、お知らせに関する記事のみがページ上に表示され、クリックすると内容が表示されます。
</p>
<h2 id="rtoc-18"  class="hh hh28">HTMLタグも含めてページのタイトルを表示する場合</h2>
<p class="blog-h2text">
HTMLタグも含めてページのタイトルを表示するには<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">the_title()</span></span>を使用します。
</p>
<p class="blog-text">
the_title()とは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">表示しているページのタイトルをHTMLごと出力するWordPressの関数</span></span>になります。
</p>
<p class="blog-text">
そのため、WordPressで作成されたブログや記事のタイトルはこちらの関数でページ表示しています。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article&gt;
    &lt;header&gt;
       &lt;h1 style='font-size:32px;'&gt;get_the_title()でページのタイトルを取得&lt;/h1&gt;
       &lt;?php the_title('&lt;h3&gt;', '&lt;/h3&gt;') ?&gt;
    &lt;/header&gt;	
    &lt;div&gt;
       &lt;?php the_content(); ?&gt;
    &lt;/div&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">投稿画面</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-8.webp" alt="WordPressの投稿記事一覧-8" width="1000" height="580" class="alignnone size-full wp-image-13543" srcset="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-8.webp 1000w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-8-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-8-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-post-list-8-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2023/11/wordpress-the_title-result-min.gif" alt="Word
Pressのthe_title()でHTMLタグごとページのタイトルを取得した結果" width="1000" height="590" class="alignnone size-full wp-image-13542" />
</div>
<p class="blog-text">
the_title()でHTMLタグも含めてページのタイトルを表示しています。
</p>
<p class="blog-text">
そのため、それぞれのページのタイトルである「さんぽ」や「君が代」が表示されています。
</p>
<p class="blog-text">
また、ソースコードを見てみると、タイトルが&lt;h3&gt;で囲まれていることがわかります。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;header&gt;
    &lt;h1 style=&quot;font-size:32px;&quot;&gt;the_title()でページのタイトルを取得&lt;/h1&gt;
    &lt;h3&gt;さんぽ&lt;/h3&gt;	
&lt;/header&gt;</pre>
<h2 id="rtoc-19"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
⚫︎ get_the_title()とは、指定したページのタイトルを取得するWordPressの関数である。
</p>
<p class="blog-text">
⚫︎ get_the_title()は下記のパラメータを指定して使用する。<br />
・記事ID(必須)
</p>
<p class="blog-text">
⚫︎ 記事IDに存在するIDを指定してget_the_title()を使用すると、記事で設定したタイトルの文字列を取得する。
</p>
<p class="blog-text">
⚫︎ 記事IDに存在しないIDを指定してget_the_title()を使用すると、「名称未設定」という文字列を取得する。
</p>
<p class="blog-text">
⚫︎ 投稿ページが公開状態である場合にget_the_title()を使用すると、記事で設定したタイトルの文字列を取得する。
</p>
<p class="blog-text">
⚫︎ 投稿ページがパスワード保護状態である場合にget_the_title()を使用すると、記事で設定したタイトルの前に「保護中:」の文字列を付けて取得する。
</p>
<p class="blog-text">
⚫︎ 投稿ページが非公開状態である場合にget_the_title()を使用すると、記事で設定したタイトル前に「非公開:」の文字列を付けて取得する。
</p>
<p class="blog-text">
⚫︎ get_the_title()で現在のページのタイトルを動的に取得するには、get_the_ID()で取得した値をパラメータに指定する。
</p>
<p class="blog-text">
⚫︎ get_the_title()でページのタイトルを一括で取得するには繰り返し処理とthe_post()を組み合わせて使用する。
</p>
<p class="blog-text">
⚫︎ get_the_title()の具体的な使用ケースとして下記のようなものがある。<br />
・ブログカードとして表示する<br />
・ジャンル別として表示する
</p>
<p class="blog-text">
⚫︎ HTMLタグも含めてページのタイトルを取得するにはthe_title()を使用する。
</p>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://sossy-blog.com/wordpress/9727/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>【WordPress】the_post_thumbnail()でアイキャッチ画像をページに表示する！</title>
		<link>https://sossy-blog.com/wordpress/13368/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Wed, 11 Sep 2024 14:26:54 +0000</pubDate>
				<category><![CDATA[WordPress]]></category>
		<category><![CDATA[中級編]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13368</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年09月11日に投稿されました。) WordPressでアイキャッチ画像をページに表示するにはthe_post_thumbnail()使用します。 the_post_thumbnail()とは、登録し ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年09月11日に投稿されました。)</p>
<p class="blog-h2text">
WordPressでアイキャッチ画像をページに表示するには<span class= "keiko_red">the_post_thumbnail()</span>使用します。
</p>
<p class="blog-text">
the_post_thumbnail()とは、登録したアイキャッチの画像をページに表示する関数になります。
</p>
<p class="blog-text">
そのため、各投稿記事で表示されているアイキャッチ画像はおそらくこちらの関数を使用してページに出力されています。
</p>
<p class="blog-text">
また、the_post_thumbnail()に引数を指定することで大きさを変えたり、属性を付与したりしてアイキャッチ画像を表示することができます。
</p>
<p class="blog-text">
こちらの関数を使用することで、各記事に登録したアイキャッチ画像を簡単に表示することができるので、アイキャッチ画像を各記事に投稿したいと思った場合はthe_post_thumbnail()を使用しましょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">WordPressのthe_post_thumbnail()でアイキャッチ画像をページに表示する方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
WordPressの投稿記事にアイキャッチ画像を表示したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">the_post_thumbnail()とは</h2>
<p class="blog-h2text">
the_post_thumbnail()と<span class= "keiko_red">各投稿で登録されているアイキャッチ画像をimgタグとしてページ上に表示させることができる関数</span>になります。
</p>
<p class="blog-text">
投稿画面にてアイキャッチ画像というウィジェットがあるため、そこに画像を登録し、こちらの関数を使用することで、そのページに登録したアイキャッチ画像を表示することができます。
</p>
<p class="blog-text">
そもそも、アイキャッチ画像とは、<span class= "keiko_red">読者の目を引くために使用される画像</span>になります。
</p>
<p class="blog-text">
ブログ記事やウェブサイトのコンテンツに<span class= "keiko_red">視覚的な魅力</span>を加え、記事の内容を象徴的に表したり、読者の興味を掻き立てたりする役割を果たします。
</p>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
YouTubeで言うと、サムネイルみたいなイメージになります。
</p>
</div>
</div>
<p class="blog-text">
そして、アイキャッチは登録することでオリジナルだけでなく、大、中、小のサイズの異なる3種類の画像が自動で生成されて保存されます。
</p>
<h3 id="rtoc-2"  class= "blog-h3head">the_post_thumbnail()の書き方</h3>
<p class="blog-text">
the_post_thuumbnail()の書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;? php
the_post_thuumbnail([サイズ, 属性])
?&gt;</pre>
<p class="blog-text">
the_post_thuumbnail()の括弧の中に任意なパラメータを2つまで指定して使用します。
</p>
<h3 id="rtoc-3"  class= "blog-h3head">the_post_thumbnail()のパラメータ</h3>
<p class="blog-text">
the_post_thumbnail()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>サイズ:(任意)<br />
アイキャッチ画像の大きさを指定する。</li>
</ol>
<ol>
<li>属性:(任意)<br />
アイキャッチ画像を表示するための属性を指定する。。</li>
</ol>
</div>
</div>
<p class="blog-text">
the_post_thunbnail()は任意のパラメータとして1つ目に「サイズ」を指定します。
</p>
<p class="blog-text">
また、2つ目に任意のパラメータとして「属性」を指定します。
</p>
<h3 id="rtoc-4"  class= "blog-h3head">the_post_thumbnail()の呼び出し元</h3>
<p class="blog-text">
the_post_thunmbnail()の呼び出し元は「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">post-thumbnail-template.php</span></span>」となります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">function the_post_thumbnail( $size = 'post-thumbnail', $attr = '' ) {
	echo get_the_post_thumbnail( null, $size, $attr );
}</pre>
<p class="blog-text">
get_the_post_thumbnail()を呼び出していますが、こちらの関数は指定した投稿IDに登録されているアイキャッチ画像のデータを取得し、返り値として、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">&lt;img&gt;タグ</span></span>を付与したアイキャッチ画像を返します。
</p>
<p class="blog-text">
つまり、the_post_thumbnail()を使用することで、特定のアイキャッチ画像を表示することができるようになります。
</p>
<h2 id="rtoc-5"  class="hh hh28">the_post_thumbnail()でアイキャッチ画像をページに表示するサンプルコード</h2>
<p class="blog-h2text">
the_post_thumbnail()でアイキャッチ画像をページに表示するサンプルコードをご紹介します。
</p>
<p class="blog-text">
例えば、ページを表示する際に一番上にアイキャッチ画像を表示するようなコードを作成します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;?php get_header(); ?&gt;
  &lt;div id=&quot;content&quot;&gt;
    &lt;div id=&quot;inner-content&quot; class=&quot;**********&quot;&gt;
      &lt;main id=&quot;main&quot; class=&quot;**********&quot;&gt;
        &lt;?php if (have_posts()) : while (have_posts()) : the_post(); ?&gt;
          &lt;article id=&quot;****&quot;&gt;
            &lt;header class=&quot;*************************&quot;&gt;
                &lt;h1 class=&quot;page-title&quot;&gt;&lt;?php the_title(); // タイトル ?&gt;&lt;/h1&gt;
              &lt;?php endif; ?&gt;
              &lt;?php if (has_post_thumbnail()) : // アイキャッチ ?&gt;
                &lt;p class=&quot;*******&quot;&gt;&lt;?php the_post_thumbnail('large');?&gt;&lt;/p&gt;
              &lt;?php endif; ?&gt;
            &lt;/header&gt;
            &lt;section class=&quot;*************&quot;&gt;
              &lt;?php
                the_content();
              ?&gt;
            &lt;/section&gt;
            &lt;?php comments_template(); ?&gt;
          &lt;/article&gt;
        &lt;?php endwhile; ?&gt;
        &lt;?php else : ?&gt;
        &lt;?php get_template_part('content', 'not-found'); ?&gt;
        &lt;?php endif; ?&gt;
      &lt;/main&gt;
      &lt;?php get_sidebar(); ?&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;?php get_footer(); ?&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result.webp" alt="the_post_thumbnail()で投稿記事にアイキャッチ画像を表示した結果" width="1000" height="600" class="alignnone size-full wp-image-13428" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-300x180.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-768x461.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-940x564.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
こちらは、当サイトの投稿ページ用のPHPファイルですが、サムネイルを表示するために、the_post_thumbnail()を使用してるのがわかります。
</p>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像をページに表示しています。
</p>
<p class= "blog-text">
そのため、投稿編集画面で登録した画像がWebページ上に表示されています。
</p>
<h2 id="rtoc-6"  class="hh hh28"> the_post_thumbnail()でアイキャッチ画像のサイズを指定してページに表示する場合</h2>
<p class="blog-h2text">
the_post_thumbnail()でアイキャッチ画像にサイズを指定してページに表示するには、第1パラメータの「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">サイズ</span></span>」を指定して使用ます。
</p>
<p class= "blog-text">
そのため、ここでは下記の5パターンでthe_post_thumbnail()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>小サイズで表示する場合</li>
<li>中サイズで表示する場合</li>
<li>大サイズで表示する場合</li>
<li>オリジナルサイズで表示する場合</li>
<li>指定したサイズで表示する場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-7"  class= "blog-h3head">小サイズで表示する場合</h3>
<p class= "blog-text">
小サイズで表示するには、サイズに「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">thumbnail</span></span>」を指定します。
</p>
<p class= "blog-text">
小サイズになるため、横 × 縦のデフォルトである「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">150px ×　150px</span></span>」の大きさになって画面に表示されます。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
	&lt;header class=&quot;******&quot;&gt;
		&lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
		&lt;?php the_post_thumbnail('thumbnail'); ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
		&lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;

&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-1.webp" alt="the_post_thumbnail()でアイキャッチ画像を小サイズで表示した結果" width="1000" height="570" class="alignnone size-full wp-image-13420" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-2.webp" alt="the_post_thumbnail()に「thumbnail」を指定した時のアイキャッチ画像の大きさ" width="1000" height="570" class="alignnone size-full wp-image-13419" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-1-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像を小サイズでページに表示しています。
</p>
<p class= "blog-text">
そのため、投稿記事に「150 × 150」の大きさのアイキャッチ画像が表示されています。
</p>
<h3 id="rtoc-8"  class= "blog-h3head">中サイズで表示する場合</h3>
<p class= "blog-text">
中サイズで表示するには、サイズに「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">medium</span></span>」を指定します。
</p>
<p class= "blog-text">
中サイズになるため、横 × 縦が「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">300px × 300px</span></span>」の大きさになって画面に表示されます。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
	&lt;header class=&quot;******&quot;&gt;
		&lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
		&lt;?php the_post_thumbnail('medium'); ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
		&lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;

&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-1.webp" alt="the_post_thumbnail()でアイキャッチ画像を中サイズで表示した結果" width="1000" height="570" class="alignnone size-full wp-image-13432" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-2.webp" alt="the_post_thumbnail()に「medium」を指定した時のアイキャッチ画像の大きさ" width="1000" height="580" class="alignnone size-full wp-image-13433" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-2-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像を中サイズでページに表示しています。
</p>
<p class= "blog-text">
今回は横を「300px」とした場合に縦の長さを調整しているため、投稿記事に「300 × 194.141」の大きさのアイキャッチ画像が表示されています。
</p>
<h3 id="rtoc-9"  class= "blog-h3head">大サイズで表示する場合</h3>
<p class= "blog-text">
大サイズで表示するには、サイズに「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">large</span></span>」を指定します。
</p>
<p class= "blog-text">
大サイズになるため、横 × 縦が「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">1024px ×　1024px</span></span>」の大きさになって画面に表示されます。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
	&lt;header class=&quot;******&quot;&gt;
		&lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
		&lt;?php the_post_thumbnail('large'); ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
		&lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;

&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-1-min.gif" alt="the_post_thumbnail()でアイキャッチ画像を大サイズで表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13440" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-2.webp" alt="the_post_thumbnail()に「large」を指定した時のアイキャッチ画像の大きさ" width="1000" height="570" class="alignnone size-full wp-image-13439" srcset="https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/09/wordpress-the-post-thumbnail-result-1-3-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像を大サイズでページに表示しています。
</p>
<p class= "blog-text">
今回は横を「1024」とした場合に縦の長さを調整しているため、投稿記事に「1024 × 663.031」の大きさのアイキャッチ画像が表示されています。
</p>
<h3 id="rtoc-10"  class= "blog-h3head">オリジナルサイズで表示する場合</h3>
<p class= "blog-text">
オリジナルサイズで表示するには、サイズに「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">full</span></span>」を指定します。
</p>
<p class= "blog-text">
こちらは登録したアイキャッチ画像のサイズがそのままページに表示されるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
	&lt;header class=&quot;******&quot;&gt;
		&lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
		&lt;?php the_post_thumbnail(array(500, 500)); ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
		&lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;

&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-1-min.gif" alt="the_post_thumbnail()でアイキャッチ画像をオリジナルサイズで表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13415" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-2.webp" alt="the_post_thumbnail()に「full」を指定した時のアイキャッチ画像の大きさ" width="1000" height="570" class="alignnone size-full wp-image-13414" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-4-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像をオリジナルでページに表示しています。
</p>
<p class= "blog-text">
今回は「1200 × 777」の画像をアイキャッチ画像に登録したため、投稿記事に「1200 × 777」のアイキャッチ画像が表示されています。
</p>
<h3 id="rtoc-11"  class= "blog-h3head">指定したサイズで表示する場合</h3>
<p class= "blog-text">
指定したサイズで表示するには、サイズに「array(横,縦)」の配列で指定します。
</p>
<p class= "blog-text">
指定したサイズのため、自分の好きなサイズでアイキャッチ画像を表示することができるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
    &lt;header class=&quot;******&quot;&gt;
        &lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
		&lt;?php the_post_thumbnail(array(130, 130)); ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
		&lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;
    
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-1.webp" alt="the_post_thumbnail()でアイキャッチ画像を指定した
サイズで表示した結果" width="1000" height="570" class="alignnone size-full wp-image-13442" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-1-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-1-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-1-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-2.webp" alt="the_post_thumbnail()にサイズを直接を指定した時のアイキャッチ画像の大きさ" width="1000" height="580" class="alignnone size-full wp-image-13443" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-1-5-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像を好きなサイズでページに表示しています。
</p>
<p class= "blog-text">
今回は「130 × 130」をアイキャッチ画像に指定したため、投稿記事に「130px × 130px」の大きさの画像が表示されています。
</p>
<h2 id="rtoc-12"  class="hh hh28">the_post_thumbnail()でアイキャッチ画像に属性を追加してページに表示する場合</h2>
<p class="blog-h2text">
the_post_thumbnail()でアイキャッチ画像に属性を追加してページに表示するには、<span class= "keiko_red">第2パラメータである<span style= "font-weight: bold; font-size:20px;">属性</span></span>を指定します。
</p>
<p class= "blog-text">
属性を指定することで、クラス名を紐づけたりなど、様々な情報を紐づけた上アイキャッチ画像を表示することができます。
</p>
<p class= "blog-text">
また属性とは、下記のようなHTMLの要素に付与することができる情報のことをいいます。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>class<br />
クラス名</li>
<li>id<br />
id名</li>
<li>alt<br />
画像をテキストで説明する属性</li>
</ol>
</div>
</div>
<div class="talk">
<figure class="talk-Limg">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2021/11/sossy.webp" alt="" width="479" height="498" class="alignnone size-full wp-image-155" /><figcaption class="talk-imgname">Sossy</figcaption></figure>
<div class="talk-Ltxt">
<p class="talk-text">
ここでは代表的なものを紹介していますが、他にも付与できる属性が存在します。
</p>
</div>
</div>
<h3 id="rtoc-13"  class= "blog-h3head">アイキャッチ画像に1つの属性を指定する場合</h3>
<p class= "blog-text">
アイキャッチ画像に1つの属性を指定するには属性のパラメータを連想配列で1つ指定します。
</p>
<p class= "blog-text">
キーに属性名を指定し、値に付与する値を指定することで、アイキャッチ画像に属性を付与して表示します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
    
    &lt;header class=&quot;******&quot;&gt;
        &lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
	　&lt;?php the_post_thumbnail('full', array('id' =&gt; 'icatch_id'); ?&gt;
    &lt;/header&gt;
	
    &lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
    &lt;/div&gt;
	
    &lt;footer class=&quot;*****&quot;&gt;
	&lt;?php get_footer(); ?&gt;
    &lt;/footer&gt;

&lt;/article&gt;
&lt;style&gt;
#icatch_id {
    border: 3px solid red;
    opacity: 0%;
}
#icatch_id:hover {
    opacity: 100%;
}
&lt;/style&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-2-1-min.gif" alt="the_post_thumbnail()で属性を一つ指定してアイキャッチ画像を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13445" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像に1つの属性を指定してページに表示しています。
</p>
<p class= "blog-text">
今回は、アイキャッチ画像にidを付与したため、id名で紐づかれたCSSがアイキャッチ画像に反映して表示されています。
</p>
<h3 id="rtoc-14"  class= "blog-h3head">アイキャッチ画像に複数の属性を指定する場合</h3>
<p class= "blog-text">
アイキャッチ画像に複数の属性を指定するには属性のパラメータを連想配列の要素を複数指定します。
</p>
<p class= "blog-text">
カンマで要素を繋げることで、複数の属性をアイキャッチ画像に付与して表示します。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
    &lt;header class=&quot;******&quot;&gt;
    　　&lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
	&lt;?php 
	the_post_thumbnail('funll', $attr);
        $attr = array(
            'class' =&gt; 'bg_color', 
            'alt' =&gt; 'アイキャッチ画像',
            'loading'=&gt; 'lazy'
            ) 
        ?&gt;
    &lt;/header&gt;
	
    &lt;div class=&quot;*****&quot;&gt;
	&lt;?php the_content();　?&gt;
    &lt;/div&gt;
	
    &lt;footer class=&quot;*****&quot;&gt;
	&lt;?php get_footer(); ?&gt;
    &lt;/footer&gt;

&lt;/article&gt;
&lt;style&gt;
.border_sty {
    border: 3px solid blue;
    border-radius: 40px;
}
&lt;/style&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-the-post-thumbnail-result-2-2-min.gif" alt="the_post_thumbnail()で属性を複数指定してアイキャッチ画像を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13447" />
</div>
<p class= "blog-text">
the_post_thumbnail()でアイキャッチ画像に複数の属性を指定してページに表示しています。
</p>
<p class= "blog-text">
そのため、アイキャッチ画像に属性が付与されて表示されています。
</p>
<p class= "blog-text">
また、画像のHTMLを確認すると、指定したattr属性やloading属性が付与されています。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;img width=&quot;1200&quot; height=&quot;777&quot; src=&quot;https://*******************************.png&quot; class=&quot;border_sty wp-post-image&quot; alt=&quot;アイキャッチ画像&quot; loading=&quot;lazy&quot; decoding=&quot;async&quot; style=&quot;width:100%;height:64.75%;max-width:1200px;&quot;&gt;</pre>
<h2 id="rtoc-15"  class="hh hh28">投稿にアイキャッチ画像が登録されているかどうか確認する場合</h2>
<p class= "blog-text">
投稿にアイキャッチ画像が登録されているかどうか確認するには、has_post_thumbnail()を使用します。
</p>
<p class= "blog-text">
has_post_thumbnail()とは、その投稿記事にアイキャッチ画像が登録されているかどうかを真偽値で返す関数になります。
</p>
<p class= "blog-text">
そのため、登録されている場合は「True」を返し、登録されていない場合は「False」を返すようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● single.php</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;article id=&quot;*****&quot;&gt;
    &lt;header class=&quot;******&quot;&gt;
        &lt;h1 class=&quot;entry-title&quot; style='font-size:32px;'&gt;the_post_thumbnail()でアイキャッチ画像を表示&lt;/h1&gt;
        &lt;?php 
        if (has_post_thumbnail()):
            the_post_thumbnail('large');
        else: ?&gt;
            &lt;img src=&quot;https://****************************/wordpress_def.jpg&quot;&gt;
        &lt;?php endif; ?&gt;
	&lt;/header&gt;
	
	&lt;div class=&quot;*****&quot;&gt;
            &lt;?php the_content();　?&gt;
	&lt;/div&gt;
	
	&lt;footer class=&quot;*****&quot;&gt;
            &lt;?php get_footer(); ?&gt;
	&lt;/footer&gt;
&lt;/article&gt;</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果(アイキャッチ画像登録あり)</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-1.webp" alt="has_post_thumbnail()で投稿にアイキャッチ画像が登録されているか確認した結果(アイキャッチ画像登録あり)" width="1000" height="580" class="alignnone size-full wp-image-13450" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果(アイキャッチ画像登録なし)</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-2.webp" alt="has_post_thumbnail()で投稿にアイキャッチ画像が登録されているか確認した結果(アイキャッチ画像登録なし)" width="1000" height="570" class="alignnone size-full wp-image-13449" srcset="https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-2-300x171.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-2-768x438.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/08/wordpress-has-post-thumbnail-result-2-940x536.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
has_post_thumbnail()で投稿にアイキャッチ画像が登録されているか確認しています。
</p>
<p class= "blog-text">
そのため、アイキャッチ画像が登録されている記事にはアイキャッチ画像が表示され、登録されていない記事にはデフォルトの画像が表示されています。
</p>
<h2 id="rtoc-16"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class= "blog-text">
● the_post_thumbnail()とは各投稿で登録されているアイキャッチ画像をimgタグとしてページ上に表示させることができるWordPRessの関数である。
</p>
<p class= "blog-text">
● the_post_thumbnail()を使用するには下記のパラメータを指定する。<br />
・サイズ:任意<br />
・属性: 任意
</p>
<p class= "blog-text">
● サイズを指定してthe_post_thumbnail()を使用すると、指定したサイズのアイキャッチ画像をページ上に表示する。
</p>
<p class= "blog-text">
● the_post_thumbnail()でアイキャッチ画像を小サイズで表示するには、サイズに「&#8217;thumbnail&#8217;」を指定する。
</p>
<p class= "blog-text">
● the_post_thumbnail()でアイキャッチ画像を中サイズで表示するには、サイズに「&#8217;medium&#8217;」を指定する。
</p>
<p class= "blog-text">
● the_post_thumbnail()でアイキャッチ画像を大サイズで表示するには、サイズに「&#8217;large&#8217;」を指定する。
</p>
<p class= "blog-text">
● the_post_thumbnail()でアイキャッチ画像をオリジナルで表示するには、サイズに「&#8217;full&#8217;」を指定する。
</p>
<p class= "blog-text">
● the_post_thumbnail()でアイキャッチ画像を指定したサイズで表示するには、サイズに「array(横, 縦)」を指定する。
</p>
<p class= "blog-text">
● 属性を指定してthe_post_thumbnail()を使用すると、アイキャッチ画像に属性を付与してページ上に表示する。
</p>
<p class= "blog-text">
● the_post_thumbnail()で属性を1つ指定してアイキャッチ画像を表示するには、属性を文字列で指定する。
</p>
<p class= "blog-text">
● the_post_thumbnail()で属性を複数指定してアイキャッチ画像を表示するには、属性を配列で指定する。
</p>
<p class= "blog-text">
● アイキャッチ画像が登録されているかどうか確認するには、has_post_thumbnail()を使用する。<br />
(アイキャッチ画像が登録されている場合は「True」を返し、登録されていない場合は「False」を返す。)
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【Python】abs()で絶対値を取得！基本から応用の使い方まで解説！</title>
		<link>https://sossy-blog.com/useful/13250/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Fri, 24 May 2024 00:06:37 +0000</pubDate>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[お役立ち]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13250</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-icatch-520x300.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>Pythonで値の絶対値を取得するにはabs()使用します。 abs()とは絶対値を求める関数であり、指定した値の絶対値を取得することができます。 しかし、値が文字列の場合は絶対値を取得することはできませんので注意してく ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-icatch-520x300.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-h2text">
Pythonで値の絶対値を取得するには<span class= "keiko_red">abs()</span>使用します。
</p>
<p class="blog-text">
abs()とは絶対値を求める関数であり、指定した値の絶対値を取得することができます。
</p>
<p class="blog-text">
しかし、値が文字列の場合は絶対値を取得することはできませんので注意してください。
</p>
<p class="blog-text">
また、繰り返し処理内で使用することで、リストに格納された値の絶対値を一気に求めることもできます。
</p>
<p class="blog-text">
Pythonをインストールしていればすぐに使用できるため、もし値の絶対値を取得したいと思った場合はabs()を使用しましょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">Pythonのabs()で絶対値を求める方法</span></span>について基本から応用までご紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
指定した値の絶対値を求めたい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">abs()とは</h2>
<p class="blog-h2text">
abs()とは、絶対値を求める関数になります。
</p>
<p class= "blog-text">
そもそも、絶対値とは0からの距離を表す値のことをいいます。
</p>
<p class= "blog-text">
そのため、符号が違っても同じ数字であれば絶対値は同じになります。
</p>
<h3 id="rtoc-2"  class= "blog-h3head">abs()の書き方</h3>
<p class= "blog-text">
abs()の書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">abs(&quot;対象の値&quot;)</pre>
<p class= "blog-text">
abs()と記載し、括弧に必須のパラメータを1つ指定することで使用することができます。
</p>
<h3 id="rtoc-3"  class= "blog-h3head">abs()のパラメータ</h3>
<p class= "blog-text">
abs()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>対象の値:(必須)<br />
絶対値を求めるための値を指定する。</li>
</ol>
</div>
</div>
<p class= "blog-text">
abs()は必須なパラメータをとして「対象の値」を指定します。
</p>
<h3 id="rtoc-4"  class= "blog-h3head">abs()の返り値</h3>
<p class= "blog-text">
abs()の返り値は対象の値の絶対値となります。
</p>
<h2 id="rtoc-5"  class="hh hh28">abs()の基本的な使い方</h2>
<p class="blog-h2text">
abs()で絶対値を求めるサンプルコードをご紹介します。
</p>
<p class= "blog-text">
ここでは下記の3パターンに対して使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>対象の値が数値である場合</li>
<li>対象の値が文字列である場合</li>
<li>対象の値が真偽値である場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-6"  class= "blog-h3head">対象の値が数値である場合</h3>
<p class= "blog-text">
対象の値が数値である場合にabs()を使用すると絶対値を返します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の数値-1')
num1 = 13
print(num1)

print(&quot;● abs()使用後-1&quot;)
print(abs(num1))

print('● 対象の数値-2')
num2 = -15
print(num2)

print(&quot;● abs()使用後-2&quot;)
print(abs(num2))

print('● 対象の数値-3')
num3 = -12.987
print(num3)

print(&quot;● abs()使用後-3&quot;)
print(abs(num3))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-1.webp" alt="対象の値が数値である場合にabs()で絶対値を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13311" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
abs()で指定した値の絶対値を取得しています。
</p>
<p class= "blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「13」の絶対値は「13」</li>
<li>「-15」の絶対値は「15」</li>
<li>「-12.987」の絶対値は「12.987」</li>
</ul>
</div>
</div>
<h3 id="rtoc-7"  class= "blog-h3head">対象の値が文字列である場合</h3>
<p class= "blog-text">
対象の値が文字列である場合にabs()を使用するとエラーが発生します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の文字列')
str1 = 'abs'
print(str1)

print(&quot;● abs()使用後&quot;)
print(abs(str1))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-2.webp" alt="対象の値が文字列である場合にabs()で絶対値を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13310" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
abs()で指定した値の絶対値を取得しています。
</p>
<p class= "blog-text">
今回は文字列を指定した為、エラーが発生しています。
</p>
<h3 id="rtoc-8"  class= "blog-h3head">対象の値が真偽値である場合</h3>
<p class= "blog-text">
対象の値が真偽値である場合にabs()を使用すると「0」か「1」が返されます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の真偽値-1')
bl1 = True
print(bl1)

print(&quot;● abs()使用後-1&quot;)
print(abs(bl1))

print('● 対象の真偽値-2')
bl2 = False
print(bl2)

print(&quot;● abs()使用後-2&quot;)
print(abs(bl2))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-3.webp" alt="対象の値が真偽値である場合にabs()で絶対値を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13309" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-1-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
abs()で真偽値の絶対値を取得しています。
</p>
<p class= "blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「True」の絶対値は「1」</li>
<li>「False」の絶対値は「0」</li>
</ul>
</div>
</div>
<h2 id="rtoc-9"  class="hh hh28">abs()で複数の値の絶対値を一気に取得する場合</h2>
<p class="blog-h2text">
abs()で複数の値の絶対値を一気に取得するには、繰り返し処理を使用します。
</p>
<p class= "blog-text">
絶対値を求めたい値をリストに格納し、繰り返し処理内でabs()使用することで複数の値の絶対値を一気に求めることができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の値')
abs_list = [12, -3.45, 999, -93, True, False]
print(abs_list)

print(&quot;● abs()使用後&quot;)
for abs_item in abs_list:
    print(abs(abs_item))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-2.webp" alt="abs()で複数の値の絶対値を一気に取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13315" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
abs()で複数の値の絶対値を一気に取得しています。
</p>
<p class= "blog-text">
そのため、下記のような結果となって表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「12」の絶対値は「12」</li>
<li>「-3.45」の絶対値は「3.45」</li>
<li>「999」の絶対値は「999」</li>
<li>「-93」の絶対値は「93」</li>
<li>「True」の絶対値は「1」</li>
<li>「False」の絶対値は「0」</li>
</ul>
</div>
</div>
<h2 id="rtoc-10"  class="hh hh28">abs()の応用的な使い方</h2>
<p class="blog-h2text">
先ほどまでabs()で指定した数値の絶対値を取得していましたが、複雑な数値の絶対値を取得する応用な使い方ができます。
</p>
<p class= "blog-text">
そのため、ここではabs()の応用的な使い方についてご紹介します。
</p>
<h3 id="rtoc-11"  class= "blog-h3head">対象の値が無限大である場合</h3>
<p class= "blog-text">
abs()を無限大の値に対して使用すると、「inf」を返します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の無限大-1')
abs_inf1 = float('inf')
print(abs_inf1)

print(&quot;● abs()使用後-1&quot;)
print(abs(abs_inf1))

print('● 対象の無限大-2')
abs_inf2 = -float('inf')
print(abs_inf2)

print(&quot;● abs()使用後-1&quot;)
print(abs(abs_inf2))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-1.webp" alt="対象の値が無限大である場合abs()で絶対値を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13314" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
abs()で無限大の絶対値を取得しています。
</p>
<p class= "blog-text">
そのため、下記のような結果となって表示されています。。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「正の無限大」の絶対値は「inf」</li>
<li>「負の無限大」の絶対値は「inf」</li>
</ul>
</div>
</div>
<h3 id="rtoc-12"  class= "blog-h3head">対象の値が複素数である場合</h3>
<p class= "blog-text">
abs()を複素数の値に対して使用すると、平方根で計算した値を返します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の複素数-1')
abs_comp1 = 4 + 8j
print(abs_comp1)

print(&quot;● abs()使用後-1&quot;)
print(abs(abs_comp1))

print('● 対象の複素数-2')
abs_comp2 = -3 + 4j
print(abs_comp2)

print(&quot;● abs()使用後-2&quot;)
print(abs(abs_comp2))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-2.webp" alt="対象の値が複素数である場合abs()で絶対値を取得した結果" width="1016" height="568" class="alignnone size-full wp-image-13313" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-2.webp 1016w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-2-300x168.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-2-768x429.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-3-2-940x526.webp 940w" sizes="(max-width: 1016px) 100vw, 1016px" />
</div>
<p class= "blog-text">
abs()で複素数の値の絶対値を取得しています。
</p>
<p class= "blog-text">
そのため、下記のような結果となって表示されています。。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「4 + 8j」の絶対値は「8.94427190999916」</li>
<li>「-3 + 4j」の絶対値は「5」</li>
</ul>
</div>
</div>
<h2 id="rtoc-13"  class="hh hh28">abs()を使用した実際のケース</h2>
<p class="blog-h2text">
abs()を使用した実際のケースについてご紹介します。
</p>
<p class= "blog-text">
例えば、abs()を使用して1か月の最高平均気温から一番差がある日付を求めるような処理を作成します。
</p>
  <div class="sng-box box29"><div class="box-title">使用環境</div><div class="box-content">
<p class= "hh30">
flask
</p>
</div></div>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;!DOCTYPE html&gt; 
&lt;html lang=&quot;ja&quot;&gt; 
    &lt;head&gt; 
        &lt;title&gt;abs()で絶対値を取得&lt;/title&gt;
        &lt;meta charset=&quot;utf-8&quot;/&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;h1&gt;東京の気温&lt;/h1&gt;
        &lt;div class= &quot;mon-table&quot;&gt;
            {% for date, temp in lists: %}
            &lt;div id = &quot;{{ temp }}&quot; class =&quot;date-cell&quot;&gt;{{ date }}
                &lt;p&gt;{{ temp }}&lt;/p&gt;
            &lt;/div&gt;
            {% endfor %}
        &lt;/div&gt;
        &lt;form action=&quot;/&quot; method=&quot;POST&quot;&gt;
            &lt;button type=&quot;submit&quot;&gt;結果&lt;/button&gt; 
        &lt;/form&gt; 
    &lt;/body&gt; 
    &lt;style&gt;
    .mon-table {
        border: 1px solid;
        display: flex;
        flex-wrap: wrap;
        width: 625px;
    }
    .date-cell {
        border: 1px solid;
        width: 100px;
        margin: 1px;
        text-align: center;
    }
    &lt;/style&gt;
&lt;/html&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● result.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;!DOCTYPE html&gt; 
&lt;html lang=&quot;ja&quot;&gt; 
    &lt;head&gt; 
        &lt;title&gt;abs()で絶対値を取得&lt;/title&gt;
        &lt;meta charset=&quot;utf-8&quot;/&gt;
    &lt;/head&gt;
    &lt;body&gt;
        &lt;h1&gt;東京の気温&lt;/h1&gt;
        &lt;div class= &quot;mon-table&quot;&gt;
            {% for date, temp in lists: %}
            &lt;div id = &quot;{{ temp }}&quot; class =&quot;date-cell&quot;&gt;{{ date }}
                &lt;p&gt;{{ temp }}&lt;/p&gt;
            &lt;/div&gt;
            {% endfor %}
        &lt;/div&gt;
    &lt;/body&gt;
    &lt;style&gt;
    .mon-table {
        border: 1px solid;
        display: flex;
        flex-wrap: wrap;
        width: 625px;
    }
    .date-cell {
        border: 1px solid;
        width: 100px;
        margin: 1px;
        text-align: center;
    }
    .accent-val {
        background:tomato;
    }
    &lt;/style&gt;
    &lt;script&gt;
    window.addEventListener('load', function() {
        let max_temp = document.getElementById('{{ temp_ret }}')
        max_temp.classList.add('accent-val')
        })
    &lt;/script&gt;
&lt;/html&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">from flask import Flask, render_template
import requests
import json

app = Flask(__name__) 

API_URL = f'https://api.open-meteo.com/v1/forecast?latitude=35.6785&amp;longitude=139.6823&amp;daily=temperature_2m_max&amp;timezone=Asia%2FTokyo&amp;past_days=31&amp;forecast_days=1' 
headers = {&quot;content-type&quot;: &quot;application/json&quot;}

response = requests.get(API_URL, headers=headers)
data = response.json()
daily = data['daily']
date_list = daily['time']
temp_list = daily['temperature_2m_max']

@app.route('/') 
def index():
    return render_template('index.html', lists = zip(date_list, temp_list)) 

@app.route('/', methods=['POST']) 
def index2(): 

    temp_sum = 0
    day_cnt = len(temp_list)
    for tempA in temp_list:
        temp_sum = temp_sum + tempA

    temp_ave = round(temp_sum / day_cnt, 1)

    def abs_diff(tempB):
        temp_diff = abs(tempB - temp_ave)
        return temp_diff
    
    temp_diff_list = list(map(abs_diff, temp_list))
    temp_diff_max = max(temp_diff_list)
    temp_idx = list(temp_diff_list).index(temp_diff_max)
    temp = temp_list[temp_idx]

    return render_template('index2.html', lists = zip(date_list, temp_list), temp_ret = str(temp)) 

if __name__ == '__main__': 
    app.run()</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果(登録成功時)</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-result-4-min.gif" alt="abs()で1か月の平均気温から一番差がある日付を求める処理を作成した結果" width="1000" height="590" class="alignnone size-full wp-image-13343" />
</div>
<p class= "blog-text">
abs()で1か月の平均気温から一番差がある日付を求めています。
</p>
<p class= "blog-text">
今回は下記のような処理を行い、その中でabs()を使用しています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>requestsで過去1ヶ月の最高気温のデータをリストをAPIで取得。</li>
<li>受け取った最高気温のデータから最高平均気温を計算。</li>
<li>最高平均気温からそれぞれの最高気温を引き、abs()にて絶対値を取得したリストを作成。</li>
<li>絶対値のリストにmax()とindex()を使用して、一番差がある日付のインデックスを取得。</li>
<li>APIリストに先ほど取得したインデックスを指定して最高気温を取得。<br />
(HTML要素のidとして渡すため)</li>
</ol>
</div>
</div>
<p class= "blog-text">
今回は符号有による数値の比較を避けたいため、abs()にて符号を無くして数値の比較を行っています。
</p>
<p class= "blog-text">
そのため、「結果」を押すと、1ヶ月の最高平均気温から一番離れている「2024/04/24」の色が赤色に変化しています。
</p>
<h2 id="rtoc-14"  class="hh hh28">絶対値を取得する他の方法</h2>
<p class= "blog-h2text">
Pythonで絶対値を取得する他の方法としてmath.fabs()があります。
</p>
<p class= "blog-text">
math.fabs()とは、mathクラスで準備されている絶対値を求める関数となります。
</p>
<p class= "blog-text">
そのため、返り値は絶対値になりますが、全て浮動小数点数型になります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import math

print('● 対象の数値-1')
num1 = 13
print(num1)

print(&quot;● abs()使用後-1&quot;)
print(math.fabs(num1))

print('● 対象の数値-1')
num2 = -13.456
print(num2)

print(&quot;● abs()使用後-2&quot;)
print(math.fabs(num2))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-math_fabs-result.webp" alt="math.fabs()で絶対値を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13312" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-math_fabs-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-math_fabs-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-math_fabs-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-abs-math_fabs-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class= "blog-text">
math.fabs()で指定した値の絶対値を取得しています。
</p>
<p class= "blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>「13」の絶対値は「13.0」</li>
<li>「-13.456」の絶対値は「13.456」</li>
</ul>
</div>
</div>
<h2 id="rtoc-15"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class= "blog-h2text">
● abs()とは指定した値の絶対値を求めることができる関数である。
</p>
<p class= "blog-text">
● abs()を使用するには下記のパラメータを指定する。<br />
対象の値:必須
</p>
<p class= "blog-text">
● 数値に対してabs()を使用すると、指定した値の絶対値を返す。
</p>
<p class= "blog-text">
● 文字列に対してabs()を使用すると、エラーが発生する。
</p>
<p class= "blog-text">
● 真偽値に対してabs()を使用すると、指定した値の絶対値を返す。<br />
(「TRUE」だと「1」、「FALSE」だと「0」を返す。)
</p>
<p class= "blog-text">
● abs()で複数の値の絶対値を一気に求める場合は繰り返し処理を使用する。
</p>
<p class= "blog-text">
● 複素数の値に対してabs()を使用すると、指定した複素数の絶対値を返す。<br />
(平方根で計算した値が絶対値になる。)
</p>
<p class= "blog-text">
● 無限大の値に対してabs()を使用すると、指定した無限大の絶対値を返す。
</p>
<p class= "blog-text">
● abs()以外で絶対値を取得する方法としてmath.fabs()がある。<br />
(返り値が全て浮動小数点数となる。)
</p>
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【Python】Counterでリスト(List)の各要素の格納数をカウント！</title>
		<link>https://sossy-blog.com/useful/13031/</link>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Sat, 13 Apr 2024 02:45:35 +0000</pubDate>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[お役立ち]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=13031</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-icatch-520x300.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年04月13日に投稿されました。) Pythonでリスト(List)の各要素の格納数をカウントするにはCounter使用します。 Counterとは、オブジェクト内の各値の数をカウントするcollec ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-icatch-520x300.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年04月13日に投稿されました。)</p>
<p class="blog-h2text">
Pythonでリスト(List)の各要素の格納数をカウントするには<span class= "keiko_red">Counter</span>使用します。
</p>
<p class="blog-text">
Counterとは、オブジェクト内の各値の数をカウントするcollectionsモジュールのクラスになります。
</p>
<p class="blog-text">
そのため、リスト(List)に対して使用すると各要素の格納数をカウントし、「要素:個数」のペアとなる辞書型で返ってきます。
</p>
<p class="blog-text">
また、 多次元リストに対しても使用できますが、カウントしたいリストの範囲によって方法が異なるため注意してください。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">PythonのCounterでリスト(List)の各要素の格納数をカウントする方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
リスト(List)の各要素の出現回数を調べたい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">Counterとは</h2>
<p class= "blog-h2text">
Counterとは、<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">オブジェクトの各値の出現回数をカウントするcollectionsモジュールのクラス</span></span>になります。
</p>
<p class="blog-text">
そのため、リスト(List)に対して使用するとリストに格納されている要素の出現回数をカウントします。
</p>
<h3 id="rtoc-2"  class= "blog-h3head">Counterの書き方</h3>
<p class="blog-text">
Counterの書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

collections.Counter(対象のリスト(List))</pre>
<p class="blog-text">
まず、importでcollectionsクラスをインポートします。
</p>
<p class="blog-text">
そして、collections.Counter()の括弧にパラメータを1つ追記します。
</p>
<h3 id="rtoc-3"  class= "blog-h3head">Counterのパラメータ</h3>
<p class="blog-text">
Counterのパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>対象のリスト(List):必須<br />
要素の出現回数をカウントする一次元リスト(List)を指定する。</li>
</ol>
</div>
</div>
<p class="blog-text">
Counter()は必須なパラメータとして「<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">対象のリスト(List)</span></span>」を指定します。
</p>
<h3 id="rtoc-4"  class= "blog-h3head">Counterの返り値</h3>
<p class="blog-text">
Counterの返り値は「要素名: 要素数」の辞書型(dict)となります。
</p>
<h2 id="rtoc-5"  class="hh hh28">Counterでリスト(List)の各要素の格納数をカウントするサンプルコード</h2>
<p class= "blog-h2text">
Counterでリスト(List)の各要素の格納数をカウントするサンプルコードをご紹介します。
</p>
<p class="blog-text">
ここでは下記の2パターンでCounterを使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>リスト(List)に要素が存在する場合</li>
<li>リスト(List)に要素が存在しない場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-6"  class= "blog-h3head">リスト(List)に要素が存在する場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">リスト(List)に要素が存在する場合</span></span>にCounterを使用すると、リスト内の各要素の出現回数をカウントします。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のリスト')
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java']
print(list1)

print(&quot;● Counter()使用後&quot;)
list1_counter = collections.Counter(list1)
print(list1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-1.webp" alt="リスト(List)に要素が存在する場合にCounterで各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13198" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterでリスト(List)の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 1, &#8216;PHP&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;C#&#8217;: 1, &#8216;Java&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-7"  class= "blog-h3head">リスト(List)に要素が存在しない場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">リスト(List)に要素が存在しない場合</span></span>にCounterを使用すると、空を返します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のリスト')
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java']
print(list1)

print(&quot;● Counter()使用後&quot;)
list1_counter = collections.Counter(list1)
print(list1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-2.webp" alt="リスト(List)に要素が存在しない場合にCounterで各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13197" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-1-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterでリスト(List)の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
今回はリストに要素が存在しないため、「Counter()」が表示されています。
</p>
<h2 id="rtoc-8"  class="hh hh28">型の異なる同じ要素を持つリスト(List)に対してCounterを使用する場合</h2>
<p class= "blog-h2text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">型の異なる同じ要素を持つリスト(List)</span></span>に対してCounterを使用すると、それぞれ違う要素としてカウントするようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のリスト')
list1 = ['10', '20', '30', '40', '50', 10, 20, 30, 40, 50]
print(list1)

print(&quot;● Counter()使用後&quot;)
list1_counter = collections.Counter(list1)
print(list1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-2.webp" alt="型の異なる同じ要素を持つリスト(List)に対してCounterを使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13207" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterで型の異なる同じ要素を持つリスト(List)の各要素をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8217;10&#8217;: 1, &#8217;20&#8217;: 1, &#8217;30&#8217;: 1, &#8217;40&#8217;: 1, &#8217;50&#8217;: 1, 10: 1, 20: 1, 30: 1, 40: 1, 50: 1}</li>
</ul>
</div>
</div>
<h2 id="rtoc-9"  class="hh hh28">Counterで多次元リスト(List)の各要素の格納数をカウントするサンプルコード</h2>
<p class= "blog-h2text">
Counterで多次元リスト(List)の各要素の格納数をカウントするサンプルコードをご紹介します。
</p>
<p class="blog-text">
多次元リストに対して使用する場合は、アクセスする次元が異なるためカウントしたい箇所によって処理内容が異なります。
</p>
<p class="blog-text">
そのためここでは、多次元リストに対してCounterを下記の3つの場合で使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>指定したリスト(List)の要素をカウントする場合</li>
<li>各リスト(List)の要素をカウントする場合</li>
<li>リスト(List)全体の要素をカウントする場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-10"  class= "blog-h3head">指定したリスト(List)の要素をカウントする場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">指定したリスト(List)の要素をカウントする場合</span></span>はリスト変数の後ろにインデックスを指定します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#','Python', 'Swift'],
    ['Ruby', 'Python', 'Java', 'C'],
    ['C++', 'Pyhton','Kotlin', 'JavaScript']
    ]
print(list1)

print(&quot;● Counter()使用後-1&quot;)
list1_counter = collections.Counter(list1[2])
print(list1_counter)

print('● 対象の3次元リスト')
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Python'], ['Java', 'C']],
    [['C++', 'Pyhton'], ['Kotlin', 'JavaScript']]
    ]
print(list2)

print(&quot;● Counter()使用後-2&quot;)
list2_counter = collections.Counter(list2[2][1])
print(list2_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-1.webp" alt="Counterで指定したリストの要素をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13205" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterで指定したリスト(List)の要素をカウントしています。
</p>
<p class="blog-text">
今回は指定したリスト(List)の要素を対象としたため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;C++&#8217;: 1, &#8216;Pyhton&#8217;: 1, &#8216;Kotlin&#8217;: 1, &#8216;JavaScript&#8217;: 1}</li>
</ul>
</div>
</div>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;Kotlin&#8217;: 1, &#8216;JavaScript&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-11"  class= "blog-h3head">各リスト(List)の要素をカウントする場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">各リスト(List)の要素をカウントする場合</span></span>は繰り返し処理を使用します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#','Python', 'Swift'],
    ['Ruby', 'Python', 'Java', 'C'],
    ['C++', 'Pyhton','Kotlin', 'JavaScript']
    ]
print(list1)

print(&quot;● Counter()使用後-1&quot;)
for list1_m in list1:
    list1_counter = collections.Counter(list1_m)
    print(list1_counter)

print('● 対象の3次元リスト')
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Python'], ['Java', 'C']],
    [['C++', 'Pyhton'], ['Kotlin', 'JavaScript']]
    ]
print(list2)

print(&quot;● Counter()使用後-2&quot;)
for list2_m in list2:
    for list2_mn in list2_m:
        list2_counter = collections.Counter(list2_mn)
        print(list2_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-2.webp" alt="Counterで各リストの要素をカウントした結果" width="1000" height="590" class="alignnone size-full wp-image-13204" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-2-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-2-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-2-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterで各リスト(List)の要素をカウントしています。
</p>
<p class="blog-text">
今回は各リスト(List)の要素を対象としたため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 1, &#8216;C#&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;Swift&#8217;: 1}</li>
<li>{&#8216;Ruby&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;Java&#8217;: 1, &#8216;C&#8217;: 1}</li>
<li>{&#8216;C++&#8217;: 1, &#8216;Pyhton&#8217;: 1, &#8216;Kotlin&#8217;: 1, &#8216;JavaScript&#8217;: 1}</li>
</ul>
</div>
</div>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 1, &#8216;C#&#8217;: 1}</li>
<li>{&#8216;Python&#8217;: 1, &#8216;Swift&#8217;: 1}</li>
<li>{&#8216;Ruby&#8217;: 1, &#8216;Python&#8217;: 1}</li>
<li>{&#8216;Java&#8217;: 1, &#8216;C&#8217;: 1}</li>
<li>{&#8216;C++&#8217;: 1, &#8216;Pyhton&#8217;: 1}</li>
<li>{&#8216;Kotlin&#8217;: 1, &#8216;JavaScript&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-12"  class= "blog-h3head">リスト(List)全体の要素をカウントする場合</h3>
<p class="blog-text">
<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">リスト(List)全体の要素をカウントする場合</span></span>は、多次元リストを単次元リストに一度変換(フラット化)します。
</p>
<p class="blog-text">
フラットにすることで各リストに格納されている要素が横一列となり、そのリストに対してCounter()を使用することで、全体に格納された要素をカウントすることができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections
import itertools

print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#','Python', 'Swift'],
    ['Ruby', 'Python', 'Java', 'C'],
    ['C++', 'Pyhton', 'Kotlin', 'JavaScript']
    ]
print(list1)

print(&quot;● Counter()使用後-1&quot;)
list1_flat = itertools.chain.from_iterable(list1)
list1_counter = collections.Counter(list1_flat)
print(list1_counter)

print('● 対象の3次元リスト')
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Python'], ['Java', 'C']],
    [['C++', 'Pyhton'], ['Kotlin', 'JavaScript']]
    ]
print(list2)

print(&quot;● Counter()使用後-2&quot;)
list2_flat_M = itertools.chain.from_iterable(list2)
list2_flat = list(itertools.chain.from_iterable(list2_flat_M))
list2_counter = collections.Counter(list2_flat)
print(list2_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-3.webp" alt="Counterでリスト全体の要素をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13206" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-3-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterでリスト(List)全体の要素をカウントしています。
</p>
<p class="blog-text">
今回はリスト(List)全体の要素を対象としたため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 2, &#8216;Python&#8217;: 2, &#8216;C#&#8217;: 1, &#8216;Swift&#8217;: 1, &#8216;Ruby&#8217;: 1, &#8216;Java&#8217;: 1, &#8216;C&#8217;: 1, &#8216;C++&#8217;: 1, &#8216;Pyhton&#8217;: 1, &#8216;Kotlin&#8217;: 1}</li>
</ul>
</div>
</div>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 2, &#8216;Python&#8217;: 2, &#8216;C#&#8217;: 1, &#8216;Swift&#8217;: 1, &#8216;Ruby&#8217;: 1, &#8216;Java&#8217;: 1, &#8216;C&#8217;: 1, &#8216;C++&#8217;: 1, &#8216;Pyhton&#8217;: 1, &#8216;Kotlin&#8217;: 1}</li>
</ul>
</div>
</div>
<h2 id="rtoc-13"  class="hh hh28">Counterを使用した実際のケース</h2>
<p class= "blog-h2text">
Counterを使用した実際のケースについてご紹介します。
</p>
<p class="blog-text">
例えば、Counterで登録されたユーザーとそのアカウント数の一覧を表示するようなコードを作成します。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;!DOCTYPE html&gt; 
&lt;html lang=&quot;ja&quot;&gt; 
    &lt;head&gt; 
        &lt;title&gt;Counter()でリスト(List)の各要素の格納数をカウント&lt;/title&gt; 
        &lt;meta charset=&quot;utf-8&quot;/&gt; 
    &lt;/head&gt; 
    &lt;body&gt; 
        &lt;h1&gt;登録者とアカウント数の一覧&lt;/h1&gt;
        &lt;table border=&quot;1&quot;&gt;
            &lt;thead&gt;
                &lt;tr&gt;
                    &lt;th scope=&quot;col&quot;&gt;名前&lt;/th&gt;
                    &lt;th scope=&quot;col&quot;&gt;電話番号&lt;/th&gt;
                    &lt;th scope=&quot;col&quot;&gt;登録アカウント数&lt;/th&gt;
                &lt;/tr&gt;
            &lt;/thead&gt;
            &lt;tbody&gt;
                {% for user, cnt in userList.items(): %} 
                &lt;tr&gt;
                    &lt;th scope=&quot;row&quot;&gt;{{ user[0] }}&lt;/th&gt;
                    &lt;td&gt;{{ user[1] }}&lt;/td&gt;
                    &lt;td&gt;{{ cnt }}&lt;/td&gt;
                &lt;/tr&gt;
                {% endfor %}
            &lt;/tbody&gt;
        &lt;/table&gt;
    &lt;/body&gt; 
&lt;/html&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">from flask import Flask, render_template, request
import collections
import sqlite3

app = Flask(__name__)


@app.route('/') 
def index():
    try:
        dbname = '***.db'
        connect = sqlite3.connect(dbname)
        cur = connect.cursor()
        cur.execute('SELECT name, phone FROM usrTBL;')
        usrPhone = cur.fetchall()
        usr_counter = collections.Counter(usrPhone)
        print(usr_counter)

    except Exception as e:
        print(e)

    finally:
        return render_template('index.html', userList = usr_counter) 

if __name__ == '__main__': 
    app.run()</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-4.webp" alt="Counterで登録されたユーザーとそのアカウント数の一覧を表示した結果" width="1000" height="590" class="alignnone size-full wp-image-13231" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-4-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-4-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-4-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counter()で登録されたユーザーとそのアカウント数の一覧を表示しています。
</p>
<p class="blog-text">
今回は下記のような処理を行っています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>登録しているDB(SQLite)から「名前」と「携帯電話」を取り出す。</li>
<li>取り出したリストに対してCounter()で集計。</li>
<li>集計した結果を画面に表示。</li>
</ol>
</div>
</div>
<p class="blog-text">
そのため、DBに登録されているユーザー名とデータを集計して画面に表示されています。
</p>
<h2 id="rtoc-14"  class="hh hh28">Counterでリスト(List)以外の各要素の格納数をカウントする場合</h2>
<p class= "blog-h2text">
Counterでリスト(List)以外の各要素の格納数をカウントします。
</p>
<h3 id="rtoc-15"  class= "blog-h3head">タプル(tuple)の場合</h3>
<p class="blog-text">
Counterをタプル(tuple)に対して使用します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のタプル')
tuple1 = ('JavaScript', 'PHP', 'Python', 'C#', 'Java', 'PHP', 'PHP')
print(tuple1)

print(&quot;● Counter()使用後-1&quot;)
tuple1_counter = collections.Counter(tuple1)
print(tuple1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-1.webp" alt="Counterでタプル(tuple)の各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13212" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counter()でタプル(tuple)の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;PHP&#8217;: 3, &#8216;JavaScript&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;C#&#8217;: 1, &#8216;Java&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-16"  class= "blog-h3head">辞書(dict)の場合</h3>
<p class="blog-text">
Counterを辞書型(dict)型に使用します。
</p>
<p class="blog-text">
結論を言うと、Counterは直接、辞書型に使用できません。
</p>
<p class="blog-text">
しかし、item()やkeys()、values()でペアやキー、値を取り出したイテラルに対して使用することができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象の辞書')
dict1 = {'JavaScript':'ジャバスクリプト', 'PHP':'ピーエイチピー', 'Python': 'パイソン','Java': 'ジャバ'}
print(dict1)

print(&quot;● Counter()使用後-1&quot;)
doct1_item = dict1.items()
dict1_counter1 = collections.Counter(doct1_item)
print(dict1_counter1)

print(&quot;● Counter()使用後-2&quot;)
doct1_key = dict1.keys()
dict1_counter2 = collections.Counter(doct1_key)
print(dict1_counter2)

print(&quot;● Counter()使用後-3&quot;)
doct1_value = dict1.values()
dict1_counter3 = collections.Counter(doct1_value)
print(dict1_counter3)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-2.webp" alt="Counterで辞書(dict)型の各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13215" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterで辞書(dict)型の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{(&#8216;JavaScript&#8217;, &#8216;ジャバスクリプト&#8217;): 1, (&#8216;PHP&#8217;, &#8216;ピーエイチピー&#8217;): 1, (&#8216;Python&#8217;, &#8216;パイソン&#8217;): 1, (&#8216;Java&#8217;, &#8216;ジャバ&#8217;): 1}</li>
<li>{&#8216;JavaScript&#8217;: 1, &#8216;PHP&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;Java&#8217;: 1}</li>
<li>{&#8216;ジャバスクリプト&#8217;: 1, &#8216;ピーエイチピー&#8217;: 1, &#8216;パイソン&#8217;: 1, &#8216;ジャバ&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-17"  class= "blog-h3head">set(集合)型の場合</h3>
<p class="blog-text">
Counterをset(集合)型に使用します。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のset')
set1 = set(['JavaScript', 'PHP', 'Python', 'C#', 'Java'])
print(set1)

print(&quot;● Counter()使用後&quot;)
set1_counter = collections.Counter(set1)
print(set1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-3.webp" alt="CounterでSet(集合)型の各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13211" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
CounterでSet(集合)型の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;JavaScript&#8217;: 1, &#8216;Java&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;PHP&#8217;: 1, &#8216;C#&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-18"  class= "blog-h3head">frozenset(不変な集合)型の場合</h3>
<p class="blog-text">
Counterをfrozenset(不変な集合)型に使用します。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のfrozenset')
fset1 = frozenset(['JavaScript', 'PHP', 'Python', 'C#', 'Java'])
print(fset1)

print(&quot;● Counter()使用後&quot;)
fset1_counter = collections.Counter(fset1)
print(fset1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-4.webp" alt="Counterでfrozenet(不変な集合)型の各要素の格納数をカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13210" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-4.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-4-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-4-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-4-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
Counterでfrozenet(不変な集合)型の各要素の格納数をカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;PHP&#8217;: 1, &#8216;Python&#8217;: 1, &#8216;JavaScript&#8217;: 1, &#8216;Java&#8217;: 1, &#8216;C#&#8217;: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-19"  class= "blog-h3head">range()オブジェクトの場合</h3>
<p class="blog-text">
Counterをrange()オブジェクトに使用します。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象のrange()オブジェクト')
list1 = range(0,10)
print(list1)

print(&quot;● Counter()使用後&quot;)
list1_counter = collections.Counter(list1)
print(list1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-5.webp" alt="range()オブジェクトの各要素の格納数をCounterでカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13209" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-5-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-5-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-5-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
range()オブジェクトの各要素の格納数をCounterでカウントしています。
</p>
<p class="blog-text">
そのため、下記のように表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{0: 1, 1: 1, 2: 1, 3: 1, 4: 1, 5: 1, 6: 1, 7: 1, 8: 1, 9: 1}</li>
</ul>
</div>
</div>
<h3 id="rtoc-20"  class= "blog-h3head">文字列の場合</h3>
<p class="blog-text">
Counterを文字列に使用します。
</p>
<p class="blog-text">
Counterを文字列に対して使用した場合、一文字単位でカウントするようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import collections

print('● 対象の文字列')
text1 = 'JavaScript'
print(text1)

print(&quot;● Counter()使用後&quot;)
text1_counter = collections.Counter(text1)
print(text1_counter)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-6.webp" alt="文字列の各文字の出現数をCounterでカウントした結果" width="1000" height="580" class="alignnone size-full wp-image-13208" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-6.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-6-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-6-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-result-5-6-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
文字列の各文字の出現数をCounterでカウントしています。
</p>
<p class="blog-text">
そのため、下記のような結果が表示されています。
</p>
  <div class="sng-box box1">
<div class="li-mainbdr strong">
<ul>
<li>{&#8216;a&#8217;: 2, &#8216;J&#8217;: 1, &#8216;v&#8217;: 1, &#8216;S&#8217;: 1, &#8216;c&#8217;: 1, &#8216;r&#8217;: 1, &#8216;i&#8217;: 1, &#8216;p&#8217;: 1, &#8216;t&#8217;: 1}</li>
</ul>
</div>
</div>
<h2 id="rtoc-21"  class="hh hh28">リスト(List)から特定の要素の出現回数を取得する場合</h2>
<p class= "blog-h2text">
リスト(List)から特定の要素の出現回数を取得するにはcount()を使用します。
</p>
<p class="blog-text">
count()とは、オブジェクトから指定した値の出現数をカウントする関数になります。
</p>
<p class="blog-text">
そのため、リストに対して使用することで特定要素の格納数をカウントすることができます。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト')
list1 = ['JavaScript', 'PHP', 'Python', 'PHP', 'Java']
print(list1)

print(&quot;● count()使用後&quot;)
list1_cnt = list1.count('PHP')
print('PHP: ' + str(list1_cnt))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-count-result.webp" alt="count()でリスト(List)から特定の要素の出現回数を取得した結果" width="1000" height="580" class="alignnone size-full wp-image-13213" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-count-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-count-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-count-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-counter-count-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
count()でリスト(List)から特定の要素の出現回数を取得しています。
</p>
<p class="blog-text">
今回はPHPを指定したため、PHPの格納数である「2」が表示されています。
</p>
<p class="blog-text">
もし、count()で指定した要素の格納数を取得する内容ついて詳しく知りたい場合は下記の記事をご参考ください。
</p>
<div class="linkcard"><div class="lkc-internal-wrap"><a class="lkc-link no_icon" href="https://sossy-blog.com/useful/12418/"><div class="lkc-card"><div class="lkc-info"><img class="lkc-favicon lazyloaded loaded" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width="16" height="16" data-src="https://www.google.com/s2/favicons?domain=sossy-blog.com" decoding="async" data-was-processed="true"><noscript><img decoding="async" class="lkc-favicon" src="https://www.google.com/s2/favicons?domain=sossy-blog.com" alt="" width=16 height=16 data-eio="l"/></noscript><div class="lkc-domain">Sossyの助太刀ブログ</div><div class="lkc-date">3月 24, 2024</div></div><div class="lkc-content"><figure class="lkc-thumbnail"><img decoding="async" width="150" height="150" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-count-icatch-150x150.webp" class="lkc-thumbnail-img loaded ls-is-cached lazyloaded wp-post-image" alt="【Python】count()でリスト(List)の指定した要素の格納数をカウント！" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-count-icatch-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2024/01/python-count-icatch-160x160.webp 160w" sizes="(max-width: 150px) 100vw, 150px" /></figure><div class="lkc-title"><div class="lkc-title-text">【Python】count()でリスト(List)の指定した要素の格納数をカウント！</div></div><div class="lkc-url">https://sossy-blog.com/useful/12418/</div></div><div class="clear"></div></div></a></div></div>
<h2 id="rtoc-22"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class= "blog-h2text">
● Counterとはオブジェクトの各値の出現数をカウントするクラスである。
</p>
<p class= "blog-text">
● Counterを使用するには下記のパラメータを指定する。<br />
・対象のリスト(必須)
</p>
<p class= "blog-text">
● リスト(List)に要素が存在する場合にCounterを使用すると、リスト内の各要素の出現回数をカウントする。
</p>
<p class= "blog-text">
● リスト(List)に要素が存在しない場合にCounter(使用すると、「Counter()」を返す。
</p>
<p class= "blog-text">
● 型の異なる同じ要素を持つリスト(List)に対してCounterを使用すると、それぞれ違う要素としてカウントする。
</p>
<p class= "blog-text">
● 多次元リストで指定したリストの要素をカウントする場合はリスト変数の後ろにインデックスを指定する。
</p>
<p class= "blog-text">
● 多次元リストで各リストの要素をカウントするには繰り返し処理を使用する。
</p>
<p class= "blog-text">
● 多次元リストでリスト全体の要素をカウントする場合は、多次元リストを単次元リストに一度変換(フラット化)する。
</p>
<p class= "blog-text">
● Counterは下記のリスト(List)以外の各要素の格納数をカウントすることができる。<br />
・タプル<br />
 (タプルの各要素の格納数をカウント)<br />
・辞書(dict)型<br />
 (辞書の各ペアやキー、値の格納数をカウント)<br />
・set(集合)型<br />
 (集合の各要素の格納数をカウント)<br />
・frozenst(不変な集合)型<br />
 (不変な集合の各要素の格納数をカウント)<br />
・range()オブジェクト<br />
 (range()オブジェクトの各要素の格納数をカウント)<br />
・文字列<br />
 (文字列の各文字の出現数をカウント)
</p>
<p class= "blog-text">
● リスト(List)から特定の要素の出現回数を取得するにはcount()を使用する。
</div>
]]></content:encoded>
					
		
		
			</item>
		<item>
		<title>【Python】insert()でリスト(List)の指定した位置に要素を追加する！</title>
		<link>https://sossy-blog.com/useful/12403/</link>
					<comments>https://sossy-blog.com/useful/12403/#respond</comments>
		
		<dc:creator><![CDATA[Sossy]]></dc:creator>
		<pubDate>Wed, 10 Apr 2024 04:12:15 +0000</pubDate>
				<category><![CDATA[Python]]></category>
		<category><![CDATA[お役立ち]]></category>
		<guid isPermaLink="false">https://sossy-blog.com/?p=12403</guid>

					<description><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p>(この記事は2024年04月10日に投稿されました。) Pythonでリスト(List)の指定した位置に要素を追加するにはinsert()使用します。 insert()とは、リストの指定した位置に要素を追加する関数になり ... ]]></description>
										<content:encoded><![CDATA[<p><img src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-icatch.webp" class="webfeedsFeaturedVisual" width="520" height="300" /></p><p class="blog-text" style= "color: rgb(148, 148, 148)">(この記事は2024年04月10日に投稿されました。)</p>
<p class="blog-h2text">
Pythonでリスト(List)の指定した位置に要素を追加するにはinsert()使用します。
</p>
<p class="blog-text">
insert()とは、リストの指定した位置に要素を追加する関数になります。
</p>
<p class="blog-text">
そのため、insert()で指定した要素がリスト内に何個格納されているかを調べることが可能になります。
</p>
<p class="blog-text">
そして、insert()は2次元List(リスト)や3次元List(リスト)のような多次元リストの指定した位置に要素を追加することもできます。
</p>
<p class="blog-text">
Pythonで位置を指定して要素を追加する方法はあまりないため、もしリストの指定した位置に要素を追加したい場合はinsert()を使用しましょう。
</p>
<p class="blog-text">
今回は<span class= "keiko_red"><span style= "font-weight: bold; font-size:20px;">Pythonのinsert()でリスト(List)の指定した位置に要素を追加する方法</span></span>について紹介していきます。
</p>
  <div class="sng-box box29"><div class="box-title">この記事はこんな方におすすめ</div><div class="box-content">
<div class= "recommend-icon">
<img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp" alt="" width="350" height="350" class="alignnone size-full wp-image-5289" srcset="https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon.webp 350w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-300x300.webp 300w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-150x150.webp 150w, https://sossy-blog.com/wp-content/uploads/2022/08/lost-icon-160x160.webp 160w" sizes="(max-width: 350px) 100vw, 350px" />
</div>
<div class= "recommend-type">
<p class= "hh30">
List(リスト)の指定した位置に要素を追加したい場合
</p>
</div>
</div></div>

<h2 id="rtoc-1"  class="hh hh28">insert()とは</h2>
<p class="blog-h2text">
insert()とはリストの指定した位置に要素を格納する関数になります。
</p>
<p class="blog-text">
リストは新しい要素が末尾に追加されていきますが、insert()を使用することで好きな箇所に要素を追加することができます。
</p>
<h3 id="rtoc-2"  class= "blog-h3head">insert()の書き方</h3>
<p class="blog-text">
insert()の書き方は下記のようになります。
</p>
<pre class="urvanov-syntax-highlighter-plain-tag">対象のリスト.insert('追加する位置','追加する要素)</pre>
<p class="blog-text">
対象のリストの後ろにinsert()と追記し、括弧の中に必須のパラメータと任意のパラメータの計2つを指定します。
</p>
<h3 id="rtoc-3"  class= "blog-h3head">insert()のパラメータ</h3>
<p class="blog-text">
insert()のパラメータは下記のようになります。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>追加する位置: (必須)<br />
追加する位置をインデックスで指定する</li>
<li>追加する要素: (必須)<br />
リストに追加する要素を指定する</li>
</ol>
</div>
</div>
<p class="blog-text">
insert()は必須なパラメータとして「追加する要素」と「追加する位置」を指定します。
</p>
<p class="blog-text">
そのため、合計で2つのパラメータを指定する必要があります。
</p>
<h3 id="rtoc-4"  class= "blog-h3head">insert()の返り値</h3>
<p class="blog-text">
insert()の返り値はありません。
</p>
<h2 id="rtoc-5"  class="hh hh28">insert()でリスト(List)の指定した位置に要素を追加するサンプルコード</h2>
<p class="blog-h2text">
insert()でリスト(List)の指定した位置に要素を追加するサンプルコードをご紹介します。
</p>
<p class="blog-text">
ここでは下記の2パターンでinsert()を使用します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>追加する要素がリテラルである場合</li>
<li>追加する要素がイテレータである場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-6"  class= "blog-h3head">追加する要素がリテラルである場合</h3>
<p class="blog-text">
追加する要素がリテラルである場合にinsert()を使用すると、一つの要素としてリストの指定した位置に追加します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● insert()使用後-1&quot;)
list1.insert(2, 'Swift') 
print(list1)

print(&quot;● insert()使用後-2&quot;)
list1.insert(0, 'Kotlin') 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-1.webp" alt="insert()でリスト(List)の指定した位置にリテラル要素を追加した結果" width="1000" height="580" class="alignnone size-full wp-image-13152" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリストの指定した位置にリテラル要素を追加しています。
</p>
<p class="blog-text">
「2」を指定したため、3番目に「Swift」が、「0」を指定したため、1番目に「Kotlin」が追加されています。
</p>
<h3 id="rtoc-7"  class= "blog-h3head">追加する要素がイテレータである場合</h3>
<p class="blog-text">
追加する要素がイテレータである場合にinsert()を使用すると、一つのイテレータ要素として指定した位置に追加します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● insert()使用後&quot;)
list1.insert(0, ['Kotlin', 'Swift']) 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-2.webp" alt="insert()でリスト(List)の指定した位置にイテレータ要素を追加した結果" width="1000" height="580" class="alignnone size-full wp-image-13151" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-1-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリストの指定した位置にイテレータ要素を追加しています。
</p>
<p class="blog-text">
「0」を指定したため、1番目に「Kotlin」と「Swift」が格納されたリストが追加されています。
</p>
<h2 id="rtoc-8"  class="hh hh28">追加する位置を変更してinsert()でリスト(List)の指定した位置に要素を追加する場合</h2>
<p class="blog-h2text">
insert()は追加する位置の指定によって要素の追加位置が異なります。
</p>
<p class="blog-text">
そのため、ここではinsert()の追加する位置を下記の3パターンで変更してリスト(List)の指定した位置に要素を追加します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>追加する位置が要素数未満である場合</li>
<li>追加する位置が要素数以上である場合</li>
<li>追加する位置が負の整数である場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-9"  class= "blog-h3head">追加する位置が要素数未満の場合</h3>
<p class="blog-text">
追加する位置が要素数未満である場合は、指定したインデックスの位置に要素が追加されるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● insert()使用後-1&quot;)
list1.insert(3, 'Swift') 
print(list1)

print(&quot;● insert()使用後-2&quot;)
list1.insert(5, 'Kotlin') 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-1.webp" alt="insert()の追加する位置に要素数未満の数値を指定して使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13156" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-1.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-1-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-1-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-1-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリストの指定した位置に要素を追加しています。
</p>
<p class="blog-text">
今回は要素数よりも小さい「3」と「4」を指定したため、4番目に「Swift」が、5番目に「Kotlin」が追加されています。
</p>
<h3 id="rtoc-10"  class= "blog-h3head">追加する位置が要素数以上である場合</h3>
<p class="blog-text">
追加する位置が要素数以上である場合は、リスト(List)の末尾に要素が追加されるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● insert()使用後-1&quot;)
list1.insert(5, 'Swift') 
print(list1)

print(&quot;● insert()使用後-2&quot;)
list1.insert(10, 'Kotlin') 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-2.webp" alt="insert()の追加する位置に要素数以上の数値を指定して使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13155" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリスト(List)の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
今回は要素数以上である「5」と「10」を指定したため、「Swift」と「Kotlin」がリスト(List)の末尾に追加されています。
</p>
<h3 id="rtoc-11"  class= "blog-h3head">追加する位置が負の整数である場合</h3>
<p class="blog-text">
追加する位置が負の整数である場合は、リストの末尾から数えたインデックスの位置に要素が追加されるようになります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● insert()使用後-1&quot;)
list1.insert(-3, 'Swift') 
print(list1)

print(&quot;● insert()使用後-2&quot;)
list1.insert(-1, 'Kotlin') 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-3.webp" alt="insert()の追加する位置に負の整数の数値を指定して使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13154" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-2-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリスト(List)の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
今回は負の整数である「-3」と「-1」を指定したため、「Swift」が3番目に、「Kotlin」が7番目に追加されています。
</p>
<h2 id="rtoc-12"  class="hh hh28">リスト(List)の指定した複数の位置に要素を追加する場合</h2>
<p class="blog-h2text">
insert()でリスト(List)の指定した複数の位置に要素を追加するには繰り返し処理を使用します。
</p>
<p class="blog-text">
追加したい位置のインデックスをリスト(List)に格納し、繰り返し処理内にinsert()を使用することで、複数の位置に要素を追加することができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'GO'] 
print(list1) 

insert_idx = [0, 2, 4]
print(&quot;● insert()使用後-1&quot;)
for idx in insert_idx:
    list1.insert(idx, 'Java') 
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-5.webp" alt="insert()でリスト(List)の指定した複数の位置に要素を追加した結果" width="1000" height="590" class="alignnone size-full wp-image-13181" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-5.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-5-300x177.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-5-768x453.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-5-940x555.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリスト(List)の指定した複数の位置に要素を追加しています。
</p>
<p class="blog-text">
今回は「0」と「2」と「4」を格納したリストに対して使用したため、1番目と3番目と5番目に「Java」が追加されています。
</p>
<h2 id="rtoc-13"  class="hh hh28">insert()で多次元のリスト(List)の指定した位置に要素を追加するサンプルコード</h2>
<p class="blog-h2text">
insert()で多次元のリスト(List)の指定した位置に要素を追加するサンプルコードについてご紹介します。
</p>
<p class="blog-text">
多次元リスト(List)に対して使用する場合は、次元が異なるため、アクセスする箇所によっては追加する要素の位置が異なります。
</p>
<p class="blog-text">
そのためここでは、下記の3ケースで多次元のリスト(List)の指定した位置に要素を追加します。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>対象リスト(List)の指定した位置に要素を追加する場合</li>
<li>各リスト(List)の指定した位置に要素を追加する場合</li>
<li>リスト(List)全体の指定した位置に要素を追加する場合</li>
</ol>
</div>
</div>
<h3 id="rtoc-14"  class= "blog-h3head">対象リスト(List)の指定した位置に要素を追加する場合</h3>
<p class="blog-text">
insert()でリスト(List)の指定した位置に要素を追加するにはリスト変数の後ろにインデックスを指定します。
</p>
<p class="blog-text">
2次元リストの場合は1つ、3次元リストの場合は2つ指定します。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#'],['Python', 'Swift'], ['Ruby', 'Kotlin']
    ]
print(list1)

print('● insert()使用後-1-1')
list1[1].insert(1,'Java')
print(list1)

print('● insert()使用後-1-2')
list1.insert(2,['Java','C++'])
print(list1)

print('● 対象の3次元リスト') 
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Kotlin'],['GO']]
    ]
print(list2)

print('● insert()使用後-2-1')
list2[1][1].insert(1,'Java')
print(list2)

print('● insert()使用後-2-2')
list2[1].insert(2,['PHP','C++'])
print(list2)

print('● insert()使用後-2-3')
list2.insert(2,[['Ruby','Cobol'],['Rust']])
print(list2)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-1-min.gif" alt="insert()で対象リスト(List)の指定した位置に要素を追加した結果" width="1000" height="590" class="alignnone size-full wp-image-13297" />
</div>
<p class="blog-text">
insert()で対象リスト(List)の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
そのため、下記のような結果が表示されています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>2次元リスト内にある2つ目の1次元リストの2番目に「Java」が追加</li>
<li>2次元リスト(List)の2番目に「[&#8216;Java&#8217;, &#8216;C&#8217;]」が追加</li>
<li>3次元リスト内にある2つ目の2次元リストの2つ目の1次元リストの2番目に「Java」が追加</li>
<li>3次元リスト内にある2つ目の2次元リストの3番目に「[&#8216;PHP&#8217;,&#8217;C++&#8217;]」が追加</li>
<li>3次元リスト内の3番目に「[[&#8216;Ruby&#8217;,&#8217;Cobol&#8217;],[&#8216;Rust&#8217;]]」が追加</li>
</ol>
</div>
</div>
<h3 id="rtoc-15"  class= "blog-h3head">各リスト(List)の指定した位置に要素を追加する場合</h3>
<p class="blog-text">
insert()で各リスト(List)の指定した位置に要素を追加するには繰り返し処理を使用します。
</p>
<p class="blog-text">
繰り返し処理によって多次元リスト内にアクセスでき、各リストを対象にすることができます。
</p>
<p class="blog-text">
また、次元によって繰り返し処理を使用する必要があるため注意してください。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#'],['Python', 'Swift'], ['Ruby', 'Kotlin']
    ]
print(list1)

print('● insert()使用後-1')
for list1_m in list1:
    list1_m.insert(1, 'Java')
print(list1)

print('● 対象の3次元リスト') 
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Kotlin'],['GO']]
    ]
print(list2)

print('● insert()使用後-2-1')
for list2_m in list2:
    for list2_mn in list2_m:
        list2_mn.insert(0, 'Java')
print(list2)

print('● insert()使用後-2-2')
for list2_m in list2:
    list2_m.insert(2,['Perl','C++'])
print(list2)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-2.webp" alt="insert()で各リスト(List)の指定した位置に要素を追加した結果" width="1000" height="580" class="alignnone size-full wp-image-13296" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-2.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-2-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-2-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-2-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()で3次元リスト(List)の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
そのため、下記のような結果が表示されています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>2次元リスト(List)内にある各1次元リストの2番目に「Java」が追加</li>
<li>3次元リスト(List)内にある各1次元リストの1番目に「Java」が追加</li>
<li>3次元リスト(List)内にある各2次元リストの3番目に「[&#8216;Perl&#8217;,&#8217;C++&#8217;]」が追加</li>
</ol>
</div>
</div>
<h3 id="rtoc-16"  class= "blog-h3head">リスト(List)全体の指定した位置に要素を追加する場合</h3>
<p class="blog-text">
insert()でリスト(List)全体の指定した位置に要素を追加するには多次元リストをフラット化します。
</p>
<p class="blog-text">
フラット化にすることで多次元リストが1次元リストに変換されるため、リスト(List)全体を対象にすることができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">import itertools

print('● 対象の2次元リスト')
list1 = [
    ['JavaScript', 'C#'],['Python', 'Swift'], ['Ruby', 'Kotlin']
    ]
print(list1)

print('● insert()使用後-1')
list1_flat = list(itertools.chain.from_iterable(list1))
list1_flat.insert(1,'Java')
print(list1_flat)

print('● 対象の3次元リスト') 
list2 = [
    [['JavaScript', 'C#'],['Python', 'Swift']],
    [['Ruby', 'Kotlin'],['GO']]
    ]
print(list2)

print('● insert()使用後-2')
list2_flat_m = itertools.chain.from_iterable(list2)
list2_flat = list(itertools.chain.from_iterable(list2_flat_m))
list2_flat.insert(6,'C++')
print(list2_flat)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-3.webp" alt="insert()でリスト(List)全体の指定した位置に要素を追加した結果" width="1000" height="580" class="alignnone size-full wp-image-13295" srcset="https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-3.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-3-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-3-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/04/python-insert-result-3-3-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でリスト(List)全体の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
そのため、下記のような結果が表示されています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>2次元リスト(List)をフラットにした1次元リストの2番目に「Java」が追加</li>
<li>3次元リスト(List)をフラットにした1次元リストの7番目に「C++」が追加</li>
</ol>
</div>
</div>
<h2 id="rtoc-17"  class="hh hh28">insert()を使用した実際のケース</h2>
<p class="blog-h2text">
insert()を使用した実際のケースについてご紹介します。
</p>
<p class="blog-text">
例えば、insert()を使用して入力したユーザーが登録された順番に表示されるようなコードを作成します。
</p>
<p class="blog-text" style = "font-weight: bold;">● index.htmlとindex2.html</p>
<pre class="urvanov-syntax-highlighter-plain-tag">&lt;!DOCTYPE html&gt; 
&lt;html lang=&quot;ja&quot;&gt; 
    &lt;head&gt; 
        &lt;title&gt;insert()でリストの指定した位置に要素を追加&lt;/title&gt; 
        &lt;meta charset=&quot;utf-8&quot;/&gt; 
    &lt;/head&gt; 
    &lt;body&gt; 
        &lt;h1&gt;ユーザー一覧&lt;/h1&gt;
        &lt;h2&gt;ユーザーを入力&lt;/h2&gt; 
        &lt;form action=&quot;/&quot; method=&quot;POST&quot;&gt;
            &lt;div&gt;
                &lt;input type=&quot;text&quot; name=&quot;item1&quot;&gt;
            &lt;/div&gt;
            &lt;button type=&quot;submit&quot;&gt;登録&lt;/button&gt; 
        &lt;/form&gt;
        &lt;h2&gt;登録されたユーザー&lt;/h2&gt;
        &lt;ul&gt;
        {% for item in item_list: %} 
        &lt;li&gt;{{ item }}&lt;/li&gt;
        {% endfor %}
        &lt;/ul&gt;
    &lt;/body&gt; 
&lt;/html&gt;</pre>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">from flask import Flask, render_template, request
import time

app = Flask(__name__)

item_list = ['tanaka1234', 'suzuki5678', 'sato1919']
timestamp_list = [2302677700.8515599, 1532677700.385349, 932677700.1349]

@app.route('/') 
def index():
    
    return render_template('index.html', item_list = item_list) 

@app.route('/', methods=['POST']) 
def index2(): 

    item_val = request.form.get('item1')
    in_timestamp = time.time()

    cnt = 0
    for timestamp in timestamp_list:
        if(timestamp &lt; in_timestamp):
            break
        else:
            cnt = cnt + 1
    
    timestamp_list.insert(cnt, timestamp)
    item_list.insert(cnt, item_val)

    return render_template('index2.html', item_list = item_list) 

if __name__ == '__main__': 
    app.run()</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-1</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-4-1-min.gif" alt="insert()を使用して登録順に入力したユーザーを表示した結果(その1)" width="1000" height="590" class="alignnone size-full wp-image-13160" />
</div>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果-2</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-result-4-2-min.gif" alt="insert()を使用して登録順に入力したユーザーを表示した結果(その2)" width="1000" height="590" class="alignnone size-full wp-image-13161" />
</div>
<p class="blog-text">
insert()で登録順に入力したユーザーを表示しています。
</p>
<p class="blog-text">
今回は下記のような処理を行っています。
</p>
  <div class="sng-box box1">
<div class="ol-circle li-mainbdr main-bc-before">
<ol>
<li>入力した値を受け取り、そのタイミングでタイムスタンプを取得。</li>
<li>リストに格納されているタイムスタンプと比較するため、繰り返し処理を行う。<br />
(条件はリストのタイムスタンプよりも大きいかどうか)</li>
<li>条件を満たした場合に繰り返し処理を終了し、insert()でその位置に要素として格納する。</li>
<li>格納したリストの要素を画面に表示する。</li>
</ol>
</div>
</div>
<p class="blog-text">
そのため、結果1の場合は「yamada5789」が2番目に表示されています。
</p>
<p class="blog-text">
また、結果2の場合は他のユーザー名の登録時間が「yamada5789」の登録時間よりも最新であることから、4番目に表示されています。
</p>
<h2 id="rtoc-18"  class="hh hh28">insert()でリスト(List)以外の指定した位置に要素を追加する場合</h2>
<p class="blog-h2text">
ここでは、insert()でリスト(List)以外の指定した位置に要素を追加します。
</p>
<h3 id="rtoc-19"  class= "blog-h3head">タプル型の場合</h3>
<p class="blog-text">
タプル型にinsert()を使用することはできません。
</p>
<p class="blog-text">
そのため、list()で一度変換したリストに対して使用する必要があります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
tuple1 =('JavaScript', 'PHP', 'Python', 'C#', 'Java')
print(tuple1) 

print(&quot;● insert()使用後-1&quot;)
tuple1_list = list(tuple1)
tuple1_list.insert(3, 'Swift') 
print(tuple(tuple1_list))

print(&quot;● insert()使用後-2&quot;)
tuple1_list = list(tuple1_list)
tuple1_list.insert(-1, 'Kotlin') 
print(tuple(tuple1_list))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-tuple-result.webp" alt="タプルに対してinsert()を使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13162" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-tuple-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-tuple-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-tuple-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-tuple-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()でタプル型の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
今回は「0」と「2」と「4」を格納したリストに対して使用したため、1番目と3番目と5番目に「Java」が追加されています。
</p>
<h3 id="rtoc-20"  class= "blog-h3head">集合(set)型の場合</h3>
<p class="blog-text">
集合(set)型の場合もlist()で一度リストに変換する必要があります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の集合型') 
set1 = set(['JavaScript', 'PHP', 'Python', 'C#', 'Java'])
print(set1)

set_list1 = list(set1)
print(&quot;● insert()使用後-1&quot;)
set_list1.insert(2, 'Swift')
print(set(set_list1))

print(&quot;● insert()使用後-2&quot;) 
set_list1.insert(-2, 'Kotlin')
print(set(set_list1))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-set-result.webp" alt="集合(set)型に対してinsert()を使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13163" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-set-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-set-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-set-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-set-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()で集合(Set)型の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
集合(Set)型は順番が決まっていないため、追加はされていますが、ランダムで格納されています。
</p>
<h3 id="rtoc-21"  class= "blog-h3head">不変な集合(frozenset)型の場合</h3>
<p class="blog-text">
不変な集合(frozenset)型に対してもinsert()を使用することはできません。
</p>
<p class="blog-text">
そのため、こちらもlist()で一度リストに変換する必要があります。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象の不変な集合型') 
fset1 = frozenset(['JavaScript', 'PHP', 'Python', 'C#', 'Java'])
print(fset1) 

fset_list1 = list(fset1)
print(&quot;● insert()使用後-1&quot;) 
fset_list1.insert(2, 'Swift')
print(frozenset(fset_list1)) 

print(&quot;● insert()使用後-2&quot;) 
fset_list1.insert(-2, 'Kotlin')
print(frozenset(fset_list1))</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-frozenset-result.webp" alt="不変な集合(frozenset)型に対してinsert()を使用した結果" width="1000" height="580" class="alignnone size-full wp-image-13164" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-frozenset-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-frozenset-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-frozenset-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-frozenset-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
insert()で不変な集合(frozenset)型の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
不変な集合(frozenset)型もSet型同様に順番が決まっていないため、こちらもランダムで格納されています。
</p>
<h2 id="rtoc-22"  class="hh hh28">リスト(List)の指定した位置に要素を追加する他の方法</h2>
<p class="blog-h2text">
リスト(List)の指定した位置に要素を追加する他の方法としてスライスがあります。
</p>
<p class="blog-text">
スライスとは、オブジェクトの一部を切り取る機能になります。
</p>
<p class="blog-text">
そのため、切り取り開始位置と終了位置を同じインデックスで指定し、別のリストを指定することでリスト(List)の指定した位置に要素を追加することができます。
</p>
<p class="blog-text" style = "font-weight: bold;">● main.py</p>
<pre class="urvanov-syntax-highlighter-plain-tag">print('● 対象のリスト') 
list1 = ['JavaScript', 'PHP', 'Python', 'C#', 'Java'] 
print(list1) 

print(&quot;● スライス使用後&quot;) 
list1[2:2] = ['Swift', 'VBA', 'C++']
print(list1)</pre>
<p class="blog-text" style= "font-weight:bold;"><span class="bold-border">実行結果</span></p>
<div class= "resultimg">
<div class= 'mark'>
<div class= 'bg-red circle'></div>
<div class= 'bg-yellow circle'></div>
<div class= 'bg-green circle'></div>
</div>
<p><img decoding="async" src="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-slice-result.webp" alt="スライスでリスト(List)の指定した位置に要素を追加した結果" width="1000" height="580" class="alignnone size-full wp-image-13165" srcset="https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-slice-result.webp 1000w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-slice-result-300x174.webp 300w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-slice-result-768x445.webp 768w, https://sossy-blog.com/wp-content/uploads/2024/01/python-insert-slice-result-940x545.webp 940w" sizes="(max-width: 1000px) 100vw, 1000px" />
</div>
<p class="blog-text">
スライスでリスト(List)の指定した位置に要素を追加しています。
</p>
<p class="blog-text">
そのため「Swift」、「VBA」、「C++」の要素が3番目から追加されています。
</p>
<h2 id="rtoc-23"  class="hh hh28">まとめ</h2>
<div class="summary">
<p class="blog-h2text">
● insert()とは、リスト(List)の指定した位置に要素を追加する関数である。
</p>
<p class="blog-text">
● insert()は、下記のパラメータを指定して使用する。<br />
・追加する位置(必須)<br />
・追加する要素(必須)
</p>
<p class="blog-text">
● 追加する要素がリテラルである場合にinsert()を使用すると、一つの要素としてリストの指定した位置に追加する。
</p>
<p class="blog-text">
● 追加する要素がイテレータである場合にinsert()を使用すると、一つのイテレータ要素としてリストの指定した位置に追加する。
</p>
<p class="blog-text">
● 追加する位置に要素数未満のインデックスを指定すると、リストの指定した位置に要素を追加する。
</p>
<p class="blog-text">
● 追加する位置に要素以上のインデックスを指定すると、リストの末尾に要素を追加する。
</p>
<p class="blog-text">
● 追加する位置に負の整数を指定すると、リストの末尾から数えた位置に要素を追加する。
</p>
<p class="blog-text">
● insert()は1次元リスト(List)だけでなく、多次元リストにも使用できる。<br />
(アクセスする場所によって対象のList(リスト)が異なるため注意。)
</p>
<p class="blog-text">
● insert()でリスト(List)の指定した複数の位置に要素を追加するには繰り返し処理を使用する。
</p>
<p class="blog-text">
● 直接使用できないが、insert()はリスト(List)以外の下記のイテレータにも使用することができる。<br />
・タプル(tuple)型<br />
・集合(set)型<br />
・不変な集合(frozenset)型
</p>
<p class="blog-text">
● リスト(List)の指定した位置に要素を追加する他の方法としてスライスがある。
</p>
</div>
]]></content:encoded>
					
					<wfw:commentRss>https://sossy-blog.com/useful/12403/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
