{"id":465,"date":"2026-01-07T17:32:43","date_gmt":"2026-01-07T17:32:43","guid":{"rendered":"https:\/\/7zeros.com\/?page_id=465"},"modified":"2026-01-09T14:18:24","modified_gmt":"2026-01-09T14:18:24","slug":"fx-news-ticker","status":"publish","type":"page","link":"https:\/\/7zeros.com\/?page_id=465","title":{"rendered":"FX News Ticker"},"content":{"rendered":"\n<!-- Forex News Feed -->\n<div id=\"forex-news-feed\" style=\"\n    border: 1px solid #ccc;\n    padding: 10px;\n    background:#f9f9f9;\n    font-family: Arial, sans-serif;\n    font-size: 14px;\n\"><\/div>\n\n<script>\n(async function() {\n    const FLASK_FEED_URL = \"https:\/\/flask.7zeros.com\/news\";\n\n    async function loadForexNews() {\n        try {\n            const response = await fetch(FLASK_FEED_URL, { cache: \"no-store\" });\n            const data = await response.json();\n            const feed = document.getElementById(\"forex-news-feed\");\n\n            \/\/ Group stories by date\n            const grouped = {};\n            data.forEach(item => {\n                const dateObj = new Date(item.time);\n                \/\/ Format: \"Thursday, Jan 8, 2026\"\n                const dateStr = dateObj.toLocaleDateString(undefined, { weekday: 'long', year: 'numeric', month: 'short', day: 'numeric' });\n                if (!grouped[dateStr]) grouped[dateStr] = [];\n                grouped[dateStr].push(item);\n            });\n\n            \/\/ Sort dates descending\n            const sortedDates = Object.keys(grouped).sort((a, b) => new Date(b) - new Date(a));\n\n            \/\/ Build HTML\n            feed.innerHTML = sortedDates.map(date => {\n                const storiesHtml = grouped[date].map(item => \n                    `<div style=\"margin-bottom:6px;\">\n                        <a href=\"${item.url}\" target=\"_blank\" style=\"\n                            color: #1a73e8; \n                            text-decoration: none; \n                            font-weight: 500;\n                        \">\n                            ${item.title}\n                        <\/a>\n                        <span style=\"color:#555; font-size:12px;\"> (${item.source})<\/span>\n                    <\/div>`\n                ).join(\"\");\n\n                return `<h4 style=\"margin-bottom:4px; margin-top:12px; border-bottom:1px solid #ccc; padding-bottom:2px;\">${date}<\/h4>${storiesHtml}`;\n            }).join(\"\");\n\n        } catch (err) {\n            console.error(\"Error loading Forex news:\", err);\n            feed.innerHTML = \"Unable to load news feed.\";\n        }\n    }\n\n    \/\/ Initial load\n    loadForexNews();\n\n    \/\/ Refresh every 60 seconds\n    setInterval(loadForexNews, 60000);\n\n})();\n<\/script>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-465","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/pages\/465","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/7zeros.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=465"}],"version-history":[{"count":9,"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/pages\/465\/revisions"}],"predecessor-version":[{"id":479,"href":"https:\/\/7zeros.com\/index.php?rest_route=\/wp\/v2\/pages\/465\/revisions\/479"}],"wp:attachment":[{"href":"https:\/\/7zeros.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=465"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}