WordPressでSmartNews対応フィードを出力するカスタマイズ方法【コピペで実装】

WordPressでは、フィードの設定を行うことでSmartNews形式に対応させることが可能です。

以下では、簡単にできるようにコピペと、ちょっとした入力でカスタマイズできる方法を紹介します。

スポンサーリンク
レクタングル(大)広告

主な手順

WordPressのフィードをSmartNews対応させるのに必要な主な手順はこちら。

  1. 子テーマ直下にsmartnews.phpテンプレートの作成
  2. SmartNewsフィード用のコードを貼り付ける
  3. コード内に変数値を入力する
  4. functions.phpでSmartNewsフィードを呼び出す

基本的に、コピペ2回と、ちょっとした値入力で実装できるかと思います。

子テーマ直下にsmartnews.phpテンプレートの作成

まずは、子テーマフォルダ直下に「smartnews.php」というテンプレートファイルを作成します。

smartnews.php

SmartNewsフィード用のコードを貼り付ける

テンプレートファイルを開いて以下のコードを貼り付ける。

上記コードは、WordPressのインストールディレクトリにある、「wp-includes/feed-rss2.php」をカスタマイズしたものです。

コード内に必要な変数値を入力する

コード内の以下の部分を

以下のように自分の環境に合ったものに変更します。

functions.phpでSmartNewsフィードを呼び出す

あとは子テーマのfunctions.phpに以下のコードをコピペで追記します。

上記コードでSmartNewsフィードをWordPressに登録しています。

動作確認

動作確認を行うには、以下のURLでフィードを出力させ確認します。

http://ドメイン/?feed=smartnews

サンプルフィードはこちら。

https://wp-cocoon.com/?feed=smartnews

Chromeで確認すると、以下のようなコードが出力されているのがわかります。

SmartNewsフィードコード

SmartNewsには、「SmartFormat チェックツール」というフィードチェックツールもあります。

チェックツールに、「フィードのURL」や「XMLファイル」をポストすることでSmartNewsフォーマットに適合しているか手軽にチェックすることができます。

うまく動作していれば「結果」の部分に「Valid」と表示されます。

SmartNewsフォーマットチェック

画面下の方に行けば、ソースコードやプレビュー画面を見ることができます。

ソースHTML。

プレビューソースXML

プレビュー。

SmartNewsプレビュー画面

まとめ

今回の方法を利用すれば、比較的簡単にSmartNewsフィード対応させることができるかと思います。

WordPressカスタマイズに慣れている方であれば、5分もかからないかと思います。

ただ、フィードを出力できたとしても、SmartNewsは登録制です。

下記「コンテンツ提供規約」に同意の上、SmartFormatの情報および媒体情報を入力してください。 ※ 個人運営ブログや、サイト上に媒体運営者の明記がない場合、本フォームへのご登録はお断りしています。また、はてなブログ(独自ドメイン含む)やアメーバブログなど一部のブログプラットフォームについては既に対象となっているた...

結局のところ、申請に合格しなければ、意味はないかもしれません。

SmartFormatの仕様書はこちら。

『WordPressでSmartNews対応フィードを出力するカスタマイズ方法【コピペで実装】』へのコメント

  1. 名前:竹山 投稿日:2019/11/13(水) 10:58:33 ID:a6364d34e

    はじめまして。

    他サイトではうまくいかなかったSmartNews対応フィードがこちらの記事のおかげでできました。ありがとうございます。

    1点不明な点があったのですが、スマートニュースにはアドセンスを1枚貼れるようで、そのやり方が分かりませんでした。

    また、スマートフォーマットに準拠すると関連記事への内部リンクが貼れないのですが、文中の一部分やリンクカードのみ送らない方法があるのかどうかがあると私のようなCSSに詳しくないブロガーは助かるのではないかと感じました。

    お時間があるときにでも追記していただけましたら幸いです。

    竹山

  2. わいひら 名前:わいひら 投稿日:2019/11/15(金) 11:37:38 ID:d5229008c

    はじめまして。
    うまくいったようでよかったです^^

    1点不明な点があったのですが、スマートニュースにはアドセンスを1枚貼れるようで、そのやり方が分かりませんでした。

    これなんですが、情報元はありますでしょうか。URLをいただけると幸いです。

    また、スマートフォーマットに準拠すると関連記事への内部リンクが貼れないのですが、文中の一部分やリンクカードのみ送らない方法があるのかどうかがあると私のようなCSSに詳しくないブロガーは助かるのではないかと感じました。

    これに関しては、どの内部リンクが「必要」もしくは「必要でない」かは、プログラム側からは判断できないので、難しいのではないかと思います。
    やるとしても、独自のアルゴリズムを高度内に含める必要があるのではないかと思います。もしくは自分で。