トップページを最新の投稿記事に

投稿日:2017年4月25日

前回、トップページとして表示させていた「投稿ページ」を、固定ページ『ブログ』ページにも表示させるように設定しました。
これにより、今回から挑戦していく、トップページに最新記事を全文表示で一件のみ表示させる、というカスタマイズの下準備が整いました。

 

では早速取り掛かっていきたいのですが…
サッパリわからん!\(^o^)/

とりあえず、現在のトップページの抜粋表示の部分を全文表示に変えられればいいのでは?と思ったので、[AFFINGER4管理]>[抜粋の文字数]から、デフォルトでは100となっている文字数を、てきとうに10000とかにしてみる。

このままではトップページに表示される文字数がとんでもないことになってしまいそうなので、WordPress[設定]>[表示設定]>[1ページに表示する最大投稿数]を1件に設定。

これで上手くいけば非常に楽ちんな話なんですが…
結果は見事に抜粋文が本文全てを表示してくれるようになったのですが、そこには改行・スペース・リンクに文字装飾等など…あらゆるものが取っ払われた唯の文字の羅列になってしまいました…

延々と抜粋文が続いていくトップページ…
「全文表示」ってこういうことじゃないですよね?

ちなみに、[抜粋の文字数]は -1 と入力しても本文全てが抜粋文として表示されるようになるそうです。(結果は上記のと同じですが)

 
こりゃー根本的にやり方が違うなと悟った私は、ネットで情報収集してみることに。

そして、AFFINGER4のカスタマイズ記事を書かれているサイトに、今の私と同じくトップを全文表示させたいという方の質問に対する回答の記事が上がっていました!

…が、その内容は「全文表示とかダセェからやめときな!(超意訳)」といったものでした。

なんでしょうね、この「猫の飼い方」でアドバイスを求めたら「犬の方がいいよ(^^)」と返されたような気分は。

でも、役に立つ情報もありました。
それは「AFFINGER4には記事を全文表示させる機能は備わっていない」と言い切っておられた点。

私の中ではまだ「自分が気付いてないだけで、AFFINGERのデフォ機能でどうにかできるのでは?」という疑問が残っていたので、これで吹っ切れましたね。自分の力でどうにかするしかない。

 
こっからはもうひたすらにネットサーフィンでさぁ。
できれば簡単にプラグインとかペッと入れてパッと完成~ みたいにいきたかったんですが、どうもそうにはいかなさげ。

いちおう、「記事を複製できるプラグイン」というのはあるようです。
最新記事をトップに載せたいというのであれば、書き上げた記事をコピーして、何らかの形でトップページに貼り付ければ、とりあえずの形にはなるんじゃないでしょうか?

ただ、新しく記事を書き上げる度にコピー→ペーストを手作業でやり続けなければいけないですね、きっと…

解決策の候補の一つとしてはそれもまぁアリかなとは思います。
でもこれは「最悪」、他に手が無いという場合ですかね。

 
それ以外の手で解決法を探してみたんですが、どうやら「php」なるものに手を加えねばならないご様子。

私は「HTML」とか「CSS」といったものはサイトを作るにあたり聞いた事ぐらいはあったのですが、「php」…? 知らない子ですね(´゚д゚`)

おそらくコードを自分で書いていく事になるのでしょうが、私には書き方どころか読み方も分からない。まぁphpとか初めて聞いたようなレヴェルですから…

それにコードってちょっとミスったらサイトが真っ白になったーとかそういうヤツでしょ?
できれば勘弁願いたいところなんですが、色々と全文表示のやり方を解説しているサイトを見ていくなかで、内部のphpをいじるのではなく、新規にphpを作成してそこに書き加える、というやり方が目に留まりました。

「改変」ではなく「追加」なら、もしなにかあってもその追加した部分だけを消去すればすぐに元に戻せるのでは…?
と思ったので、このやり方で進めてみることに。

調べていくと、このphpファイルというものは、編集する際には、親テーマからコピーしてきたものを子テーマに置く事で安全にテーマに手を加えられるという仕様らしい。(たぶん)

ただしこのphpファイルそのもののコピーや作成には、「FTP」というので作業しなければならないようだ。
FTPには過去一度だけ、サーバーにサイトをアップする際にエラーで出て、その修正作業のために触れた事がある程度。
しかもその時はネット上に同じ症状のエラー(確かロリポップを使用時に起きる共通のものだった気がする)の情報がすぐに出てきたので、その通りにやっただけ。

正直、難易度が高い。(私には)
でもカスタマイズを続けていくならいつかは手を出さんといけない事だと思うので、おっかなびっくりいじってみる。

 

基本的にはネットに書かれている事を鵜呑みにして、何が書いてあるのか意味もよく分からないままただその通りに作業を進めていく。

まずはFTPから「single.php」をコピーする。

場所は親テーマの中のはずなので、展開可能なフォルダを全部開けていったら、「wp-content」>「themes」内に「affinger4」と「affinger4-child」を発見。

ありがたいことに、FTPには「コピーする」というメニューが常設されていて、この辺の作業は見たまんまやっていくことができた。

そしてコピーした「single.php」を子テーマに複製し、「page-xxx.php」にリネーム。
xxxの部分はこれから作成する固定ページのスラッグにしておくようだ。
どうも「page」というのは固定ページ用のphpらしい。(たぶん)

これでFTP上の作業は終わり。思ったよりはるかに簡単だった。
FTPに編集されるための機能が備わっていてくれたおかげだ。
内部コードとかってパソコンのCドライブみたく専門の知識がある人(プログラマーとか)しかいじっちゃいけないものなのかと思ってたけど、違うのかな…?

 
ここからはWordPress上での作業。
既に私は二ヶ月近くも触れてるはずだが、これから手を出すのは[テーマの編集]という未知の領域。まさかここに足を踏み入れる日がこようとは…(^^;

ネットに書かれている通りに先程作った「xxx」のスラッグを持つ固定ページを作成。
[テーマの編集]より、そこに同じくネットに書いてあるコードをそのままコピペしてみる。どうやらこれで完成のようだ。

 
なんだかよく分からないままとりあえず表示の確認をしてみると、画面は真っ白。やっちまったなあ!!

幸いな事に、真っ白になったのは設定しておいた固定ページ、私が「フロントページ」として名付けたその1ページのみで、他のページには影響は出ていなかった。

コードが読めないので、何が間違っているのか皆目見当が付かない。
コピペした場所が違うのか、コードに何か足りないのか、AFFINGERというテーマだとやり方が違うのか、FTP上での作業から間違っていたのか、そもそも参考にしたサイトの情報が正確だったのかすら…

 
ここからはひたすら手探りでコードをいじっていく。
…といっても私には書き足す、という事はできないので、ひたすらコピーとペーストを繰り返していく。

もともとあったsingle.phpのコードだけの場合や、追加したネット上のコードだけでの表示、single.phpには「個別投稿」と書いてあったので、似たような「個別投稿ページ」と書かれた「page.php」のコードを持ってきてみたり…

いろいろやっていたら、ちょっと気になることが…
コードって貼り付ける位置によって結果が変わる…?

私は最初、single.phpの下に追加のコードを貼ったんですが、ちょっと試しに追加コードの下にsingle.phpのコードが来るようにしたら…

できました!!

トップページに最新の記事の本文が表示されています!!

あとはこの固定ページをWordPress設定から「フロントページ」として設定。完成!?

 
あとは細かい点をチェックしていきます。

まずはコードの中に表示確認用と思われる余計な文があったっぽいのでそれを削除。

そしてこの新トップページと、ブログの一覧が載った投稿ページより、最新の投稿記事の個別ページを見比べてみる。

すると本来固定ページには無いはずの、カテゴリー前の記事へのリンクもちゃんと備わっているではないか!

…が、しかし、ひとつだけ足りない物が…
コメント欄が無い。

 
トップページが本文表示になった以上、おそらくこのタイプのサイトに訪れた人は、トップの最新記事だけ読んでサッサと帰ってしまう事になると思う。
私としては、正直に言えばこれでもいいと思っている。

私にはあまり「自分のサイトを多くの人に見てもらいたい」だとか「人気ブロガーになりたい」という欲、というと言葉悪いですかね、向上心とでも言いますかね、といったものは持ち合わせておりません。そりゃまったくのゼロ、とまでは言いませんが…。
かといって誰にも見られていない、という状況ではさすがにモチベーションが続きそうにない。

なので見ている人がいる、というのが何より実感できるのはやっぱりコメントだと思うのですよ。これを閉じてるサイトも少なからずあるようですが…

これは私にとっては由々しき事態。これではとても成功とは呼べない。
でもこれはいい機会なのかもしれない。

私はAFFINGER4のデフォルトのコメント欄が気に入っていなかった。
というか、デフォルトのデザインはことごとく気に入っていない。
最低でも、コメント欄は折り畳みタイプのやつが良い。

コメントって書き込むのも書き込まれている他の人のコメントを見るのでさえ、よほどそのサイトに入れ込んでいないと行われない行為だと私は思う。(まぁ私は古い人間なのでズレてるのかもしれませんが(^^;)

なので、多くの人にとって興味が無いであろうコメント欄は、普段はオフ(折り畳まれて)、興味がある人はそれを展開する、という作りが良い。

現状、それを実現する為に具体的にどうすればいいのかもまるで分かりませんが、今後の課題ということで。

 
ちょっと話が逸れちゃったな。(-∀-`;)
コメント欄が無くなっているというのが問題点の1つ。
問題点はもう1つありまして…

それはトップページウィジェットが使えない、という点。
正確には、「トップページ」に関連する機能全てが使えなくなってしまいました。

今回の本文表示のやり方は、固定ページの中身を個別投稿と同じ表示形式にし、それをフロントページとして設定するというもの。

私がイメージしていたのは、従来通り「トップページ」というものがあって、その中に最新投稿記事本文が一件だけ表示されてる、という感じだったのですが、どうやら今回のやり方ではこのトップページそのものが「個別投稿」にまんま置き換わってしまい、「トップページ」という場所がなくなってしまったようです。おそらく。

試しにトップページ用ウィジェットを設置してみても、変化は無し。
さらに試しに投稿記事用ウィジェットを設置したところ、無事(?)反映されましたとさ。
今のフロントページはトップページではなく、投稿記事となってますね、間違いなく。

 
このままAFFINGER4の豊富なトップページ関連の機能が使えないのは今後困る事になりそうなので、どうにか今の本文表示のままトップページを戻せないかと、[AFFINGER4管理]内[トップページに固定記事を挿入]から、今回用意した固定ページを挿入するという形をとってみたりもしたんですが、結果は何も表示されず…

 

課題が残る結果となったとはいえ、今までと比べ、かなり密度の濃いカスタマイズが出来たと思っております。ぜったい上手くいかないだろうと思ってましたので( ´△`;)

ネットを見た限り、カスタマイズ法は他にも存在する様なので、手探り状態ですが、なんとか他の方法も試してみようと考えています。

-ウェブサイト作成

Copyright© ガンプラ気分 , 2020 All Rights Reserved.