HOME技術WordPressでAttempt to read property “ID”エラーが表示される

WordPressでAttempt to read property “ID”エラーが表示される

WordPressを利用していて、PHPのバージョンを8にあげた後、ウェブサイト上で「Attempt to read property “ID”~」と表示されてしまうようになりました。

PHPの警告メッセージ

Attempt to read property “ID”エラーは、PHP8がPHP7と仕様が若干異なるために発生するエラーです。
放っておいても動作しますが、エラーメッセージがウェブ上に表示されてしまうため、エラーを解消する方法を調べました。

$post->ID;

このエラーは、上記の一文を入れている場合に発生します。
$postは、WordPressのグローバル変数です。
$postが投稿ページもしくは固定ページ以外から呼び出された際には、NULLが設定されることになっており、それが原因でエラーメッセージが表示されます。
エラーメッセージを非表示にするためには、以下のように修正します。

global $post;
if( is_null( $post)){ return; }

関連記事

WordPressをローカル環境にインストールする

「外部に公開するつもりはないけれど、WordPressで自分用にコンピュータ内にブログをつくりたい」「WordPressで外部に公開する前にローカルで試したい」というような欲求のために、WordPre…続きを読む

WordPressを更新する

WordPressのダッシュボード画面で、WordPressの更新通知が表示されることがあります。今回はWordPressの更新方法の紹介です。 1.更新前にバックアップをとる WordPressを更…続きを読む

WordPressをプラグインを使わずバックアップする

WordPressの投稿した記事やアップロードしたファイル、テーマファイルなどをバックアップする方法です。今回はバックアップ用のプラグインを使わず手動で行います。 バックアップする 記事のバックアップ…続きを読む

WordPressのスラッグとは

WordPressにおけるスラッグとは、カテゴリや投稿記事に数字ではなく、指定した文字列を使うことができるようにするものです。 スラッグには全角を使うこともできますが、全角にした場合には、実際のURL…続きを読む

WordPressのタクソノミーとは

WordPressにおけるタクソノミーとは、分類のことです。標準で用意されているタクソノミーには「カテゴリ」「タグ」があります。 カテゴリとタグ カテゴリとは、投稿記事が属するテーマを設定するもので、…続きを読む

WordPressのTinyMCEを利用している際にstyleタグなどが消されてしまう

WordPressでより便利に記事を書くためのエディタとして、TinyMCEプラグインがあります。このプラグインは、ビジュアルとテキストで表示を入れ替えて確認したり、コードを直接書き込んだりすることが…続きを読む

WordPressでページがあるのにエラー表示される

WordPressでページが存在しているにもかかわらず、そのページへのリンクをクリックすると、「存在しない」と言われてしまう場合には、「設定」→「パーマリンク設定」より「基本」を選んで「変更を保存」を…続きを読む

WordPressで画像をアップロードできなくなった場合の対処法

WordPressを使っていて、記事に画像を配置したい場合には、記事投稿画面で画像をドラッグ&ドロップすると、アップロードできます。 しかし、たまに「アップロード中にエラーが発生しました。後ほど再度お…続きを読む

WordPressでウィジェットを自作のテーマで表示する

WordPressで自作のテーマを作った場合、外部のウィジェットを反映させることができなくなります。外部のウィジェットを反映させることができるようにするには、functions.phpに以下の一文を追…続きを読む

WordPressで記事が属するカテゴリをすべて表示する

アーカイブページなどで、記事一覧を表示している時に、その記事が属するカテゴリをすべて表示する方法です。 コード <ul> <?php while (have_posts()) : t…続きを読む