Tag: WordPress RSS Feed

  • Case Study 16: Custom RSS Feed for Selective Chapter Publishing

    Client

    Wookedin2gaming

    Project Type

    Custom RSS/XML Feed Development for WordPress

    Destination Platform

    NovelUpdates

    Overview

    Wookedin2gaming approached us with a challenging RSS feed requirement for a manga and novel publishing website.

    The website used a purchased custom WordPress theme, and its content was not created through WordPress’s traditional “Add Post” or “Add Page” interface. Instead, the site used a specialized content structure for publishing manga and novel chapters.

    The key requirement was to create an RSS feed that would expose only publicly available/unlocked chapters, allowing NovelUpdates to automatically discover and publish eligible updates.

    The project therefore required more than a standard WordPress RSS feed. The feed needed to understand the site’s custom publishing structure and distinguish between content that was available to readers and chapters that were still locked.

    The Challenge

    The website had two primary types of chapters:

    • Unlocked chapters — available to readers without payment.
    • Locked/advanced chapters — initially restricted and available only after payment or until they became free through the site’s release mechanism.

    The client wanted the RSS feed to include chapters appearing in the site’s “NEWLY BREWED” section, while excluding chapters that remained locked.

    This was particularly important because NovelUpdates needed a feed containing only eligible chapters rather than relying on the website’s page source.

    The project also had to account for the site’s custom content structure rather than relying on standard WordPress post queries.

    The Solution

    We developed a custom RSS feed specifically around the website’s existing publishing workflow.

    The feed was configured to work with the site’s custom manga/novel content and expose the appropriate unlocked chapters for external consumption.

    A major part of the implementation involved handling publication dates correctly so that newly released chapters appeared in the expected order.

    The feed was subsequently adjusted to use the site’s GMT+8 timezone, matching the client’s server and staff publishing environment.

    Handling Same-Time Chapter Releases

    During testing, an important edge case was identified.

    Multiple chapters could be released at exactly the same date and time. When several items had identical timestamps, the feed could not reliably establish which chapter should appear first.

    For example, two consecutive chapters could initially have:

    • Chapter 111 — 10:00:00
    • Chapter 112 — 10:00:00

    The feed required a distinct chronological order.

    The solution was to use a one-second difference when multiple chapters were released at the same time:

    • Chapter 111 — 10:00:00
    • Chapter 112 — 10:00:01

    This helped maintain the intended descending order within the RSS feed.

    The client subsequently implemented different release timings for chapters, and reported that the feed worked better.

    Timezone and Publication Date Handling

    The project also uncovered a timezone-related issue involving chapters without a scheduled release date.

    The feed script was using GMT in certain situations, which could cause the publication time in the RSS feed to differ from the site’s actual publishing environment.

    The implementation was updated to properly account for the client’s GMT+8 timezone.

    Later investigation identified that chapters without a scheduled date were being processed using GMT time. The plugin/script was updated and a revised version was supplied to the client.

    Feed Reliability Improvements

    After the initial implementation, the project continued through several rounds of testing and troubleshooting.

    The client reported situations where:

    • Some newly released chapters did not appear at the expected position.
    • Multiple chapters released simultaneously were not consistently picked up by the destination platform.
    • The feed occasionally became unavailable.
    • The feed was loading significantly more historical releases than necessary.

    The feed was subsequently optimized to limit the number of loaded items.

    The client reported that the feed had been loading more than 2,000 releases, even though the destination service only needed the latest updates.

    We changed the feed configuration to return a maximum of 100 items, reducing unnecessary processing and keeping the feed focused on recent releases.

    Results

    The project evolved from a simple RSS requirement into a custom feed solution designed around a specialized publishing workflow.

    Key improvements included:

    • Custom RSS feed for a non-standard WordPress content structure
    • Filtering of eligible/unlocked chapters
    • Integration for automatic discovery by NovelUpdates
    • Correct handling of the client’s GMT+8 publishing timezone
    • Improved chronological ordering of chapters
    • Handling of chapters released at the same time
    • Troubleshooting of feed availability issues
    • Reduction of feed items from 2,000+ to 100
    • Ongoing maintenance and troubleshooting as new edge cases appeared

    The client continued using the feed and returned for additional adjustments as the publishing workflow evolved.

    Technical Takeaway

    This project demonstrates why a standard WordPress RSS feed is not always sufficient for websites using custom themes, custom post structures, or specialized publishing workflows.

    A reliable XML/RSS integration may require understanding:

    • How content is stored
    • How publication status is determined
    • How scheduled and unscheduled content is handled
    • How timezone conversion affects pubDate
    • How identical timestamps affect item ordering
    • How many records should be loaded
    • How the destination platform consumes and processes the feed

    For websites that need to send selected WordPress content to an external platform, a custom XML/RSS feed can provide much more precise control than a default WordPress feed.

    Destination

    The completed feed was designed for automatic content discovery by NovelUpdates, allowing eligible chapter updates to be supplied through a dedicated RSS feed.

    NovelUpdates

    WP2XML Services

    This case is an example of the type of custom XML/RSS work we handle at WP2XML.

    If your WordPress website uses a custom theme, custom content structure, membership system, scheduled publishing, or specific filtering rules, a standard RSS feed may not meet your requirements.

    We can develop a custom XML, RSS, or JSON feed based on your exact feed specification and integration requirements.

  • Case Study 7: Building and Maintaining Custom RSS Feeds for Yahoo, MSN and Multi-Site Content Syndication

    Introduction

    Content syndication can be deceptively complex. A WordPress website may have a perfectly valid RSS feed, yet that feed may not work correctly with a major publishing or syndication platform because of differences in formatting, links, dates, embedded media, content length, caching, or platform-specific requirements.

    This case study follows a long-term RSS feed development and maintenance project for a publisher operating multiple automotive and news websites. What began as a request to customize an existing RSS feed eventually developed into an ongoing technical partnership covering Yahoo and MSN-compatible feeds, multiple websites, media handling, feed filtering, troubleshooting, and WordPress maintenance.

    The project demonstrates why a successful syndication feed requires more than simply generating valid XML.

    The Initial Requirement

    The first conversation began in December 2022 when the client asked about creating an RSS feed for The Auto Wire, along with unique feeds for Yahoo and MSN.

    The website already had a standard WordPress RSS feed:

    https://theautowire.com/feed

    The first step was therefore not to create an entirely new system unnecessarily, but to understand the existing feed and determine what format the syndication partners required.

    The project became active again in August 2023 when the client supplied Yahoo’s technical guidelines for article ingestion and explained that many articles were not being pulled correctly from the site’s news section.

    A custom WordPress feed update was then commissioned.

    Adapting the Existing RSS Feed to Yahoo’s Requirements

    The initial task was relatively small: modify the existing RSS feed according to Yahoo’s technical specifications.

    The custom implementation was offered as an RSS/XML feed project, with the objective of updating the existing feed rather than replacing it unnecessarily.

    However, once Yahoo began ingesting the content, several practical issues appeared.

    The client reported that some articles were appearing as block text and that article links were missing. Importantly, the client preferred not to submit an entirely new feed because doing so could potentially introduce another approval delay.

    The solution was to modify the original feed so that it contained properly formatted content and links while retaining the existing feed URL.

    This was an important lesson from the project:

    When a syndication feed is already approved or being processed, improving the existing feed can sometimes be preferable to replacing it with a completely new feed.

    Correcting Publication Dates

    Another problem appeared with article timestamps.

    The client noticed that an article published on the website that day was appearing in Yahoo as though it had been published two days earlier.

    Investigation revealed that the feed was using the post-modified date rather than the original publication date.

    The feed was updated to use the post publish date, which aligned the syndication information more closely with when the article was actually published.

    For news websites, this distinction is particularly important because syndication platforms may use timestamps to determine article freshness and ordering.

    Handling Embedded Videos and Tweets

    The next challenge involved embedded media.

    The client noticed that embedded videos and tweets were appearing as raw URLs on Yahoo instead of being rendered as intended. The concern was that the site’s embedded content was being corrupted or transformed during RSS generation.

    The feed was subsequently updated to preserve the content being supplied to the syndication platform, and the client was asked to allow the syndication system to perform another fetch.

    This illustrates another important point about RSS development:

    A feed is not simply a text export of a webpage.

    HTML, JavaScript-generated embeds, video players, social posts, images and other media can behave very differently when consumed by an external platform.

    Expanding the Solution to a Second Website

    The successful work on The Auto Wire led to another project.

    In September 2023, the client requested a new feed for Backfire News, following the same Yahoo technical guidelines.

    A custom WordPress plugin/feed implementation was developed for the second site.

    The client later confirmed that the syndication feed had been published on Yahoo and that everything looked good, with only a small wording adjustment required in the “Read the full story” section.

    At this stage, the project had evolved from a one-off RSS customization into a reusable approach for multiple publishing websites.

    Troubleshooting Feed Links

    In November 2023, a major feed issue appeared.

    The client reported that links in the RSS feed were pointing to images rather than the actual articles. The problem affected syndicated content and required immediate investigation.

    After checking the feed, the links were confirmed to be functioning correctly again.

    This type of issue demonstrates why feed troubleshooting should include testing the actual generated XML and destination URLs, rather than relying solely on how the WordPress page appears in a browser.

    Adding Newsletter and Social Media Information

    In February 2024, the client requested another enhancement.

    The RSS feeds needed a standard footer containing newsletter and social media information. The requirement applied to both The Auto Wire and Backfire News, with different wording and links for each website.

    The implementation was extended so social links could be added to the bottom of syndicated content, alongside the existing “Read the full story” information.

    The same approach was subsequently applied to a new website, Modern Car Collector, which also required a feed based on updated Yahoo article-ingestion guidelines.

    Supporting a Third Website

    Modern Car Collector became the third site in the feed ecosystem.

    After the feed was delivered, the client submitted it to the syndication partner for review. A temporary site-access issue was also reported during the process, and the website was checked from another environment.

    The client then requested social links to be added to the new feed, including Facebook and Twitter. These were added shortly afterward.

    The same type of customization was then applied to The Auto Wire’s feed with its own newsletter and social wording.

    Diagnosing Delayed Feed Ingestion

    One of the more technically interesting problems appeared in February 2024.

    The client reported that posts from Modern Car Collector and Backfire News were not appearing in the RSS feeds immediately after publication. The feeds were also being checked using evaluation tools associated with the syndication process.

    Initially, the issue was investigated from the feed and WordPress side. Time-zone settings were checked and confirmed to be correct.

    Further investigation led to caching being considered as a potential source of delay. The client was asked to provide hosting access or contact the hosting provider to disable caching for the feed URL. Changes were then applied to the feeds.

    This was a valuable distinction:

    When a WordPress post is published but an external feed still shows old content, the problem may not be the feed-generation code itself.

    Caching at the WordPress, plugin, server, CDN, or hosting level can cause an otherwise correctly generated feed to appear stale.

    MSN Feed Development and YouTube Content

    Later in 2024, the project expanded beyond article RSS feeds.

    The client wanted a feed for The Auto Wire’s YouTube videos that could work with MSN’s media requirements. The client supplied detailed Media RSS specifications describing how images, videos and other media should be represented using elements such as media:content and media:group.
    This introduced a different technical problem from traditional article RSS generation.

    The feed now needed to deal with:

    • YouTube content
    • Video metadata
    • Media RSS elements
    • External API access
    • Syndication requirements
    • Content validation

    Solving YouTube API Quota Problems

    Soon after implementation, a video failed to populate in the feed.

    Investigation identified the cause as YouTube API quota limits being exceeded. A new API key was created and monitoring was put in place.

    This was an important reminder that integrations with external APIs introduce dependencies outside the WordPress code itself.

    Even when the feed-generation logic is functioning correctly, an API quota, authentication problem, rate limit or external service failure can prevent new content from entering the feed.

    Meeting Minimum Content-Length Requirements

    Another MSN-related issue appeared when the syndication system rejected content because articles needed to contain at least 450 characters.

    The plugin was updated to handle the requirement, and subsequent testing showed that feed items contained substantially more content.

    However, the client later noticed that only part of the description appeared in the syndicated result.

    The feed was adjusted so the full description could be provided, and subsequent MSN examples showed the video content being displayed successfully.

    This part of the project demonstrates the iterative nature of syndication development:

    1. Generate the feed.
    2. Validate the XML.
    3. Submit it to the syndication platform.
    4. Observe how the platform interprets it.
    5. Identify validation or rendering issues.
    6. Adjust the feed.
    7. Test again.

    Creating a Separate Feed for MSN

    In January 2025, the client reported that The Auto Wire’s existing feed worked well with Yahoo but had issues with MSN.

    Instead of changing the existing Yahoo feed and potentially affecting its behavior, the client asked for a duplicate feed specifically for MSN.

    During investigation, an image-related problem was identified in one of the posts. The image filename needed correction, but the WordPress post could not be saved because of a permissions/security restriction.

    A separate feed was subsequently commissioned.

    This approach provided an important architectural advantage:

    One website can have different feeds for different syndication partners.

    Instead of forcing Yahoo and MSN to consume exactly the same output, separate feeds can be tailored to the technical requirements of each platform.

    Adding Per-Post Feed Filtering

    The client later requested more control over which articles appeared in the new MSN feed.

    The requirement was specific:

    • Certain posts should be excluded from the new feed.
    • Those same posts should remain available in the original RSS feed.
    • The site editor needed an easy way to control this from WordPress.

    The solution was to add a checkbox option to individual WordPress posts.

    This transformed the feed from a purely automatic system into a system with editorial control.

    Instead of manually editing XML or deleting posts, the publisher could decide which content belonged in the specialized feed while leaving the main RSS feed untouched.

    Handling YouTube Embeds in MSN Feeds

    Another issue involved YouTube videos appearing as raw URLs in syndicated content.

    The client reported that MSN’s moderation tool was detecting the video URLs rather than receiving the expected embedded video representation.

    Investigation showed that the webpage’s iframe was being generated after page load using JavaScript, meaning the iframe was not necessarily present in the raw content available to the RSS generator.

    A proposed solution was to detect YouTube URLs and generate iframe markup directly in the RSS feed.

    The client temporarily paused that change while clarifying the syndication partner’s requirements.

    This highlighted an important technical concept:

    What a browser renders is not necessarily what an RSS parser receives.

    A JavaScript-generated embed may look perfect on the website while appearing only as a plain URL to an external feed consumer.

    WordPress and Server-Level Troubleshooting

    The relationship also expanded beyond RSS development.

    In March 2025, the client encountered a PHP warning related to the RSS plugin and subsequently received a 500 Internal Server Error.

    The issue appeared to involve the hosting/server environment rather than simply the feed output.

    The client provided hosting access for investigation. By the time access was obtained, the website was functioning again, and the issue was considered consistent with a temporary server update/glitch.

    This is another common reality of long-term WordPress projects: once a custom plugin becomes critical to a publishing workflow, maintenance may include troubleshooting the interaction between WordPress, PHP, plugins, hosting and server updates.

    Further Feed Customization

    In August 2025, the client returned with another request affecting all three RSS feeds.

    This time, Yahoo needed the “Read the full story on…” text removed. A single customization was applied across the three feeds.

    By this point, the project had developed into an ongoing maintenance relationship rather than a one-time feed-generation job.

    What Made This Project Challenging?

    The technical challenge was not simply generating XML.

    The project involved multiple layers:

    1. WordPress content extraction

    The system had to correctly identify posts, publication dates, descriptions, links and media from WordPress.

    2. Custom XML/RSS formatting

    The standard WordPress RSS structure was insufficient for the requirements of external syndication platforms.

    3. Platform-specific requirements

    Yahoo and MSN had different expectations regarding article content, media, formatting and validation.

    4. External APIs

    The YouTube integration introduced API quotas and external-service dependencies.

    5. Media handling

    Images, videos, iframes, social embeds and raw URLs required special consideration.

    6. Caching

    Feed caching could cause delays between publication and syndication.

    7. Editorial control

    The publisher eventually needed the ability to exclude individual articles from one feed while keeping them in another.

    8. Hosting and server issues

    Some problems occurred outside the feed-generation logic and required investigation at the WordPress or hosting level.

    The Result

    Over the course of the project, the work expanded from one RSS feed to a multi-site syndication system supporting several publishing properties.

    The work included:

    • Custom Yahoo-compatible RSS feeds
    • MSN-specific RSS feed development
    • Multiple website feeds
    • Publication-date corrections
    • Formatted article content
    • Article links
    • Newsletter and social media footers
    • Media RSS requirements
    • YouTube video feed integration
    • API quota troubleshooting
    • Content-length validation
    • Full-description handling
    • Separate feeds for different syndication partners
    • Per-post feed exclusion controls
    • Video/embed troubleshooting
    • Feed caching investigation
    • WordPress/PHP troubleshooting
    • Ongoing feed maintenance

    The client repeatedly returned with new requirements and additional websites, eventually describing the work as part of a broader need for WordPress assistance across the sites.

    Key Lessons from the Project

    A valid RSS feed is not necessarily a syndication-ready RSS feed.

    XML can be technically valid while still failing the requirements of a specific publishing platform.

    Preserve existing feeds when appropriate.

    If a feed is already being used or approved by a syndication partner, modifying the existing feed can sometimes be safer than replacing it.

    Always test real-world ingestion.

    A feed can look correct in an XML viewer while the receiving platform interprets its content differently.

    Publication dates matter.

    Using the wrong WordPress date field can make newly published articles appear old to a syndication platform.

    External dependencies need monitoring.

    YouTube API quotas demonstrated that feed reliability can depend on services outside WordPress.

    Separate feeds can solve conflicting requirements.

    Yahoo and MSN did not necessarily need identical output. Dedicated feeds allowed the same website to provide different content structures for different partners.

    Editorial controls can make automated feeds more practical.

    A simple per-post checkbox gave the publisher control without requiring manual XML editing.

    Feed maintenance is an ongoing process.

    Syndication platforms change requirements, websites change, plugins change, hosting environments change, and content formats evolve. A feed that works today may require adjustments later.

    Conclusion

    This project began with a simple request to customize an existing WordPress RSS feed but evolved into a multi-year feed development and maintenance relationship.

    The biggest takeaway is that RSS feed development for professional content syndication is an integration problem, not merely an XML-generation problem.

    A reliable solution must consider WordPress data, XML structure, publication dates, links, media, APIs, caching, validation tools, syndication requirements and the way external platforms actually consume the feed.

    For publishers relying on Yahoo, MSN or other content-distribution platforms, having a properly engineered and maintainable feed can be just as important as having a well-functioning website.