• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:jsRSSで実現可能ですか?)

jsRSSで大黒屋のブログ記事をリスト表示する方法

このQ&Aのポイント
  • TYPEPADで制作したブログ記事のタイトルや投稿日を大黒屋のjsRSSを使用して別サイトの特定のページにリスト表示したいです。
  • 表示順序を新しい→古いから古い→新しいに変更することは可能でしょうか?
  • 知識不足のため、どなたかアドバイスいただけないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.2

こんにちは。 #1です。 >実際にjsRSS.cgiを見てみました。 >@data = reverse(@data)という箇所が何カ所もあるのですが~~ あれっ? ソースにはrevers(@data)ってどこにもないと思いますが… 御質問のjsRSS.cgiって、jsRSS++ v3.15のことですよね? 私が別のソフトと勘違いしているのか? いずれにしろ、#1にも書いたようにfujillinはperlをよく知らないし、そもそもjsRSS.cgiの著作権がどうなっているのかも調べてないので、改変可能かどうかもわかりません。 とりあえず、作成元にお問い合わせになるのが一番宜しいのでは? (連絡先も書いてあるみたいですので)

dcfc_08
質問者

補足

fujillin様 早速のお返事ありがとうございます! そしてスミマセン。。。 私が間違っていました。 「@data = reverse(@data)という箇所が何カ所もある」ではなく @data = (); というのがたくさんあるの間違いでした! 本当にスミマセン。 上記内容につきましてご返答いただければ幸いです。 また、作成元様にお問い合わせさせていただくのも 並行して進めていきたいと思っております。 いろいろお手間をとらせますが、ご返答よろしくお願いします。

その他の回答 (1)

  • fujillin
  • ベストアンサー率61% (1594/2576)
回答No.1

あまり中身までよく見てませんが… ◆一番簡単そうなのは、cgi側で順序を逆転する方法。 perlはよく知らないけれど、dataに内容を格納しているようなので、  @data = revers(@data)  (←イメージです。これで正しいかどうか不明) みたいなことで、一発でできると思われます。 ◆javascriptでも可能ですが、使用するテンプレート(divかulかtableかなど)によってオブジェクトの構成が変ってくるので、対応するコードも変ってきます。(自作のテンプレートを使用しているならなおさら) ごく簡単な例として、記事の構成が大黒屋さんのサンプルにあるdivのようなタイプだとすれば・・・ ------------------------- <div id="RSS"> <div>タイトルなど</div> <div class="RSSline">  <div>09/07</div><div>「記事タイトル A」</div> </div> <div class="RSSline">  <div>09/05</div><div>「記事タイトル B」</div> </div> <div class="RSSline">  <div>09/02</div><div>「記事タイトル C」</div> </div> </div> ------------------------- ラッパー(仮にid="RSS"としています。)の中から、クラス名が"RSSline"のdivだけ取り出して逆順にラッパーの後ろへ並べ替える。 (結果的に対象以外の要素は、前に押し出されることになる。  構成が違う場合は、そのあたりの順序の制御も必要。) もちろん全体の要素の構成(ul、tableなど)によって具体的な処理が変りますが、要領としては似たような方法で可能でしょう。 (以下はあくまで、↑の場合の例です) function reverse() { var i=0, d, e=[]; var rs=document.getElementById('RSS'), dv=rs.childNodes; while (d=dv[i++]) if (d.className=='RSSline') e.unshift(d); for (i=0; i<e.length; i++) rs.appendChild(e[i]); }

dcfc_08
質問者

補足

fujillinさま こんにちは。 早速のご回答ありがとうございます! 知識不足故、説明文に不足点等あったかと思いますが ご丁寧に解説いただき本当にありがとうございます。 「◆一番簡単そうなのは、cgi側で順序を逆転する方法。 perlはよく知らないけれど、dataに内容を格納しているようなので、  @data = revers(@data)  (←イメージです。これで正しいかどうか不明) みたいなことで、一発でできると思われます。」 とご解説いただき、実際にjsRSS.cgiを見てみました。 @data = reverse(@data)という箇所が何カ所もあるのですが これは、どの箇所を変更すれば良いのでしょうか。 すみませんが、ご教授いただけませんでしょうか。 よろしくお願いします。

関連するQ&A