<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>Google AJAX Feed API　外部　RSS　読み込み　一覧　表示　Javascript　改造 on qwerty.work</title>
        <link>https://qwerty.work/tags/google-ajax-feed-api-%E5%A4%96%E9%83%A8-rss-%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF-%E4%B8%80%E8%A6%A7-%E8%A1%A8%E7%A4%BA-javascript-%E6%94%B9%E9%80%A0/</link>
        <description>Recent content in Google AJAX Feed API　外部　RSS　読み込み　一覧　表示　Javascript　改造 on qwerty.work</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja-JP</language>
        <lastBuildDate>Wed, 29 Jul 2009 13:45:09 +0900</lastBuildDate><atom:link href="https://qwerty.work/tags/google-ajax-feed-api-%E5%A4%96%E9%83%A8-rss-%E8%AA%AD%E3%81%BF%E8%BE%BC%E3%81%BF-%E4%B8%80%E8%A6%A7-%E8%A1%A8%E7%A4%BA-javascript-%E6%94%B9%E9%80%A0/index.xml" rel="self" type="application/rss+xml" /><item>
            <title>Google AJAX Feed APIで外部のRSSを読み込み一覧を表示するJavascriptを改造</title>
            <link>https://qwerty.work/post/2009/07/google_ajax_feed_apirssjavascript/</link>
            <pubDate>Wed, 29 Jul 2009 13:45:09 +0900</pubDate>
            <guid>https://qwerty.work/post/2009/07/google_ajax_feed_apirssjavascript/</guid>
            <description>&lt;p&gt;前回のページ「」で紹介したスクリプトを一部変更してみた。&lt;/p&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt;変更の主な内容は、&lt;/p&gt;&#xA;&lt;p&gt;表示するリストを作成する際に、HTMLタグを変数に入れるように改造しました。（赤文字部分）&lt;/p&gt;&#xA;&lt;p&gt;前回はXMLの要素を操作してリストを作成するようにしていましたが、&lt;/p&gt;&#xA;&lt;p&gt;XMLの操作は苦手なのでHTMLのソースを変数に格納するようにしました。&lt;/p&gt;&#xA;&lt;p&gt;google.load(&amp;ldquo;feeds&amp;rdquo;, &amp;ldquo;1&amp;rdquo;);  &lt;/p&gt;&#xA;&lt;p&gt;function initialize()&lt;/p&gt;&#xA;&lt;p&gt;{  &lt;/p&gt;&#xA;&lt;p&gt; //RSSフィードの取得&lt;/p&gt;&#xA;&lt;p&gt; var feed = new google.feeds.Feed(&amp;quot;●●読み込みたいフィードのURL●●&amp;quot;);  &lt;/p&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt; //取得するフィード数&lt;/p&gt;&#xA;&lt;p&gt; feed.setNumEntries(5)  &lt;/p&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt; //実際に読む込む&lt;/p&gt;&#xA;&lt;p&gt; feed.load(function(result)&lt;/p&gt;&#xA;&lt;p&gt; {  &lt;/p&gt;&#xA;&lt;p&gt;  &lt;/p&gt;&#xA;&lt;p&gt;  //読み込めたか判別&lt;/p&gt;&#xA;&lt;p&gt;  if (!result.error)&lt;/p&gt;&#xA;&lt;p&gt;  {&lt;/p&gt;&#xA;&lt;p&gt;   //表示部分を選択&lt;/p&gt;&#xA;&lt;p&gt;   var container = document.getElementById(&amp;ldquo;feed&amp;rdquo;);&lt;/p&gt;&#xA;&lt;p&gt;   &lt;/p&gt;&#xA;&lt;p&gt;   //変数の初期化&lt;/p&gt;&#xA;&lt;p&gt;   var list = &amp;ldquo;&amp;rdquo;;&lt;/p&gt;&#xA;&lt;p&gt;   &lt;/p&gt;&#xA;&lt;p&gt;   //Feedの処理&lt;/p&gt;&#xA;&lt;p&gt;    &lt;strong&gt;list = &amp;lsquo;&amp;rsquo;;&lt;/strong&gt;&lt;/p&gt;&#xA;&lt;p&gt;   for (var i = 0; i list += &amp;lsquo;- &amp;lsquo;;&lt;/p&gt;&#xA;&lt;p&gt;     list += &amp;lsquo;&lt;a class=&#34;link&#34; href=&#34;&#34; &gt;&amp;rsquo; + entry.title + &amp;lsquo;&lt;/a&gt;&amp;rsquo;;&lt;/p&gt;&#xA;&lt;p&gt;     var strdate = createDateString(entry.publishedDate);&lt;/p&gt;&#xA;&lt;p&gt;     list += &amp;lsquo;（&amp;rsquo; + strdate + &amp;lsquo;）&amp;rsquo;;&lt;/p&gt;&#xA;&lt;p&gt;     list += &amp;lsquo;&amp;rsquo;;**&lt;/p&gt;&#xA;&lt;p&gt;    }&lt;/p&gt;&#xA;&lt;p&gt;        }&lt;/p&gt;&#xA;&lt;p&gt;     **list += &#39;&#xA;&amp;lsquo;;&lt;/p&gt;&#xA;&lt;p&gt;     container.innerHTML = list;**&lt;/p&gt;&#xA;&lt;p&gt;     }  &lt;/p&gt;&#xA;&lt;p&gt;   });  &lt;/p&gt;&#xA;&lt;p&gt;}&lt;/p&gt;&#xA;&lt;p&gt;//日付の表示方法を変更&lt;/p&gt;&#xA;&lt;p&gt;function createDateString(publishedDate){&lt;/p&gt;&#xA;&lt;p&gt;  var pdate = new Date(publishedDate);&lt;/p&gt;&#xA;&lt;p&gt;  var pday = pdate.getDate();&lt;/p&gt;&#xA;&lt;p&gt;  var pmonth = pdate.getMonth() + 1;&lt;/p&gt;&#xA;&lt;p&gt;  var pyear = pdate.getFullYear();&lt;/p&gt;&#xA;&lt;p&gt;  var phour = pdate.getHours();&lt;/p&gt;&#xA;&lt;p&gt;  var pminute = pdate.getMinutes();&lt;/p&gt;&#xA;&lt;p&gt;  var psecond = pdate.getSeconds(); &lt;/p&gt;&#xA;&lt;p&gt;  //var strdate = pyear + &amp;ldquo;年&amp;rdquo; + pmonth + &amp;ldquo;月&amp;rdquo; + pday + &amp;ldquo;日&amp;rdquo; + phour + &amp;ldquo;時&amp;rdquo; + pminute + &amp;ldquo;分&amp;rdquo; + psecond + &amp;ldquo;秒&amp;rdquo;;&lt;/p&gt;&#xA;&lt;p&gt;  var strdate = pyear + &amp;ldquo;-&amp;rdquo; + pmonth + &amp;ldquo;-&amp;rdquo; + pday ;&lt;/p&gt;&#xA;&lt;p&gt;  return strdate;&lt;/p&gt;&#xA;&lt;p&gt;}&lt;/p&gt;&#xA;&lt;p&gt;google.setOnLoadCallback(initialize); &lt;/p&gt;&#xA;&lt;p&gt; &#xA; &lt;/p&gt;&#xA;&lt;p&gt;↓↓実際にうちの社長のアメブロのフィードを読み込んで表示した例↓↓&lt;/p&gt;&#xA;&lt;p&gt;google.load(&amp;ldquo;feeds&amp;rdquo;, &amp;ldquo;1&amp;rdquo;);&lt;br&gt;&#xA;function initialize()&#xA;{&lt;br&gt;&#xA;//RSSフィードの取得&#xA;var feed = new google.feeds.Feed(&amp;ldquo;&lt;a class=&#34;link&#34; href=&#34;http://feedblog.ameba.jp/rss/ameblo/5603blog/rss20.xml%22%29;&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;&#xA;    &gt;http://feedblog.ameba.jp/rss/ameblo/5603blog/rss20.xml&#34;);&lt;/a&gt;&lt;/p&gt;&#xA;&lt;p&gt;//取得するフィード数&#xA;feed.setNumEntries(5)&lt;/p&gt;&#xA;&lt;p&gt;//実際に読む込む&#xA;feed.load(function(result)&#xA;{&lt;/p&gt;&#xA;&lt;p&gt;//読み込めたか判別&#xA;if (!result.error)&#xA;{&#xA;//表示部分を選択&#xA;var container = document.getElementById(&amp;ldquo;feed&amp;rdquo;);&lt;/p&gt;&#xA;&lt;p&gt;//変数の初期化&#xA;var list = &amp;ldquo;&amp;rdquo;;&lt;/p&gt;&#xA;&lt;p&gt;//Feedの処理&#xA;list = &amp;lsquo;&amp;rsquo;;&#xA;for (var i = 0; i&lt;/p&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt;前回同様に&lt;/p&gt;&#xA;&lt;p&gt;RSSに「PR:」が含まれていなければ新着5件を表示しますが、&lt;/p&gt;&#xA;&lt;p&gt;新着5件中1件に「PR:」が含まれていた場合は&lt;/p&gt;&#xA;&lt;p&gt;フィード自体から削除して消すのではなく、省略というか、スキップしているだけなので&lt;/p&gt;&#xA;&lt;p&gt;表示が4件になります。&lt;/p&gt;&#xA;&lt;p&gt;この辺りは改善が必要ですが、また今度にします。&lt;/p&gt;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt;参考にしたサイト&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;&#xA;&#xA;&lt;div class=&#34;link-card&#34;&gt;&#xA;  &lt;a href=&#34;http://www.ajaxtower.jp/googleajaxfeed/feed/index5.html&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://image.thum.io/get/width/300/crop/200/http://www.ajaxtower.jp/googleajaxfeed/feed/index5.html&#34; alt=&#34;http://www.ajaxtower.jp/googleajaxfeed/feed/index5.html&#34; loading=&#34;lazy&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-body&#34;&gt;&#xA;      &lt;span class=&#34;link-card-title&#34;&gt;http://www.ajaxtower.jp/googleajaxfeed/feed/index5.html&lt;/span&gt;&#xA;      &#xA;      &lt;span class=&#34;link-card-url&#34;&gt;http://www.ajaxtower.jp/googleajaxfeed/feed/index5.html&lt;/span&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;p&gt; &lt;/p&gt;&#xA;&lt;p&gt;2009/09/23追記&lt;/p&gt;&#xA;&lt;p&gt;上記を更に改造↓&lt;/p&gt;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;&#xA;  &#xA;&#xA;&#xA;&lt;div class=&#34;link-card&#34;&gt;&#xA;  &lt;a href=&#34;http://qwerty.work/blog/2009/09/google-ajax-feed-api-1.php&#34; target=&#34;_blank&#34; rel=&#34;noopener noreferrer&#34;&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-image&#34;&gt;&#xA;      &lt;img src=&#34;https://image.thum.io/get/width/300/crop/200/http://qwerty.work/blog/2009/09/google-ajax-feed-api-1.php&#34; alt=&#34;http://qwerty.work/blog/2009/09/google-ajax-feed-api-1.php&#34; loading=&#34;lazy&#34;&gt;&#xA;    &lt;/div&gt;&#xA;    &#xA;    &lt;div class=&#34;link-card-body&#34;&gt;&#xA;      &lt;span class=&#34;link-card-title&#34;&gt;http://qwerty.work/blog/2009/09/google-ajax-feed-api-1.php&lt;/span&gt;&#xA;      &#xA;      &lt;span class=&#34;link-card-url&#34;&gt;http://qwerty.work/blog/2009/09/google-ajax-feed-api-1.php&lt;/span&gt;&#xA;    &lt;/div&gt;&#xA;  &lt;/a&gt;&#xA;&lt;/div&gt;&#xA;&#xA;</description>
        </item></channel>
</rss>
