「もっと高いレベルの権限が必要です。」が出て、カスタマイズ出来ない問題のメモ

 このブログはWordPressを使っています。少し重い感じはあるのですが、面倒がなくてい感じです。あるとき、テーマのカスタマイズをやろうと思ったら、「もっと高いレベルの権限が必要です。」が出るようになってました。サイト自体は、正常に表示されているように見えるので、放置しておいたのですが、ちょっと気持ち悪いし、不便なので、直らないかなとイジリ始めました。
 少し検索して調べてみたところ、他のブログからデータをインポートすると、データベースで競合が起こって、この表示が出るようなことが出てました。権限が必要なエラーではないのですが、表示するエラーがない場合に、この表示が出ているのではないかというようなことも書かれていたので、本来の意味でのエラー表示でない可能性もあります。過去のブログから、データのインポートはやっていたので、いろいろいじってみたのですが、全く直る気配がありません。そもそも、カスタマイズ表示のとき、本文が表示されるタイミングでエラーが出ます。他ブログのデータが参照されているとは思えないので、別の方向から探ってみることにしました。
 そもそも、いつから、このエラーが出るようになったのだろうと思い、ふとテーマの画面を見ていたら、子テーマを作ったことを思い出しました。もしかして、親に戻せばエラーが出ないのかと思って、戻してみたら、見事にエラーが発生しないではないですか。これで、エラーの出ない条件はわかったので、ここから組直していけば、原因がわかるかもと思ったのですが・・・。そもそも、何で、子テーマを作ったのかを、完全に忘れてしまってます。別に、デフォルトでも良いのではと思って、トップページを見たら、記事の一覧表示が全文表示になってました。あれ?概略表示にしていたよな?設定するところは何処だっけと、カスタマイズ画面を探してみてもありません。で、検索して調べて見ると、思った以上に面倒な感じだとわかりました。
 こういうのは、メモに残しておかないとすぐ忘れてしまいますね。そう言えば、ソースをいじったような。子テーマを作ることのメリットは、親のコードを利用しているので、変更に必要なところだけを子に持たせておくと、親が更新されても、変更箇所が更新されることがないので、マージの作業が必要ないということです。でも、ぼくの場合、カスタム加減がたいしたことないので、更新の都度、マージしてもたいした作業ではないし、子を使ってエラーが出ないようするより、親をそのままいじってしまっても良いのではと言うことで、親をそのままいじることにしました(単に、面倒だっただけですけど)。そのかわり、ここに、変更箇所をメモしておくことにします。
 記事の概略を表示するのは、抜粋表示というらしいです。この抜粋をするためには、記事本体に、仕切り用のタグを入れれば、仕切りより上が抜粋として表示されるようになるらしいのですが、全部の記事に仕切りをいれるのは、面倒でやる気にならないし、本文表示時、「続きは」が出ると、かったるいので、設定で出来ないかと思ったわけです(だんだん思い出してきました)。それで、WordPressでは、the_excerpt()という関数が用意されていて、抜粋表示させたい箇所でこれを呼べば抜粋表示になるということで、ソースを変更したのだと思います。
 ぼくが使っているのは、twentynineteenというテーマなのですが、こいつの場合、テーマフォルダーのindex.php(トップページだと思われる)で、get_template_part( ‘template-parts/post/content’, get_post_format() );が繰り返し呼び出されていて、これで、各記事の全文が表示されているみたいです。get_template_partは、テンプレートパーツを呼び出す関数で、この場合、template-parts/post/下のテンプレートを呼び出しています。template-parts/post/を見てみると、いろいろなタイプのテンプレートがあって、excerptもあるようです。ここで、引数get_post_format()を’excerpt’に変更すれば、抜粋用テンプレートが呼び出されるというわけです。抜粋用テンプレートはtemplate-parts/post/下にある、content-excerpt.phpで、中を見ると、the_excerpt()が呼ばれてます。ちょっと前までは、アイキャッチを使ってなかったのですが、最近は、なるべく入れるようにしているので、content-excerpt.phpも少しいじって、アイキャッチ画像が表示されるように付け足しもしました。これで、トップページがアイキャッチ付き、抜粋記事リストになりました。index.phpと同様にarchive.phpも変更すれば、カテゴリー表示一覧も抜粋記事一覧になります。
 ということで、自分用のメモですが、何かの役にたつかもしれないので、公開します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です