ノアドットにRSSで入稿するための仕様書です。
コンテンツホルダーとして参加するための手順は、こちらのコンテンツホルダーとして記事を配信するまでの流れをご確認ください。
xml
XMLのバージョンおよび使用する文字コードの宣言は下記の通りです。
<?xml version="1.0" encoding="utf-8"?>
rss
RSSのバージョンおよび使用するネームスペースの定義は下記の通りです。
<rss version=“2.0" xmlns:nordot="https://www.nordot.jp/inputrss/strict/1.0/">
~(中略)
</rss>
channel
要素 | 必須 | データ型 | 説明 | デフォルト値 | 例 |
nordot:unitId | 必須 | number | コンテンツホルダー・ユニットのID。*1 | 1234567890 |
*1: ノアドットCMSの当該コンテンツホルダー・ユニットの「設定」ページ→「一般l」タブ→「開発」欄で「ユニットのID」でご確認ください。
item
itemは、nordot:fedAt降順に並べます。記事を入稿する際は、前回入稿したときのnordot:fedAtよりも新しいタイムスタンプで入稿するようにしてください。
要素 |
必須 | データ型 | 説明 | デフォルト値 | 例 |
nordot:guid |
必須 |
string |
記事を一意に識別する文字列(多くの場合、当該記事の配信元サイトでのURLが使用されています)。ノアドットに取り込まれた記事の更新・削除を行う際は、この値を使って当該記事を指定する。最大255文字。 |
https://example.com/article?id=abc123 |
|
nordot:sourceUrl |
任意 |
string |
当該記事の配信元サイトでのURL。最大1000文字。 |
https://example.com/article?id=abc123 |
|
nordot:fedAt |
必須 |
string |
RFC1123形式。記事が作成・更新・削除された日時。*2 |
Sat, 07 Sep 2002 00:00:01 GMT |
|
nordot:deleted |
任意 |
boolean |
trueまたはfalse。nor.に取り込まれた記事の削除を行う際、値にtrueを指定する。 |
false |
|
nordot:title |
必須(記事を削除する場合は不要) |
string |
記事のタイトル(主見出し) |
||
nordot:status |
任意 |
string |
記事の公開・非公開の設定。下書き(非公開)にしておくならdraft、公開するならpublic、公開したものを非公開にする場合はprivateを指定する。 |
public | |
nordot:bodyType |
必須 |
string |
記事をマークアップする形式。Markdown形式の場合はmarkdown、HTML形式の場合はhtmlを指定。Nordot_html形式(後述のHTML要素の通りに入稿する形式)はnordot_htmlを指定。 |
|
|
nordot:body |
必須 |
string |
記事の本文。最大文字数は30,000文字まで。使用できるマークアップ表現については「Markdown仕様書」または次項「HTML要素の取り込まれ方」を参照。 |
|
|
nordot:publishedAt | 任意 |
string |
RFC1123形式。記事の公開日時。 値が現在より過去の日時なら、その日時で即公開。値が未来の日時なら、その日時での公開予約。空の場合は記事がノアドットに作成された日時が入る。 |
Sat, 07 Sep 2002 00:00:01 GMT | |
nordot:expiredAt | 任意 | string |
公開終了日時。 |
Sat, 07 Sep 2002 00:00:01 GMT |
|
nordot:tags | 任意 | string |
記事に付与するタグ(ジャンル、カテゴリ、タグに該当する属性です)。 |
|
|
nordot:labels | 任意 | string |
Deprecated 記事に付与するラベル(ジャンル、カテゴリ、タグに該当する属性です)。 カンマ "," 区切りで複数のラベル付与が可能。 現在はtagへの仕様変更における移行期間中となり、nordot:tagsにコピーされます。今後はnordot:tagsに移行します。 |
||
nordot:seriesId |
任意 | number |
記事をひもづける連載のID。*3 |
||
nordot:topicId |
任意 | number |
記事をひもづけるトピックのID。*4 |
||
nordot:videoFile | 任意 | string | Microsoftニュースへの配信代行をご利用の場合のみ使用可能。*5 | ||
nordot:aggregatorAuthor |
任意 | string |
Microsoftニュースへの配信代行をご利用の場合のみ使用可能。*6 |
*1: ノアドットCMSの当該コンテンツホルダー・ユニットの「設定」ページ→「一般l」タブ→「開発」欄で「ユニットのID」でご確認ください。
*2: RSSファイルを表示した日時を埋め込んでいる場合、読み込みにいくたびに更新として判断してしまいます。個別itemごと更新があるときのみ、日時を更新してください。
*3: ノアドットCMSの当該コンテンツホルダー・ユニットであらかじめ連載を作成しておくと、IDが発行されます。詳しくは「連載を作成する」でご確認ください。
*4: ノアドットCMSの当該コンテンツホルダー・ユニットであらかじめトピックを作成しておくと、IDが発行されます。詳しくは「トピックを作成する」でご確認ください。
*5:Microsoftニュースなど、一部の外部配信先についてはMP4で入稿されたファイルを、外部配信先に送ることが可能です。入稿方法については、こちらをご参照ください。
*6:Microsoftニュースに配信する際にオーサー表記を表示するためのタグです。
更新・削除について
HTML要素の取り込まれ方
本文をHTMLでマークアップする場合、<nordot:body>タグの直下にはブロックレベル要素のみを記述できます。なお、HTMLでマークアップした場合も、ノアドットへの保管時にはMarkdownでのマークアップに変換されます(表示時にHTMLに変換されます)。
〈ブロックレベル要素と変換後のMarkdownの対応表〉
HTML |
Markdownへの変換後 |
<h1>レベル1の見出し</h1> |
# レベル1の見出し |
<h2>レベル2の見出し</h2> |
## レベル2の見出し |
<h3>レベル3の見出し</h3> |
### レベル3の見出し |
<h4>レベル4の見出し</h4> |
#### レベル4の見出し |
<h5>レベル5の見出し</h5> |
##### レベル5の見出し |
<h6>レベル6の見出し</h6> |
###### レベル6の見出し |
<p>これは1つめの段落です。2つの文があります。 |
これは1つめの段落です。2つの文があります。 これは2つめの段落です。ここにも2つの文があります。 |
<ul> |
- 色は匂へど - 散りぬるを - 我が世誰ぞ - 常ならむ - 有為の奥山 |
<blockquote> |
> このテキストは引用文の1行目です。 > このテキストは引用文の2行目です。 > cite: [出典名](https://example.com) |
<pre> |
``` このテキストは囲みで囲まれる1行目です。 ``` |
<hr /> |
****** |
<img src="https://example.com/img/123"></img> |
[[image]](4567890) *4
|
<figure> |
|
<figure> |
|
<iframe width="560" height="315" src="https://www.youtube.com/embed/911sfFShRd0" frameborder="0" gesture="media" allow="encrypted-media" allowfullscreen></iframe> |
[[embed-youtube]] |
<iframe src="https://player.vimeo.com/video/207292223" width="640" height="274" frameborder="0" webkitallowfullscreen mozallowfullscreen allowfullscreen></iframe> |
[[embed-vimeo]](https://vimeo.com/207292223) |
<blockquote class="twitter-tweet" data-lang="en"><p lang="en" dir="ltr">8 characters. <br>1 powerful feeling. <br>Thankful.<br><br>Tweet what you’re grateful for today. </p>― Twitter (@Twitter) <a href="https://twitter.com/Twitter/status/933704383170101248?ref_src=twsrc%5Etfw">November 23, 2017</a></blockquote> |
[[embed-twitter]] |
<iframe src="https://www.facebook.com/plugins/post.php?href=https%3A%2F%2Fwww.facebook.com%2FFacebookJapan |
[[embed-facebook]](https://www.facebook.com/FacebookJapan/posts/ |
<blockquote class="instagram-media" data-instgrm-captioned data-instgrm-permalink="https://www.instagram.com/p/BwZ3YdrJX8K/?utm_source=ig_embed&utm_medium=loading" data-instgrm-version="12" style=" background:#FFF; border:0; border-radius:3px; box-shadow:0 0 1px 0 rgba(0,0,0,0.5),0 1px 10px 0 rgba(0,0,0,0.15); margin: 1px; max-width:540px; min-width:326px; padding:0; width:99.375%; width:-webkit-calc(100% - 2px); width:calc(100% - 2px);"><div style="padding:16px;"> <a href="https://www.instagram.com/p/BwZ3YdrJX8K/?utm_source=ig_embed&utm_medium=loading" style=" background:#FFFFFF; line-height:0; padding:0 0; text-align:center; text-decoration:none; width:100%;" target="_blank"> <div style=" display: flex; flex-direction: row; align-items: center;"> <div style="background-color: #F4F4F4; border-radius: 50%; flex-grow: 0; height: 40px; margin-right: 14px; width: 40px;"></div> <div style="display: flex; flex-direction: column; flex-grow: 1; justify-content: center;"> <div style=" background-color: #F4F4F4; border-radius: 4px; flex-grow: 0; height: 14px; margin-bottom: 6px; width: 100px;"></div> <div style=" background-color: #F4F4F4; border-radius: 4px; flex-grow: 0; height: 14px; width: 60px;"></div></div></div><div style="padding: 19% 0;"></div> ~省略~ </a> <p style=" margin:8px 0 0 0; padding:0 4px;"> <a href="https://www.instagram.com/p/BwZ3YdrJX8K/?utm_source=ig_embed&utm_medium=loading" style=" color:#000; font-family:Arial,sans-serif; font-size:14px; font-style:normal; font-weight:normal; line-height:17px; text-decoration:none; word-wrap:break-word;" target="_blank">Reunited. Here’s the all-new poster for #ToyStory4.</a></p> <p style=" color:#c9c8cd; font-family:Arial,sans-serif; font-size:14px; line-height:17px; margin-bottom:0; margin-top:8px; overflow:hidden; padding:8px 0 7px; text-align:center; text-overflow:ellipsis; white-space:nowrap;">A post shared by <a href="https://www.instagram.com/disneystudios/?utm_source=ig_embed&utm_medium=loading" style=" color:#c9c8cd; font-family:Arial,sans-serif; font-size:14px; font-style:normal; font-weight:normal; line-height:17px;" target="_blank"> Walt Disney Studios</a> (@disneystudios) on <time style=" font-family:Arial,sans-serif; font-size:14px; line-height:17px;" datetime="2019-04-18T16:48:07+00:00">Apr 18, 2019 at 9:48am PDT</time></p></div></blockquote><script async src="//www.instagram.com/embed.js"></script> |
[[embed-instagram]](https://www.instagram.com/p/BwZ3YdrJX8K/) |
*4: 画像URLにノアドットがアクセスして画像データを取得し、ノアドットのデータベースに保管します。Markdownへの変換時には、保管時に発行した画像IDで記述されます。この例では「4567890」という値が画像IDにあたります。
入稿できる画像は、最大8MBとなります。
画像の表示仕様は下記の通りです。
■スマホ版ではどんな画像でも一律でデバイス画面幅いっぱいに表示
■PC版では下記の通りの仕様
・画像が幅600px未満の場合:自動的に240pxで右寄せ
・画像が幅600px以上の場合:自動的に本文幅
センター寄せで画像を表示したい場合は、横幅600px以上で入稿してください。
〈ブロックレベル要素内に記述できるインライン要素と変換後のMarkdownの対応表〉
HTML |
Markdownへの変換後 |
<a href="https://example.com/">exampleへのリンク</a> |
[exampleへのリンク](https://example.com/) |
これは1つめの文です。<br /> |
これは1つめの文です。 *5 |
<em>強調</em> |
*強調* |
<strong>強い強調</strong> |
__強い強調__ |
<del>打ち消し</del> |
~~打ち消し~~ |
*5: 行末に半角スペースが2つ連続で付記されます。
〈Markdown用文字と変換後のMarkdownの対応表〉
Markdown用文字 |
Markdownへの変換後 |
\ |
\\ |
` |
\` |
* |
\* |
_ |
\_ |
{} |
\{\} |
[] |
\[\] |
() |
\(\) |
# |
\# |
+ |
\+ |
- |
\- |
. |
\. |
! |
\! |
サンプル1:新規入稿の場合
1.1 以下の例です。
・nordotType:markdown
・記事の即時公開
<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:nordot="https://www.nordot.jp/inputrss/strict/1.0/"> <channel> <nordot:unitId>0123456789</nordot:unitId> <item> <nordot:guid>https://www.shiodome_news.jp/22222</nordot:guid> <nordot:fedAt>Sat, 09 Sep 2017 01:00:00 GMT</nordot:fedAt> <nordot:title>タイガー・ウッズ「人生楽しむ」</nordot:title> <nordot:status>public</nordot:status> <nordot:bodyType>markdown</nordot:bodyType> <nordot:body><![CDATA[[[image]](https://www.shiodome_news.jp/22222/woods.jpg)男子ゴルフの元世界ランキング1位で、自身がホストを務める米ツアー非公式の慈善大会、ヒーロー・ワールドチャレンジ(30日開幕・バハマ)で2月以来となる実戦復帰を果たすタイガー・ウッズ(米国)が28日、バハマで「今は人生を楽しんでいる」と話した。 4月に腰の手術を受け、5月にはアルコールか薬物の影響下で車を運転した容疑で逮捕された。「多くの友人が助けてくれた」と振り返った。 故障続きで「ゴルフを楽しむことを忘れていた」と述べる。現在は痛みもなく、どんなショットにも耐えられるという。(AP=共同)]]></nordot:body> <nordot:publishedAt>Sat, 09 Sep 2017 01:00:00 GMT</nordot:publishedAt> <nordot:expiredAt>Sat, 08 Sep 2018 01:00:00 GMT</nordot:expiredAt> <nordot:tags>golf,woods</nordot:tags> </item> </channel> </rss> |
1.2 以下の例です。
・nordotType:nordot_html
・記事の予約公開
<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:nordot="https://www.nordot.jp/inputrss/strict/1.0/"> |
サンプル(更新の場合)
<?xml version="1.0" encoding="utf-8"?><rss version="2.0" xmlns:nordot="https://www.nordot.jp/inputrss/strict/1.0/"> |
コメント
0件のコメント
サインインしてコメントを残してください。