記事ページが出ていなかった。

1日に2件以上記事がなくて気付いてなかったのですが、個別の記事ページが出ていませんでした。(すべて日別のアーカイブページになっていた。)

wordpress 5.4.1 からの障害について | WordPress.org 日本語

WordPress 5.4.1 に自動アップグレードが入りましたが、個別記事(single.php)が表示されなく なってしまいました。

原因はまさにこれで、対策はこちら。

パーマリンクの使い方 – サポートフォーラム – WordPress.org 日本語

構造は必ず %post_id% あるいは %postname% で終了し、各パーマリンクが個々の投稿を指すようにしてください (例 /%year%/%monthnum%/%day%/%postname%/ )。

で、これによってすべての記事ページのURLが変わってしまったので、こんなコードでリダイレクト設定を作って、結果を.htaccessに追加しました。

<pre>
<?php
require __DIR__ . '/wp-load.php';
$posts = get_posts('posts_per_page=-1');
foreach ($posts as $post): ?>
Redirect permanent /weblog/<?php echo get_the_date('Y/m/d/His', $post->ID); ?>.html <?php the_permalink($post); ?>

<?php endforeach; ?>
</pre>

結果はこんな感じ。

Redirect permanent /weblog/2023/04/24/042400.html https://saikyoline.jp/weblog/2023/04/24/0424003454.html
Redirect permanent /weblog/2023/04/22/152900.html https://saikyoline.jp/weblog/2023/04/22/1529003447.html
Redirect permanent /weblog/2023/04/05/040500.html https://saikyoline.jp/weblog/2023/04/05/0405003439.html
.
.
.

ひとまず。

タイトルとURLをコピーしました