It looks like this is a web page, not a feed. I looked for a feed associated with this page, but couldn't find one. Please enter the address of your feed to validate.

Source: https://www.lfclive.net/feed.php

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4.  <meta charset="UTF-8" />
  5.  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  6.  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.  <meta name="theme-color" content="#f40000">
  8.  <link href="https://www.lfclive.net/feed.php" rel="alternate" type="application/rss+xml" title="LFC Live.net Feed" />
  9.  <meta name="Keywords" content="Liverpool FC, Liverpool, Liverpool Football Club, News, Transfers, Transfer News, newsnow, news now, lfcpost, lfcwire, RSS, Feeds, Aggregator" />
  10.  <meta name="Description" content="Liverpool FC news - Updated every minute of every day." />
  11.  <title>LFC Live - Liverpool FC News</title>
  12.  
  13.  <link href="/main.css" rel="stylesheet" type="text/css" />
  14.  <link href="/new.css" rel="stylesheet" type="text/css" />
  15.  
  16.  <!-- GA (unchanged) -->
  17.  <script async src="https://www.googletagmanager.com/gtag/js?id=G-25R9LMNJFX" type="97ce2aa96117b89e321b42a1-text/javascript"></script>
  18.  <script type="97ce2aa96117b89e321b42a1-text/javascript">
  19.    window.dataLayer = window.dataLayer || [];
  20.    function gtag(){dataLayer.push(arguments);}
  21.    gtag('js', new Date());
  22.    gtag('config', 'G-25R9LMNJFX');
  23.  </script>
  24. </head>
  25.  
  26. <body>
  27. <div class="container">
  28.  
  29.  <header class="site-header">
  30.    <div class="logo-area">
  31.      <a href="/"><img src="/logo.gif" alt="LFC Live Logo" class="logo"/></a>
  32.    </div>
  33.    <div class="tag-cloud-area">
  34.      <div class="tag-cloud-title">Today's Top Words</div>
  35.      <div id="tag-cloud-container"></div>
  36.    </div>
  37.  </header>
  38.  
  39.  <div class="intro-banner">
  40.    Welcome to LFCLive.net. Liverpool FC transfer news, player updates, teams news and transfer rumours from over 60 sources - Updated every minute of every day since 2007.
  41.    <!-- Ad placeholder (filled only for non-members) -->
  42.    <div id="ad-rectangle"></div>
  43.  </div>
  44.  
  45.  <div class="content-wrapper">
  46.  
  47.    <main class="main-content">
  48.      <nav class="news-nav">
  49.        <a href="#" id="nav-refresh"><img src="/images/refresh.gif" alt="refresh" /></a>
  50.        <a href="#" id="nav-latest"><span style="color:#FFF000;">Latest News</span></a>
  51.        <a href="#" id="nav-news"><span style="color:#FFFFFF;">Just News</span></a>
  52.        <a href="#" id="nav-blogs"><span style="color:#FFFFFF;">Opinion</span></a>
  53.        <a href="#" id="nav-clicked"><span style="color:#FFFFFF;">Most Clicked</span></a>
  54.      </nav>
  55.  
  56.      <div id="headlines">
  57.        <div id="loading" style="text-align:center; padding: 50px;">
  58.          <h2>Loading Latest News...</h2>
  59.        </div>
  60.      </div>
  61.    </main>
  62.  
  63.    <aside class="sidebar">
  64.      <div class="widget">
  65.        <strong>LFC Live.net</strong>
  66.        <hr>
  67.  
  68.        <a href="/register"><b>OFFER - LFCLive Ad-free only £6 for one year</b></a><br><br>
  69.        <a href="/login">Already signed up? Click here to login</a>
  70.        <br><br>
  71.    
  72.        <a href="http://www.contrast.org/hillsborough/boycott-the-sun.shtm"><img src="/boycott.gif" alt="Dont Buy The Sun" style="border:0; margin-top: 10px;" /></a>
  73.      </div>
  74.  
  75.      <!-- Banners container (filled only for non-members) -->
  76.      <div class="widget" id="sidebar-banners"></div>
  77.    </aside>
  78.  
  79.  </div>
  80.  
  81.  <footer class="site-footer">
  82.    <span id="timetext">All times are local.</span>
  83.    <hr>
  84.    <div class="footer-links">
  85.      <a href="/login">Login</a> -
  86.      <a href="/register">Register</a> -
  87.      <a href="/profile">Profile</a> -
  88.      <a href="/logout">Logout</a> -
  89.      <a href="https://icdb.tv">Internet Commentator Database</a>
  90.      <a href="https://docs.google.com/forms/d/e/1FAIpQLSfZ-qaXx39Ryw80MYHNYM4KQuui2uHVMELsf4XxrwXgwM4LOA/viewform?c=0&w=1">Contact</a>
  91.    </div>
  92.  
  93.    <br>Casino sites can be hard to find. For New Zealand <a href="https://www.onlinecasinosrealmoney.co.nz">onlinecasinosrealmoney.co.nz</a> is a good source and for South Africa <a href="https://onlinecasino-southafrica.co.za">onlinecasino-southafrica.co.za</a> is.
  94.    <br>
  95.    <div id="validators"></div>
  96.    <br>
  97.    <span class="copyright">&copy;2025 LFC Live. |
  98.      <a href="/privacy-policy.html">Privacy Policy</a>
  99.    </span>
  100.  </footer>
  101.  
  102. </div>
  103.  
  104. <script src="/main2025.js" type="97ce2aa96117b89e321b42a1-text/javascript"></script>
  105.  
  106. <!-- Ads/banners are injected conditionally below (cookie only) -->
  107. <script type="97ce2aa96117b89e321b42a1-module">
  108.  import { links, banners } from '/data_min.js';
  109.  
  110.  const shuffle = (arr) => {
  111.    const a = arr.slice();
  112.    for (let i = a.length - 1; i > 0; i--) {
  113.      const j = Math.floor(Math.random() * (i + 1));
  114.      [a[i], a[j]] = [a[j], a[i]];
  115.    }
  116.    return a;
  117.  };
  118.  
  119.  const renderFooterLinks = () => {
  120.    const footerLinks = document.querySelector('.site-footer .footer-links');
  121.    if (!footerLinks || !Array.isArray(links)) return;
  122.  
  123.    const container = document.createElement('div');
  124.    container.className = 'external-links';
  125.    container.style.marginTop = '8px';
  126.  
  127.    const title = document.createElement('div');
  128.    title.textContent = 'More links';
  129.    title.style.fontWeight = 'bold';
  130.    title.style.margin = '6px 0';
  131.  
  132.    const ul = document.createElement('ul');
  133.    ul.className = 'external-links-list';
  134.    ul.style.listStyle = 'none';
  135.    ul.style.margin = '0';
  136.    ul.style.padding = '0';
  137.    ul.style.display = 'flex';
  138.    ul.style.flexWrap = 'wrap';
  139.    ul.style.gap = '8px 14px';
  140.  
  141.    shuffle(links).forEach(({ link, anchor }) => {
  142.      const cleanHref = (link || '').trim();
  143.      if (!cleanHref) return;
  144.      const li = document.createElement('li');
  145.      const a = document.createElement('a');
  146.      a.href = cleanHref;
  147.      a.textContent = anchor || cleanHref;
  148.      a.target = '_blank';
  149.      a.rel = 'sponsored noopener noreferrer';
  150.      li.appendChild(a);
  151.      ul.appendChild(li);
  152.    });
  153.  
  154.    container.appendChild(title);
  155.    container.appendChild(ul);
  156.    footerLinks.insertAdjacentElement('afterend', container);
  157.  };
  158.  
  159.  const renderSidebarBanners = () => {
  160.    const host = document.getElementById('sidebar-banners');
  161.    if (!host || !Array.isArray(banners)) return;
  162.  
  163.    shuffle(banners).forEach(({ link, image, anchor }) => {
  164.      const a = document.createElement('a');
  165.      a.href = (link || '').trim();
  166.      a.target = '_blank';
  167.      a.rel = 'sponsored noopener noreferrer';
  168.      a.style.display = 'block';
  169.      a.style.marginBottom = '12px';
  170.  
  171.      const img = document.createElement('img');
  172.      img.src = image;
  173.      img.alt = anchor || 'Sponsor';
  174.      img.loading = 'lazy';
  175.      img.decoding = 'async';
  176.      img.style.maxHeight = '130px';
  177.      img.style.maxWidth  = '100%';
  178.      img.style.width     = 'auto';
  179.      img.style.height    = 'auto';
  180.      img.style.objectFit = 'contain';
  181.  
  182.      a.appendChild(img);
  183.      host.appendChild(a);
  184.    });
  185.  };
  186.  
  187.  // Cookie-only member check
  188.  const isActiveMember = () => {
  189.    // NOTE: member cookie is NOT HttpOnly (front-end must read it)
  190.    // We set it from the API functions on login/renew/success.
  191.    return document.cookie.split('; ').some(c => c.trim().toLowerCase().startsWith('member=1'));
  192.  };
  193.  
  194.  function renderIntroRectangleAd() {
  195.    const host = document.getElementById('ad-rectangle');
  196.    if (!host) return;
  197.    host.innerHTML = `
  198.      <ins class="adsbygoogle"
  199.           style="display:block"
  200.           data-ad-client="ca-pub-1295779671695509"
  201.           data-ad-slot="2288575354"
  202.           data-ad-format="rectangle"></ins>`;
  203.    (window.adsbygoogle = window.adsbygoogle || []).push({});
  204.  }
  205.  
  206.  async function boot() {
  207.    renderFooterLinks();
  208.  
  209.    const member = isActiveMember();
  210.  
  211.    if (!member) {
  212.      // Load AdSense dynamically only for non-members
  213.      await new Promise((resolve) => {
  214.        const s = document.createElement('script');
  215.        s.async = true;
  216.        s.src = '//pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-1295779671695509';
  217.        s.crossOrigin = 'anonymous';
  218.        s.onload = resolve;
  219.        s.onerror = resolve;
  220.        document.head.appendChild(s);
  221.      });
  222.  
  223.      renderIntroRectangleAd();
  224.      renderSidebarBanners();
  225.    } else {
  226.      // Member: no ads/banners
  227.      const sb = document.getElementById('sidebar-banners');
  228.      if (sb) sb.remove();
  229.    }
  230.  }
  231.  
  232.  (document.readyState === 'loading')
  233.    ? document.addEventListener('DOMContentLoaded', boot)
  234.    : boot();
  235. </script>
  236. <script src="/cdn-cgi/scripts/7d0fa10a/cloudflare-static/rocket-loader.min.js" data-cf-settings="97ce2aa96117b89e321b42a1-|49" defer></script><script defer src="https://static.cloudflareinsights.com/beacon.min.js/vcd15cbe7772f49c399c6a5babf22c1241717689176015" integrity="sha512-ZpsOmlRQV6y907TI0dKBHq9Md29nnaEIPlkf84rnaERnq6zvWvPUqr2ft8M1aS28oN72PdrCzSjY4U6VaAw1EQ==" data-cf-beacon='{"version":"2024.11.0","token":"3c8c26499d7f45709c609e4c1bcae96f","r":1,"server_timing":{"name":{"cfCacheStatus":true,"cfEdge":true,"cfExtPri":true,"cfL4":true,"cfOrigin":true,"cfSpeedBrain":true},"location_startswith":null}}' crossorigin="anonymous"></script>
  237. </body>
  238. </html>
  239.  
Copyright © 2002-9 Sam Ruby, Mark Pilgrim, Joseph Walton, and Phil Ringnalda