サイト管理人Blog

cloudfreeで「さぁ始めましょう♪」

カスタムテンプレートひとつのみ作成でとりあえず対応

2023-11-12 記載
概要 : WordPressのテンプレートを編集する(twentytwentyfour)
Keyword : WordPress, twentytwentyfour,

子テーマのtemplateにindex.htmlだけを置いても、親テーマのtemplateが優先順位に従って用いられるので、必要最小限のtemplateだけを作成する方針だと親テーマのtemplateが邪魔です。
消してもテーマを更新したら再配置されるだろうし、テーマ更新のたびに削除するのもスマートとはいえません。

ということでカスタムtemplateをひとつ作って、すべての投稿・固定ページでそれを使うことにしました。他にスマートな方法がありそうな気がしますが、それに気づくまでは。

x24-index.html
をtemplateで新規作成。x24はtwentytwentyfourから。

フロントページで、homeとblogを、テンプレート:x24-indexで作成。
homeのコンテンツは「最新の投稿」で3並びのアイキャッチ付き。
[設定]の[表示設定]で、[固定ページ (以下で選択)]に切り替えて、homeをホームページ、blogを投稿ページに設定しました。

これまでに作成した投稿はすべてテンプレートがデフォルトだったので、切り替えます。SQLで一括を図ります。
※ほかにページを作っているかたはWHEREをもっと絞る必要があります

UPDATE wp_postmeta 
SET meta_value='wp-custom-template-x24-index' 
WHERE meta_key='_wp_page_template';

タイトルをコンテンツ内の先頭に埋め込むのもwp_postsへの一括更新SQLを発行。

UPDATE wp_posts 
SET post_content=concat('<!-- wp:post-title {"level":3,"style":{"spacing":{"padding":{"top":"var:preset|spacing|20","bottom":"var:preset|spacing|20"}}}} /-->
', post_content) 
WHERE post_status='publish' and post_type='post';

かなり強引(?)に形にしましたが、あとからどんなしっぺ返しがあるか、ですね。
パディング、マージンの設定はあとまわしです。
アーカイブから開くページが親templateを使っているのでそこも対応が必要です。
WordPressのデザインはこだわるつもりなくオーソドックスなレアイウトでいいわ,と思っているのですが、そのオーソドックスなスタイルにまとめるだけで、いろいろと苦労します。ブロック配置によるノーコード制作は、はたして本当にコトを簡単にしているのでしょうか。

とりあえず一段落。
家を新築しても、外回りは自分たちの手であとからぼちぼちと造ります、と言って、ずっとほったらかしの家をときどき見ますが、あぁなりそうな気もします。

投稿へのコメントは コチラ(掲示板) へお願いします。

サイト管理人Blog