5431299498
TaxBaik CI/CD / build-and-deploy (push) Successful in 8m35s
Changes: - Rss.cshtml: Fixed Razor/XML syntax by using StringBuilder - Feed.cshtml: Alias for /feed.xml - Both pages use RssModel (BlogService) - robots.txt: Added feed references Fix: - Removed @page duplicate directive - Used StringBuilder for proper XML generation - Avoided Razor XML tag nesting issues - Both /rss.xml and /feed.xml now available URLs: ✓ https://www.taxbaik.com/taxbaik/rss.xml ✓ https://www.taxbaik.com/taxbaik/feed.xml Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
36 lines
1.9 KiB
Plaintext
36 lines
1.9 KiB
Plaintext
@page "/feed.xml"
|
|
@model TaxBaik.Web.Pages.RssModel
|
|
@{
|
|
Response.ContentType = "application/rss+xml; charset=utf-8";
|
|
}@{
|
|
var rssContent = new System.Text.StringBuilder();
|
|
rssContent.AppendLine("<?xml version=\"1.0\" encoding=\"utf-8\"?>");
|
|
rssContent.AppendLine("<rss version=\"2.0\" xmlns:content=\"http://purl.org/rss/1.0/modules/content/\">");
|
|
rssContent.AppendLine(" <channel>");
|
|
rssContent.AppendLine(" <title>백원숙 세무회계 - 블로그</title>");
|
|
rssContent.AppendLine(" <link>https://www.taxbaik.com/taxbaik</link>");
|
|
rssContent.AppendLine(" <description>세무사 백원숙의 세금, 부동산, 가족자산 전문 블로그</description>");
|
|
rssContent.AppendLine(" <language>ko-kr</language>");
|
|
rssContent.AppendLine($" <lastBuildDate>{Model.LastBuildDate}</lastBuildDate>");
|
|
rssContent.AppendLine(" <ttl>60</ttl>");
|
|
|
|
foreach (var post in Model.Posts)
|
|
{
|
|
rssContent.AppendLine(" <item>");
|
|
rssContent.AppendLine($" <title>{System.Net.WebUtility.HtmlEncode(post.Title)}</title>");
|
|
rssContent.AppendLine($" <link>https://www.taxbaik.com/taxbaik/blog/{post.Slug}</link>");
|
|
rssContent.AppendLine($" <guid isPermaLink=\"true\">https://www.taxbaik.com/taxbaik/blog/{post.Slug}</guid>");
|
|
rssContent.AppendLine($" <pubDate>{post.PublishedAt?.ToString("R")}</pubDate>");
|
|
var desc = post.Content?.Substring(0, Math.Min(200, post.Content?.Length ?? 0)) ?? "";
|
|
rssContent.AppendLine($" <description>{System.Net.WebUtility.HtmlEncode(desc)}</description>");
|
|
if (!string.IsNullOrEmpty(post.Content))
|
|
{
|
|
rssContent.AppendLine($" <content:encoded><![CDATA[{post.Content}]]></content:encoded>");
|
|
}
|
|
rssContent.AppendLine(" </item>");
|
|
}
|
|
|
|
rssContent.AppendLine(" </channel>");
|
|
rssContent.AppendLine("</rss>");
|
|
}@rssContent.ToString()
|