LION MEDIA のカスタム投稿タイプ向けカスタマイズ

LION MEDIA のカスタム投稿タイプ向けカスタマイズ

2017年10月にリリースされたWordPress無料テーマ・テンプレート『LION MEDIA』(by FIT)のカスタム投稿向けカスタマイズです。
http://lionmedia.fit-jp.com

テーマ自体は非常に好きですし、デフォルトで欲しい機能は大半が揃っているので、ほとんどカスタマイズする箇所もないのですが、カスタム投稿に関しては、やはり自前で工夫しないといけないので、いくつか紹介しておきます。(カスタム投稿に関しては、どのテーマ・テンプレートでも自己カスタマイズ必須ですが)

カスタム投稿タイプで、single-○○.phpなど独自のテンプレート・ファイルを挿入する場合、管理画面の『テーマ >自動アップデート機能』を行うと、独自ファイルも削除されてしまいます。テーマをアップデートする時は、必ずFTPを使って、手動でアップデートして下さい。

カスタム投稿タイプでもSEO対策ができるようにする

LION MEDIA、LION BLOGとも、各投稿記事でSEO対策ができるカスタムフィールド機能が備わっているのですが、カスタム投稿タイプにも適用するには、オリジナルのfunctions.phpに追記する必要があります。(チャイルドテーマのfunctions.php に追記や移動してもエラーになります)

たとえば、カスタム投稿タイプのスラッグが list と word の場合 『SEO専用カスタムフィールド追加』の箇所に、必要な分だけ追記します。

※機能を有効にするには、カスタム投稿タイプの設定で「カスタムフィールド:True」にするのを忘れないこと

この機能は、短文投稿で、NoIndex を設定する場合に便利です。Yoastや、All in One SEO のような、SEO対策プラグインもありますが、サイトの質によっては、かえって負荷をかけてしまうので、部分的に利用するのが一番だと思います。

カスタム投稿タイプ SEO対策

ちなみに、チェックをつけると、カスタムフィールドにはこのような値が記入されます。「1」=有効。

カスタム投稿タイプ SEO対策

ヘッダーには、 meta name=”robots” content=”noindex” が自動的に挿入されます。

カスタム投稿タイプ SEO対策

カスタム投稿タイプでも目次の設定ができるようにする

SEO対策ボックスと全く同じ要領です。

オリジナルのfunctions.phpの『目次の表示/非表示、個別選択設定』に追記。

※機能を有効にするには、カスタム投稿タイプの設定で「カスタムフィールド:True」にするのを忘れないこと

カスタム投稿タイプの投稿画面にも、目次設定のボックスが表示されます。

カスタム投稿タイプ SEO対策

outline_none 「1」=非表示 の意味です。

カスタム投稿タイプ SEO対策

ヘッダーのタイトル部にターム名を表示する

デフォルトの状態だと、ヘッダーのタイトル部に、カテゴリー名とタグ名がアイコン付きで綺麗に表示されるのですが、タクソノミー分類を利用しているカスタム投稿タイプの場合、空白になってしまいます。

タイトル部分に、カスタム投稿タイプのラベルとターム名を出力する方法は二通りあります。

1)single-○○.php を作成して、dateList dateList-singleTitle の部分を書き換える

2)single.php で一括指定する

基本のタグ

カスタム投稿のラベル(名前)を取得

カスタム投稿のアーカイブリンクを取得

ターム名を出力する基本のタグ

single-○○.php を作成する方法

カスタム投稿に使う、single-○○.php を作成して、dateList dateList-singleTitle の部分を書き換えます。

タームが複数存在する場合は、 , を使って併記します。

タームが subject の場合。

classの icon-folder がカテゴリーのフォルダアイコン。 icon-tag がタグのアイコンに相当します。

タームが一つだけで、カテゴリーリストの代わりにカスタム投稿タイプのアーカイブを表示したい場合。
カテゴリーリストを表示するタグを抜いて、通常のリンクに置き換えます。(基本的に何を置いてもOK)
タグリストの部分には、タームリストのタグを置きます。

カスタム投稿タームがtopics の場合。

single.php で一括指定する

オリジナルの記述では、echo $cat_name でカテゴリー名を取得し、the_tags(”) でタグ名を取得しています。

カスタム投稿にラベル名やターム名を呼び出す場合は、条件分岐を応用すればOK。

オリジナルの記述

カテゴリー名の代わりに、カスタム投稿のラベルを取得し、アーカイブリンクを自動挿入。

カスタム投稿 movie から ターム subject に属するターム名を取得。

カスタム投稿 news から ターム genre に属するターム名を取得。

それ以外は通常のタグ名を出力する場合。

本文下にタームリストを表示

前述の応用です。
本文の末尾にもタームリストやタグリストを表示したい場合、single.php single-○○.phpの the_content() の続きに、 get_the_term_list を追記します。
li のスタイルは、デフォルトを応用します。そのままだと、フォントが小さすぎて見えないので。
ここでは dateList__item を sub に置き換え、子テーマのstyle.cssに上書きしています。

マージンなどは適当に調整して下さい。

カスタム投稿タイプ タクソノミー

ウィジェットの新着記事にカスタム投稿を含める

ウィジェットを使ってサイドバーやフッターに新着記事を表示する方も多いと思いますが、デフォルトの状態では、カスタム投稿タイプは含まれません。

通常の投稿と併せて、カスタム投稿タイプも表示したい場合は、functions.phpに次のように追記します。

movie と news を追加する場合。

トップページから特定のタームに属する記事を除外する

カスタム投稿タイプの中には、特定のタームに属する記事をトップページから除外したい場合もあると思います。(短文のジャンク記事など)

子テーマのfunctions.php に追記。

タクソノミー『news』の junk に属する記事と、 『diary』の tweet に属する記事を除外する場合。
一つだけ除外する場合は、array () で括った部分をまるごと削除して下さい。
また、is_home の部分に、is_category などを追記すると、カテゴリーページからも除外することができます。

トップページから特定のタームに属する記事を除外する

RSSから特定のタームに属する記事を除外する場合も、同じような要領で。

投稿のウィジェットを並び替える

記事下シェアボタンや広告の位置など、並び順を変更したい場合は、該当の部分をまるっと入れ替えればOK。

たとえば、記事下ウィジェットに『お知らせ』のインフォメーションを出していて、シェアボタンより上に表示したい場合、該当部の並びを入れ替えれば、表示順も同じように入れ替わります。私も一部で入れ替えていますが、特に問題ありません。

アーカイブにターム名を表示(トップページ、カテゴリーなど)

カスタム投稿にタクソノミーを設定している場合、デフォルトのままだと、ターム名は表示されません。

loop.php の dateList__item icon-tag でタグ名を出力している続きに、echo get_the_term_list を記入して、カスタム投稿にはターム名が表示されるようにします。

カスタム投稿のスラッグが movie と news 、出力したいタームの種類が subject と genre の場合。
該当しない場合は、the_tags で 通常タグが表示されます。
他にもっとスマートなやり方があると思いますが、これが一番分かりやすいので。

ターム名 Lion Media

アーカイブのカテゴリー部分に独自の名称を表示(トップページ、カテゴリーなど)

上記の続き。カスタム投稿タイプだと、カテゴリー名に相当する部分が表示されないので、loop.php をいじって、任意の名称とリンクを出力するようにカスタマイズします。

カスタム投稿が1つの場合。

カスタム投稿が2つの場合

応用すると、次のようになります。

カスタム投稿のスラッグ news には、カスタム投稿名のラベルを表示、notes には文字列のNotesを出力。リンク先は、カスタム投稿タイプのアーカイブページです。

オリジナルにはclassに次の記述が含まれますが、カテゴリーの色指定をしてなければ、省略しても大丈夫です。

echo get_the_term_list($post->ID,’ターム名’,”,’,’); を使えば、ターム名の出力もできます。

タームもしくはカテゴリーベースの関連記事を表示する

ここをカスタマイズすればいいのですが、今はやり方がわかりません ┐(´-`)┌ 

やり方が分かりました。長いので、こちらの記事に紹介しています。

LION MEDIA のカスタム投稿タイプの関連記事、アーカイブ表示、ウィジェットの新着

おすすめのポイント

配布元でも詳しく紹介されていますが、その他の有名な無料(爆速)テーマ・テンプレート同様、デフォルトで、投稿項目の表示/非表示、SEO対策、アクセス解析、子テーマによるスタイルシートやfunctions.php の上書き、広告の挿入、AMP化など、いろんな機能が実装されていますので、初心者でも非常に使いやすいテーマだと思います。

最初、ちょっと分かりずらいのは、投稿の本文に相当する部分のスタイルシートが、 CSS / content.css として独立して設定されていること。
(見出しや引用のデザイン変更するのに、通常のstyle.css を探しても出てこない)

カスタム投稿にも同様の機能を実装するには、functions.php などに追記する必要があり、初心者には少しハードルが高いこと(どんなテーマ・テンプレートにも共通していえることですが)。

見映えに拘るなら、こちらのテーマが一番垢抜けていますし、ファイル内の説明書きも非常に丁寧で、カスタマイズしやすいと思います。

スピードアップに関しては、いろんなプラグインがありますが、キャッシュ系やら、圧縮形やら、あまりごちゃごちゃ搭載しない方が、かえっていいような気はします。私の経験では。
かえってゴミが溜まって、激重になります。表示が崩れたり、Jsが動かないなど、弊害もありますしね。
どうしても使うならWP Fastest Cacheみたいに、自動的にキャッシュをクリアしてくれるものがおすすめです。キャッシュを溜める時間が長いと、逆に負荷をかけますし。キャッシュするのはPostだけ、15分おきにクリア、程度でちょうどいいかと。

ちなみにWP Fastest Chacheで計測したGTmetrix。
アクセスの集中する長文+画像多しで、これぐらいのスコアなので、1000~2000文字ぐらいの標準的な投稿なら、もっと速いと思います。

うちで一番アクセスが集中しやすい記事。画像は36枚。長文です。
LION MEDIA

こちらもアクセスの多い記事。画像16枚、やや長めの記事。
LION MEDIA

こちらは読了に10分はかかる長文。画像1枚。YouTubeの埋め込みあり。これくらいなら許容範囲かと。
LION MEDIA

YouTubeを複数埋め込んだら、当然、スコアは悪化します。
サイトパフォーマンスを改善したければ、極力、YouTubeや、外部のウィジェット、ギャラリーの類いは使わないことですね ┐(´-`)┌

LION MEDIA

その他のカスタマイズ

LION MEDIA のカスタム投稿タイプの関連記事、アーカイブ表示、ウィジェットの新着

1. カスタム投稿タイプにカテゴリーを設置する
2. カスタム投稿タイプの関連記事を表示する
3. カスタム投稿タイプをカテゴリー&タグのアーカイブに含める
4. ウィジェットの新着記事にカスタム投稿タイプを含める
5. カスタム投稿のタームを記事下に表示(条件分岐)
6. 最終更新日の表示

LION MEDIA(LION BLOG)のカスタマイズ

Amazon Kindle 電子書籍

sanmarie*comに掲載していた【「親 死んでほしい」「親 殺したい」で検索する人が多いので】の電子書籍です。心理学者・河合隼雄の名著『家族関係を考える』で紹介された『内面的な親殺し』と、父親殺しを描いたギリシャ悲劇『オイディプス』の物語をベースに、なぜ「親 死ね」「親 殺したい」といった感情が芽生えるのか、乗り越えるには何が必要か、分かりやすく解説しています。
作品詳細と冒頭部の無料サンプルはこちら。https://novella.one/oya-book

ライティングカテゴリの最新記事

Top