カスタム投稿のプレビューが404で表示されない時の対処方法

2018年10月19日 2018年10月19日 Wordpressカスタマイズ /

公開済みのカスタム投稿記事をプレビューをすると、「ページが見つかりませんでした」「NOT FOUND」など404エラーでプレビューが表示されない現象。
その原因は、投稿フォーマットにあるかもしれません。

カスタム投稿記事のプレビューが404で表示されない原因と、正常にプレビュー出来るようにする方法を解説します。

プレビューURLを確認

「ページが見つかりませんでした」となったプレビューのURLを確認してみましょう。

http://example.com/custom/post-1234/?preview_id=99&preview_nonce=62e6b4e4a8&post_format=standard&_thumbnail_id=99

URLの中に&post_format=standardというパラメータは含まれてますか?
これは「投稿フォーマット」のパラメータで、カスタム投稿ではプレビューが表示できない場合があります。

&post_format=standardの部分を削除し、プレビュー画面を更新してみてください。
プレビューが正しく表示されたら「投稿フォーマット」が原因で確定です。

 

投稿フォーマットとは、記事の特性を区別するための機能です。

WordPressで投稿フォーマット機能を使えるようにするには、function.phpにadd_theme_support関数を追記します。

投稿フォーマットを有効にすると、投稿画面に「フォーマット」項目が追加されるようになります。

Wordpressの投稿フォーマット

投稿画面の投稿フォーマット設定エリア

他にも「画像」や「リンク」「動画」など色々あります。

関数リファレンス/add theme support

function.phpを修正する

投稿フォーマットを使ってない場合、機能そのものを無効してしまえば解決します。

function.phpに記述されているカスタム投稿関数を修正します。
'supports'の配列にpost-formatsが含まれていると思います。
post-formatsを削除すれば、カスタム投稿で「投稿フォーマット」が無効になります。

関数リファレンス/register post type

絶滅しそうなウナギブロガー絶滅しそうなウナギブロガー

カスタム投稿で投稿フォーマットを有効にするとプレビューが見れないなんて、なんか腑に落ちないよ~

とりあえず、これを追記すれば直るかも

投稿フォーマットを使いたい場合は、function.phpに次のコードを追記します。
プレビューURLから投稿フォーマットのパラメータを削除する「おまじない」です。

こちらのサイトを参考にさせていただきました。
https://www.webantena.net/wordpress/preview-post-link-remove-post-format/

ゴリさんゴリさん

とりあえず、この“おまじない”をコピペしときゃOKやで

コメント

お気軽にコメントをどうぞ。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

ウェルスナビで損失?