RSS-канал не отображается как канал в браузерах - PullRequest
0 голосов
/ 23 февраля 2020
<?php
  include 'classes/db.connect.php';
  if (isset($_GET['user'])) {
    if($blog->blog_check($_GET['user'])) {
      $username = strip_tags($_GET['user']);
    } else {
      http_response_code(404); include('html/blogs/404.html'); die;
    }
  } else {
    http_response_code(404); include('html/blogs/404.html'); die;
  }
  $current_page = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' ? 'https' : 'http') . '://' . $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'];
  $url = $blog->get_blogger_branding($username, 'gravurl');
  $img = 'assets/blogs/images/'.$_GET['user'].'.png';
  file_put_contents($img, file_get_contents($url));
  $fbimg = 'https://afpayday.com/assets/blogs/images/'.$_GET['user'].'.png';

  header('Content-Type: application/rss+xml');
  echo '<?xml version="1.0" encoding="UTF-8" ?>
    <rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
      <channel>
        <title>'.ucfirst($blog->get_blogger_branding($username, "fname")).'\'s Payday Blog</title>
        <description>Learn about affiliate marketing and affiliate product reviews.</description>
        <link>https://afpayday.com/'.$username.'</link>
        <copyright>Copyright 2020 Affiliate Payday</copyright>
        <language>en-us</language>
        <managingEditor>admin@afpayday.com (Bruce Bates)</managingEditor>
        <pubDate>Sun, 23 Feb 2020 09:50:44 -0700</pubDate>
        <webMaster>admin@afpayday.com (Bruce Bates)</webMaster>
        <atom:link href="https://afpayday.com/'.$username.'/rss/" rel="self" type="application/rss+xml" />
        <image>
          <url>'.$fbimg.'</url>
          <title>'.ucfirst($blog->get_blogger_branding($username, "fname")).'\'s Payday Blog</title>
          <link>https://afpayday.com/'.$username.'</link>
          <description>'.ucfirst($blog->get_blogger_branding($username, "fname")).'\'s Photo</description>
          <width>144</width>
          <height>144</height>
        </image>
        <item>
          <title>Test</title>
          <guid>https://afpayday.com/'.$username.'</guid>
        </item>
      </channel>
    </rss>
  ';
?>

В соответствии с валидатором w3, мой канал правильно закодирован. https://validator.w3.org/feed/check.cgi?url=https%3A%2F%2Fafpayday.com%2Fviraladmin%2Frss%2F

Однако браузеры воспринимают это не так, как я ожидал.

Firefox пытается загрузить фид в виде файла.

Chrome, Opera и Edge показывают фид в виде кода, а не в виде дерева документов, что я обычно и делаю см. при просмотре RSS-канала.

Только Inte rnet Кажется, что Explorer обрабатывает его правильно и показывает параметр «Вы хотите подписаться на этот канал».

Фид здесь : https://afpayday.com/viraladmin/rss/

Я ожидаю, что в браузере он будет выглядеть как https://www.feedforall.com/sample.xml

Что я делаю не так?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...