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テーマのCocoonを利用している場合は、デフォルトで機能がついているのでこのカスタマイズは不要です。また、その他テーマでも、SmartNewsフィード機能があるテーマはカスタマイズは不要かと思います。

『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に詳しくないブロガーは助かるのではないかと感じました。

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

  3. 名前:佐藤 投稿日:2019/11/25(月) 21:52:54 ID:8a0423a43

    はじめまして。
    記載の手順でカスタマイズを行ったのですが、SmartFormat チェックツールで
    以下のエラーが出てしまいます。原因分かりますでしょうか。

    Invalid part found – invalid: “…<rss version="2.0"…", line: 1107, column: 12

    お手数ですが、ご確認頂けると幸いです。

  4. わいひら 名前:わいひら 投稿日:2019/11/26(火) 22:15:26 ID:35b331632

    自分のフィードで試した限りでは問題ないようです。
    ttps://wp-cocoon.com/?feed=smartnews
    エラーメッセージだけでは、分からない部分もあるので、フィードのURLを提示していただければと思います。

  5. 名前:佐藤 投稿日:2019/11/28(木) 23:04:48 ID:5f8cfdf88

    わいひら様

    ありがとうございます。フィードのURLは以下になります。
    ttps://omori-kamata.com/?feed=smartnews

    よろしくお願い致します。

  6. わいひら 名前:わいひら 投稿日:2019/12/01(日) 20:23:25 ID:15bea10ad

    なぜか、/rssタグで終わるはずのところが、もう一度同じものが出力されているようです。
    https://nelog.jp/wp-content/uploads/2019/12/2019-12-01_20h17_06.png
    通常はこうなるはずです。
    https://nelog.jp/wp-content/uploads/2019/12/2019-12-01_20h18_09.png
    原因としては、テンプレートに同じ物が二重に貼り付けられているとか、呼び出しが何度かあるとかいくつかあると思います。
    ただ、こちら側からPHPコードを見ることはできないので、PHP問題の詳細については自分で解決していただくしかないかもしれません。

  7. 名前:佐藤 投稿日:2019/12/03(火) 00:15:32 ID:87a0d5fc1

    ご指摘の点を参考にし、子テーマのfunctions.phpから以下の記述のコードを削除したら、エラーがなくなりました。
    >あとは子テーマのfunctions.phpに以下のコードをコピペで追記します。

    恐らく、親テーマのfunctions.phpでも呼び出されているようで、二重に呼び出していたようです。

    解決できて良かったです。ありがとうございました。

  8. わいひら 名前:わいひら 投稿日:2019/12/03(火) 12:52:15 ID:0311735d5

    ああ、なるほど。
    テーマ自体にSmartNewsフィード機能が実装されている場合は、このカスタマイズは不要です。
    URLのフィード部分を削除してサイトを見たら、Cocoonなんですね。
    だとしたら、機能としてデフォルトでついています。
    https://wp-cocoon.com/smartnews-feed/
    この記事にも、最後の部分に注意書きとして書いておこうと思います。

  9. 名前:山下 投稿日:2019/12/05(木) 16:46:20 ID:79e1b63a3

    はじめまして。

    このページを参考にsmartnews用のrssを作成したのですが、以下のエラーが出てしまいます。

    「ファイルのサイズ容量は 1 MB 以下を推奨値としております」

    対策として、smartnewsの公式には以下が挙げられているのですが、やり方がわからず、ご教授いただけますと幸いです。

    参考: ファイルに含まれる記事数を減らす、SmartFormatファイルを複数に分けるなどして、ファイル容量を小さくしてください。
    https://publishers.smartnews.com/hc/ja/articles/360022876234

    どうぞよろしくお願いします。

  10. わいひら 名前:わいひら 投稿日:2019/12/06(金) 10:53:59 ID:b4b24e407

    原因を探るには、まずは現在どのような状態になっているかを知る必要があります。
    上の方で書かれている佐藤さんのようにSmartNewsフィードのURLを掲示していただけますでしょうか。

  11. 名前:ゆうき 投稿日:2020/03/14(土) 11:14:18 ID:ebfd8c4a1

    簡単な方法をググって、こちらのページを見つけました
    わかりやすく、直ぐできました
    ありがとうございます

    もし良ければ、特定のauthorやタグの記事だけを抽出するガイドも掲載いただけないでしょうか
    よろしくお願いします!

  12. わいひら 名前:わいひら 投稿日:2020/03/14(土) 22:30:18 ID:2c0280140

    記事内のコードはあくまでサンプルコードです。
    個別機能については、自身でお願いいたします。
    難しいようであれば、プロもしくは業者にご依頼ください。

  13. 名前:ゴウ 投稿日:2020/05/19(火) 09:02:19 ID:d46b76465

    今回、スマートニュースへの配信を行うための対応を探していたところ、こちらのページにたどり着きました。

    現在、記事に記載されているフィードをスマートニュースのチェックツールにかけると
    エラーが表示されてしまいます。

    ■使用したフィード
    https://wp-cocoon.com/?feed=smartnews

    ■エラー内容。
    HTTP Content-Typeヘッダが非推奨です。HTTPレスポンスのContent-Typeヘッダーは application/rss+xml, application/atom+xml, application/xml, text/xml のいずれかを指定してください。

    スマートニュース側の仕様が変わってしまった可能性があるのですが、こちらの対処方法ってありますか?

  14. わいひら 名前:わいひら 投稿日:2020/05/19(火) 17:51:10 ID:71ff5272b

    一応、最初にお断りしておくと、スマートニュースチェックツールに出てくるのはWarningつまり警告であって、エラーではありません。

    一般的なツールでの警告の取り扱いについては、エラーではないので、採用はされるとは思います(スマートニュースの仕様はわからないですが)。

    加えて、ヘッダーのContent-Typeにも、application/rss+xmlは問題なく割り当てられているようです。
    https://seocheki.net/http-header.php?url=https%3A%2F%2Fwp-
    僕はなんでこの設定で警告が出るのか、ちょっとわからないです。

    Content-Typeの変更コード部分については、以下の部分になるので警告が出ないContent-Typeを探ってみてください。

    header( ‘Content-Type: ‘ . feed_content_type( ‘rss2’ ) . ‘; charset=’ . get_option( ‘blog_charset’ ), true );

  15. 名前:ゴウ 投稿日:2020/05/20(水) 06:44:15 ID:161ba2422

    わいひら様

    ご質問の件、ご回答いただきまして、ありがとうございました。

    警告と出る点については、すっかりエラーだと思い込んでしまい失礼しました。

    が、スマートニュースにも問い合わせしてみたのですが、警告が出ないようにして対処して欲しいと言われてしまいました・・・このまま進められたらよかったんですけど。

    >Content-Typeの変更コード部分については、以下の部分になるので警告が出ないContent-Typeを探ってみてください。

    ご教示いただき、ありがとうございます!
    調べて対応してみようと思います。

  16. 名前:まぁ 投稿日:2020/06/19(金) 08:17:56 ID:22b3ef884

    こちらを拝見してサイトの申請が出来ました。
    ありがとうございました。

    違うサイトの設定をしたのですが、エラー内容に【channel.image.url の URL は形式が不正か、不正な文字を含んでいます】と表示されてしまいました。

    SmartFormat仕様書を確認してもchannel.image.urlが不明でロゴでもないし、サイトアイコンでもなく何を指すのか?と悩んでいます。
    なにかご存知でしたら教えていただけないでしょうか?

    よろしくお願いします。

  17. わいひら 名前:わいひら 投稿日:2020/06/20(土) 12:39:01 ID:2ec64fee1

    これに関しては、URLを頂いて実物を見てみないと何とも言えないかもしれません^^;
    修理品の実物がないのに修理が難しいのと同じ感じです。
    ※URLを頂いたとしても、僕も全てのSmartNewsの仕様に精通しているわけではないので、必ずしも問題を解決できるかわからないので、あらかじめご了承ください。

  18. 名前:まぁ 投稿日:2020/06/21(日) 08:53:24 ID:6a03c323c

    わいひら様

    ご回答ありがとうございました。
    先日のまぁです。

    解決しましたのでご報告です。
    ワードプレスのサイトアイコンのファイル名が日本語でしたので英数字に変更して直りました(*^^*)
    お騒がせしました。
    共同で運営しているサイトですので、、、気がつくのが遅くなりました( ;∀;)

    お世話になりました。

  19. 名前:ずみし 投稿日:2020/08/19(水) 13:35:37 ID:a0268bd27

    はじめまして!
    苦戦している中こちらの記事を拝見しまして大変助かっております。

    記事通り設定行い、SmartFormat チェックツールにてチェックを行ったところ下記のエラーが表示されました。

    ■item.content:encoded は必須項目です

    ご存じであれば、解消方法おご教授いただけませんでしょうか。
    よろしくお願いいたします。

  20. わいひら 名前:わいひら 投稿日:2020/08/22(土) 11:54:24 ID:30e89959b

    それに関しては、実際のフィードのURLを提示していただいて、実際にどこにどのようなエラーが出ているかを見てみないと、ちょっと何とも言えないです。
    ただ、実物を見たとしても必ずしも原因が分かるという保証はできませんので、あらかじめご了承いただければ幸いです。

  21. 名前:なつむぎ 投稿日:2020/09/12(土) 08:59:19 ID:f9a24d61a

    こんにちは、スマートニュースへの配信を行いたいと思い参考にさせていただきました!cocoon使用です。

    スマートニュースのチェックツールにはエラーが表示されなかったので申請したのですが、スマートニュース メディアリレーション事務局から修正を2か所指摘されたのですがわからなかったのでご教授していただければ幸いです。

    対象SmartFormatURL:https://gakirog.com/?feed=smartnews

    指摘事項1・リンク誘導文の削除
    指摘事項2・記事内の画像に不備(アイコン)

    そもそもRSSがよくわかっていないのでどこをどう直せばいいかわからない状態です!
    勉強不足で申し訳ありませんが、よろしくお願いいたします。

  22. わいひら 名前:わいひら 投稿日:2020/09/14(月) 19:54:59 ID:7a728ea34

    申し訳ないですが、エラーチェックでエラーが出ていないことと、指摘されている内容があまりにもざっくりとしすぎて具体的ではないので、僕もわからないです。

  23. 名前:なつむぎ 投稿日:2020/09/15(火) 11:30:51 ID:6ab2adf41

    わいひら様
    ご返信ありがとうございます。

    指摘事項がざっくりとしすぎていて申し訳ありません!

    指摘事項①はフィード内でリンクは削除出来ているそうなのですが、記述がそのままになってしまうそうです。

    指摘事項の②の方は吹き出しの時の自分のアイコンが大きすぎるようです。

    ②の方は小さいアイコンに変更すればいいかと思いますが、①の方がわかりません。
    対応の仕方はありそうですか?

    分かりにくくて申し訳ありません。返答頂ければ幸いです。