Cuerda-Feed-total が出力する RSS において、<content:encoded> は記事本文をほぼそのまま配信先へ渡すための中核となる要素です。
しかし、実際には WordPress の投稿本文をそのまま流し込んでいるわけではなく、
各配信先の仕様に沿うように、多段階の整形と是正処理を行ったうえで出力しています。
ここでは、記事本文をどのような手順で加工し、どのような観点で「配信仕様に合わせて整える」のかを詳しく説明します。
Cuerda-Feed-total が <content:encoded> を生成する際の流れは、おおまかに次のような段階に分かれます。
このように、本文整形は「共通の土台」と「配信先ごとの調整」が積み重なったプロセスとして設計されています。
最初の段階では、WordPress の投稿本文を、そのまま管理画面に記録されているテキストではなく、 実際に閲覧ページに表示されるのに近い形にまで展開します。
<p> タグを与える。この段階の目的は、「配信先ごとに調整する前に、まず WordPress としての完成形をきちんと出す」ことです。 ここで得られた HTML を出発点として、以降の是正処理が行われます。
配信先を問わず、次のようなクレンジングや整形処理が共通して行われます。
<br> の整理、空の段落タグの除去。これらは、「どの配信先であっても満たしておきたい最低限の条件」として扱われます。 本文を読みやすく保つことはもちろん、配信先側の解析・表示処理に支障が出ないよう、静かに足場を固める工程です。
次に、配信先ごとに定められた「使ってよい HTML」と「避けるべき HTML」の一覧に基づいて、本文をさらに調整します。 Yahoo!ニュース、dmenu ニュース、LINE NEWS、SmartNews など、それぞれの仕様書では、 許可されるタグや推奨される構造が微妙に異なります。
Cuerda-Feed-total は内部に「配信先ごとの許可タグリスト」を持ち、 これをもとに次のような処理を行います。
<strong> などのより単純な形に変換する。この過程で、配信元のページと完全に同じ見た目を再現することは目指さず、 「ニュースとして読めるテキスト構造に正しく落とし込む」ことを優先しています。
記事本文中の画像は、多くの配信先で重要な要素として扱われますが、その置き方やキャプションの表現には細かなルールがあります。 Cuerda-Feed-total では、次のような基本方針で画像を整えます。
<figure> として自動挿入する。<img> として扱う。alt)が空の場合、必要に応じてキャプションやタイトルから補完する。一部の配信先では、「画像の出典」と「キャプション」の扱いを分けて制御できる設定を設けています。 Cuerda-Feed-total は、管理画面での設定値に応じて、それぞれを出力するかどうかを切り替えられるように設計されています。
近年は、記事本文に YouTube などの動画埋め込みを含むケースが増えていますが、 配信先の中には iframe やスクリプトによる埋め込みを許可していない仕様も存在します。
Cuerda-Feed-total は、設定に応じて次のような振る舞いを選択できます。
こうした変換は、配信先ごとの仕様と、管理画面で有効化したオプションの両方を踏まえて行われます。 編集部としては、「この配信先ではどのように動画を見せたいか」を設定で選ぶことができ、 その背後の HTML 変換はプラグイン側に任せることができます。
本文中のハイパーリンクについても、配信先仕様に則った整形が行われます。
target や一部のクラス名など)を削除する。これにより、配信先側の表示仕様を損なうことなく、本文として必要な情報だけを残すことを目指しています。 読者にとっても、「本文中に何が書かれているか」という本質的な情報が保たれるよう配慮しています。
HTML としての正しさだけでなく、ニュース記事としての読みやすさも本文整形の重要なテーマです。 Cuerda-Feed-total は、次のような細かな補正を通じて、文章構造を整えます。
<ul> や <ol> として再構成する。これらの処理は、見た目だけを整えるものではなく、配信先側が本文を解析する際にも役立ちます。 構造化されたテキストは、レコメンドや要約といった後段の処理にとっても重要な土台となります。
Yahoo!ニュース、dmenu ニュース、LINE NEWS、SmartNews など、 各配信先はそれぞれ固有の注意点や推奨事項を持っています。 Cuerda-Feed-total では、これらを「本文変換のルールセット」として整理し、 配信先ごとに次のような微調整を行います。
このように、本質的なニュース本文は共通でありながら、 配信先ごとに求められる細かなニュアンスを保つための調整が重ねられています。
<content:encoded> は、表向きには単に「記事本文」を収める要素に見えますが、
その背後には、配信先仕様への適合、読者の読みやすさ、将来的な機械処理のしやすさといった複数の要請があります。
Cuerda-Feed-total は、元の投稿本文を尊重しながら、 各配信先が期待する形式に静かに寄り添うことで、 媒体側の編集意図をできるだけ損なうことなく、技術的な要件を満たすことを目指しています。 媒体は通常どおり記事を作成し、必要な場合にいくつかの設定を行うだけで、 その裏側にある本文整形の複雑さを意識することなく、安定した配信を続けることができます。
技術者向けの情報に戻る