🦁

【WordPress】カスタム投稿ページのパーマリンク設定(2022年11月28日業務報告)

2022/11/28に公開

サイト作り

下層ページの作成

カスタム投稿ページのパーマリンク設定

プラグイン「Custom Post Type Permalinks」を利用。
ただ、更新が止まっているのかWordPressからの検索には表示されず。
以下のサイトからダウンロードしてインストールした。
https://ja.wordpress.org/plugins/custom-post-type-permalinks/

有効化してパーマリンク設定を開くと、作成済みのカスタム投稿設定ができるようになっています。
プラグインインストール後

表示するパーマリンクを「カテゴリー名/投稿ID」としたくて
/%category%/%post_id%/としたが、カテゴリー名が「uncategorized」となってしまった。(もちろんカテゴリーは指定済み)

冷静に画面の説明を読むと、
使用できるタグは、WordPress の構造タグとタクソノミータグです。
とのことで、利用可能なタクソノミータグも親切に書いてくれていました^^;
利用可能なタクソノミータグ: %works-cat%%works-tag%

ということで設定を
/%works-cat%/%post_id%/に変更して、希望通りのパーマリンクになりました。
 

カスタム投稿一覧のカラムにカスタムタクソノミー(カテゴリー)項目追加

function.phpでカスタムタクソノミーを追加するために記述した内容に以下の一文を追加する。
'show_admin_column' => true

これだけで一覧のカラムに表示されるようになる。
ただし、これだけだと項目でソートができない。
ソート方法については別途調べる。
 

WordPressのメディアにある画像をバックグラウンドの画像として指定する方法

WordPressのメディアにアップロードした画像は以下のようなURLになりますが、これをCSSで背景画像にする場合の記述方法
http://localhost:3001/wp-content/uploads/2022/11/sample.png

【結論】
wp-content/uploads/2022/11/sample.png
だけで表示されました。

<?php echo get_template_directory_uri(); ?><?php echo esc_url( home_url( '/' ) ); ?>をつけて表示させようとアレコレ悩んでたけど、特にタグとかを付ける必要はなかった模様。

ただ、上記は作成中のテーマで扱えるようにしたほうが良いので、メディアではなくテーマフォルダ内に画像を置いてそちらを参照するようにした。
 

メモ

  • PHPで記事一覧などで取得した結果を1ページにすべて表示する設定
    'posts_per_page' => -1,
    -1が全件という意味になるらしい。100件なら'posts_per_page' => 100,でOK。

  • 上記とセットで書くと良い記述
    'no_found_rows' => true,
    全体で何記事あって1画面に何記事ずつ表示するか?という処理を行えるようにするためにあるパラメータのようで、ページングを行う必要がなければ動作させる必要がない=無駄な処理が減らせる。とのこと。
    今回は1ページに全件表示するのでこの処理が不要ということになり、その処理を行わない指定をすることで動きが若干処理が速くなるということかな?
    https://www.terakoya.work/wp_query-no_found_rows/

  • 仕事の優先順位は時間内で最大の成果が得られるものを優先すること!

Discussion