同様のコンテンツを表示したい数百のURLのデータベースがあります。しかし、WordPressで何百ページも作成したくありません。
このデータベースのすべてのURLのページ(作成済み)のコンテンツを表示するために、wordpress404ページをオーバーライド/抑制できる方法はありますか?
必要なのは1つのURLに対してこれを行うためのコードだけで、残りは実行できます。
ありがとう
テーマフォルダ内で使用404.php
このようにして、呼び出されたURLを見つけ、ページを少しカスタマイズすることができます。
これがお役に立てば幸い、ジェイソン
[アップデート]
プラグインが必要な理由がわかりません。404.phpテンプレートには、次のようなものがあります。
<?php
get_header();
//Get called URL
$url = $_SERVER['REQUEST_URI'];
//Some function to check database to see if this URL should exist
if(checkIfPageExists($url)) {
//Page Code Here
} else {
//404 Code Here
}
get_footer();
?>
【アップデート2】
ステータスコードの修正は簡単です。
<?php
//Get called URL
$url = $_SERVER['REQUEST_URI'];
//Some function to check database to see if this URL should exist
if(checkIfPageExists($url)) {
//Set 200 Status
status_header( "200" );
//Get Header
get_header();
//Page Code Here
} else {
//Set 404 Status
status_header( "404" );
//Get Header
get_header();
//404 Code Here
}
get_footer();
?>
htaccessを使用できます。WordPressインストールのhtaccessファイルの先頭に次のように入力します。404page.htmlは、作成したエラーページです。
ErrorDocument 404 /404page.html
お役に立てば幸いです。
htaccessファイルで301リダイレクトを使用できます
RewriteRule ^your-db-url.html /your-redirect-page.html [L,R=301]
また、この形式ですべてのURLを一覧表示し、これをコピーして.htaccessファイルのワードプレスの書き換えルールの上に貼り付けることができるスクリプトを作成できる場合もあります。