ルクセリタスには簡単にサイトマップ(記事一覧)を作成できる機能があります。
ただ、サイトマップには載せたくないページなどがある場合、それを除外する機能がありません。たとえば「404 Not Found」のページなどは、サイトマップには必要がないので外したいところです。
今回は、サイトマップから個別に記事を除外する方法です。
除外設定の方は、FTPクライアントを使用します。
編集を行うのは1行だけですが、FTPでのダウンロード、アップロードが必要です。
FTP操作がわからない場合は こちら を参考にして下さい。
ルクセリタスでサイトマップを作る方法と、固定ページでの「投稿日・更新日」を削除する方法は以下をご覧ください。
バージョンと初期デザインについて
当サイトで使用中のバージョンは以下です。(記事作成時)
Luxeritas Child Themeバージョン: 3.0.0
Luxeritasバージョン: 3.5.7
ルクセリタスに用意されている「デザイン選択」からのデザイン変更はせずにデフォルトからカスタマイズしています。
サイトマップから個別に記事を除外する
注意点
今回は親テーマにしかないファイルを編集するのですが、直接編集しないようにご注意下さい。親テーマファイルを編集すると、テーマのバージョンアップなどがあった際に上書きされてしまいますし、不具合が出た際、バックアップがなければ復元するのは大変です。
必ず子テーマ内にコピーし、そちらを編集して下さい。
PHPファイルの編集ですが、今回についてはコピーして行う為、バックアップの必要はありません。
万一の場合は、子テーマにコピーしたものを削除するだけで復元できます。
FTPで対象ファイルをダウンロード・アップロード
設定などからは除外することが出来ない為、PHPファイルへの編集で対応します。
今回、編集を行う対象ファイルは親テーマにしかないので、親テーマにあるものを子テーマにもコピーして、そちらを編集します。
親テーマのディレクトリ「luxeritas」内に「pages」というフォルダがあり、その中にサイトマップのPHP(sitemap.php)があります。
子テーマ内へのアップロードが出来たら、あとはワードプレス側で編集します。
テーマファイルの編集
「外観」→「テーマの編集」
右側のテーマファイル一覧の中に、子テーマにアップロードした「sitemap.php」がありますのでそれを選択します。「pages」の中です。
以下のテーマファイルの43行目を編集します。バージョンなどにより行数は違うかもしれません。
wp_list_pages( ‘title_li=’ ); の部分に除外記事の記事IDを「&exclude(除外)」で指定します。
記事のユニークIDは、ワードプレスで自動で振られる番号です。
パーマリンクを編集している場合でも、記事の編集画面でブラウザアドレスに出ている数字の部分です。
元あった行をコメントで潰してコピーして入れました。
/* 404ページ除外 追記 *//*wp_list_pages( ‘title_li=’ );*/wp_list_pages( 'title_li=&exclude=2274,2477' );
複数ページを除外したい場合は、上記のように「,(カンマ)」で区切ると可能です。
以上で完了です。
まとめと感想
簡単に作れて、これがあればプラグインも不要なのが魅力ですが、以下の点でこれまでは利用していませんでした。
- 個別の記事指定でサイトマップから除外できない
- 並び替えが出来ない
- デザインがちょっと好みではない
今回、記事の除外とデザインをちょっとだけですが編集した事で、これを使うことにしました☆
サイトマップデザインのカスタマイズは以下をご覧ください。
その他のルクセリタスに関するカスタマイズは以下をご覧ください。