| 开发者 |
kostaskarapapas
koskar22 |
|---|---|
| 更新时间 | 2026年6月22日 12:50 |
| PHP版本: | 7.4 及以上 |
| WordPress版本: | 7.0 |
| 版权: | GPLv2 or later |
| 版权网址: | 版权信息 |
@graph with Organization, WebPage, author Person, geo, about / mentions from entity tagsstory-cluster.css, newsai-content-blocks.css), and no empty DOM nodes in published markup.
Big update 2.1 — Chief Insights, AI Daily Brief, and indexing diagnostics
Newsroom OS 2.1 adds Chief Insights (desk-wide KPIs, channel tables, top categories/articles), AI Daily Brief (Morning/Evening), and Print to PDF. Clear Last attempted vs Last successful diagnostics for Google Indexing API and IndexNow.
Preview Pro on newsos.io.
Big update 2.0 — Google Search Console meets your newsroom
Newsroom OS 2.0 connects your editorial desk to real Google traffic. Writers get Focus (article quality) and Discover readiness (distribution checklist) in the editor — separate from Search Console clicks (Discover, Google News, and web search). Chiefs see who publishes well and who earns traffic, in one dashboard.
Pro license: newsos.io — one key per site, same plugin you already install. Live Pro demo available on newsos.io.
Classic Editor & Gutenberg (Block Editor)
Newsroom OS is built for real newsroom setups — including sites that still use Classic Editor, sites on full Gutenberg, and hybrid installs (block editor with the classic Tags metabox).
Gutenberg / Block Editor
wp_set_script_translations (el, en, de, es)#content hooks — no block editor APIs on classic screens)wp.data.subscribe, getEditedPostContent) run only when block-editor-page is present — prevents Classic Editor blocks.min.js stack overflows on large siteswebmasters.readonly; separate token from the Indexing API.wp_newsai_gsc_performance).edit_others_posts).@graph with Organization, WebPage, author Person, geo, about / mentions.articleBody modes (omit, full, first N words).Person, performance analytics (Pro).languages/README.txt for gettext catalogs.
/wp-content/plugins/, or install via Plugins → Add New → Upload.Yes — for publishers and newsrooms, not generic blogs. The free Discover Score checklist scores hero image (1200px+, 16:9), headline quality, topic/tags, OG image, and timeliness before publish. Trend Radar pulls Google Trends and News for your target country. Pro adds real Discover clicks from Search Console sync (separate metric from the editorial score).
Partially — built for editorial teams. Pro connects via service account (webmasters.readonly), syncs Discover, Google News, and web search clicks into WordPress, and shows them on Author Performance, Chief Insights, My Inbox, and the Posts list. It does not replace the Search Console UI — it surfaces GSC data where writers and chiefs already work.
Yes. NewsArticle and LiveBlogPosting JSON-LD with Organization, WebPage, author Person, geo, and entity about / mentions from your tags (Wikidata enrichment). Story timelines output CollectionPage schema. Works alongside Yoast SEO, Rank Math, AIOSEO, and SEOPress — Newsroom OS adds newsroom-specific graph enrichment, not duplicate meta tags.
Pro (BYOK): OpenAI, Google Gemini, or Groq with your own API key — titles, optimize, trend keywords, meta description (apply to Yoast/Rank Math), tag match, and content brief from trends. Free tier: Publication Readiness, Smart Tags, tasks, Discover Score, schema, and Trend Radar without AI.
Tasks & assignments (deadlines, keywords, briefs, reference links), Dashboard KPIs and kanban-style desk view, My Inbox for writers, task threads + email alerts (Pro), Breaking news mode with live updates, GSC traffic-drop alerts (Pro), and weekly desk report email (Pro). Chiefs use Chief Insights; writers see only their assignments.
The Discover Score checklist runs before publish: featured image size and aspect ratio, headline length and clickbait cues, topic/tags, OG image, author signals, and internal links. Trend Radar surfaces rising topics from Google Trends and News. Pro adds measured Discover clicks from Search Console so chiefs can coach writers on outcomes, not just checklists.
It means aligning articles with Discover distribution signals — strong hero images, clear non-clickbait headlines, timely topics, entity-rich tags, and valid publisher schema — while tracking whether those choices correlate with real Discover traffic after publish (Pro GSC sync).
No plugin can guarantee Discover placement. Newsroom OS gives editors a repeatable pre-publish workflow (Discover Score + Focus), breaking-news LiveBlog tools, and (Pro) Search Console Discover metrics per post and author so you can iterate on what actually earns clicks.
Yes. Trend Radar includes Google News headlines for your region. Pro GSC sync stores the Google News channel separately from Discover and web search — visible on Author Performance, Chief Insights, My Inbox, and the Posts list.
Google Search Console integration (Pro): sync Discover, Google News, and web search metrics into WordPress; show real clicks on Author Performance, My Inbox, and the Posts list. Plus a redesigned Author Performance UI (tabs, coaching, search/sort, 7d/30d/90d). Requires a one-time database table on upgrade (wp_newsai_gsc_performance).
No. You still use Google Search Console for verification and property management. Newsroom OS reads Search Analytics via API and surfaces the numbers where your editors already work — next to Focus and Discover readiness scores.
Discover Score is an editorial readiness checklist in the post editor (image, headline, topic, OG, etc.) — it does not read Search Console. GSC Discover clicks are real measured traffic from Google after you enable sync. Both appear in Author Performance so chiefs can coach writers on quality and outcomes.
Pro license active → Settings → PRO → Indexing → enable GSC → paste a Google Cloud service account JSON with Search Console access to your property → enter the property exactly as in GSC (sc-domain:example.com or https://www.example.com/) → Test → Sync now. Daily sync runs automatically when enabled.
Yes — both, out of the box. Publication Readiness, Discover Score, Trend Radar, Smart Tags, Breaking news mode, and live H3 updates work in Gutenberg and Classic Editor. Pro duplicate-tag guard uses REST in Gutenberg and AJAX in Classic.
Yes. Tested up to WordPress 7.0 on wp-admin, Gutenberg and Classic post editor, and REST/AJAX flows. Minimum PHP 7.4; PHP 8.1+ recommended for production newsrooms.
Yes. Compatible with standard themes (Astra, GeneratePress, Newspaper, NewsMag, etc.). Frontend output is limited to optional schema, timeline blocks, and breaking badges.
No. Newsroom OS reads your SEO meta and adds editorial workflow, smart tags, scores, and JSON-LD enrichment. Yoast/Rank Math keep meta tags and sitemaps.
No. External requests use strict timeouts; dashboards use transients; editor JS is event-driven (no polling on the post screen). GSC sync runs on a schedule or manual action — not on every page view.
In-browser ranking against your taxonomy (title, lead, body weighted). HIGH/MEDIUM/LOW confidence badges. Pro adds duplicate-tag guard and AI Tag Match (BYOK).
https://newsos.io/ — one license per site, 30-day money-back guarantee.
Yes — visit newsos.io and open the live demo section to preview Pro dashboards and workflows in action.
Your site keeps working. Articles, tags, schema, tasks, and saved scores remain. GSC sync and Pro dashboards stop updating until you renew.
OpenAI, Google Gemini (free tier at aistudio.google.com), and Groq (free tier at console.groq.com). Your key never leaves your server.
Yes — geo-aware prompts for 40+ locales (Greece → Greek, Brazil → Portuguese, etc.).
No. Tasks, scores, GSC rows, and AI cache live in your database. Pro licensing validates once per day with newsos.io.
ListItem entries with nested NewsArticle (headline, url, datePublished, author Person with name/url, featured image) for Google Discover / Rich Results compatibility.about entity from term (auto Place/Thing + Wikidata sameAs), BreadcrumbList, and enriched ItemList on taxonomy archives.ItemList @id on posts page; breadcrumb on blog index.#organization lite) for transparency / E-E-A-T.nros-publisher-logo size (600×60); JSON-LD caps display height at 60px (Google guideline). Settings hint updated.knowsAbout on single-post pointer Person; full E-E-A-T remains on author archive only.articleBody cleanup — shortcode strip, heading/paragraph structure preserved, HTML entities decoded in headlines, literal nn/rn junk repaired.sameAs cascade — tags and mentions resolve Wikidata URLs via confidence gate, city map, soft match (≥50), or manual term URL.NROS_SCHEMA_BUILD in archive cache keys).knowsAbout), SchemaWikidataConfidenceTest.articleBody still shows old nn artifacts.keyup on all textareas/contenteditable; SEO meta is read from Gutenberg store or targeted Yoast/Rank Math fields only.publishingPrinciples, correctionsPolicy, ownershipFundingInfo, and actionableFeedbackPolicy on homepage Organization schema. Generate page with AI (BYOK) creates a draft policy page and fills the URL.script.js and auto-fetches on the Alerts tab (was stuck on “Tap TRENDS”).<details> wrapper so Trends/News panels render in the sidebar.sameAs only when the label match score meets the threshold (default 72/100). Low-confidence matches are skipped; manual Wikidata URLs in the tag editor always emit sameAs.worksFor — article graphs link the slim Person author node to the publisher Organization (#organization) without expanding full E-E-A-T on every post." quotes across the full @graph before encode; prevents invalid schema when article text contains quoted phrases (e.g. Επιτροπή αγώνα "ελεύθερο …").wp_unslash() on post meta JSON-LD cache for correct escape round-trip after save.script.js + style.css bundle; fixes broken admin CSS after switching away from Lite profile and reduces wp-admin CPU.contentLocation / dateline — Primary city no longer copied onto every post by default. International and national stories no longer inherit the publisher HQ (e.g. Patras on a Canada wire story). Story geography comes only from Place tags, city tags, or lede dateline patterns.articleBody cleanup — Full and Limited modes sanitize plain text: strip emoji/pictographs, decode HTML entities, remove literal rn/rnrn junk, collapse block whitespace, and replace ASCII/curly " quotes so JSON-LD stays valid (omit mode unchanged).script.js / style.css bundle on Newsroom settings tabs (Dashboard, Settings, PRO); use lightweight palette + tab-specific JS only.areaServed / location; article fields are opt-in via the new checkbox.new / +N), aligned site-wide GSC channel totals.newsai_vars JS error on Chief Insights — shared newsai_ensure_admin_vars_script(); command palette depends on newsai-admin-vars; removed unsafe inline that referenced newsai_vars before it was defined; editor window.newsai_vars copy runs after localize.$newsai_is_pro_active defined once at the start of the settings screen (Site Details / usage registry row).strip_tags() deprecation — admin page $title set per tab (Dashboard, Chief Insights, etc.) so wp-admin header no longer receives null.newsai_asset_ver() appends filemtime to Chief Insights / palette / war-room JS-CSS after plugin updates.wp_newsai_gsc_queries (NEWSAI_DB_VERSION 1.4).WP_Query.nros_schema_global_v) or publish/unpublish (nros_schema_listings_v for ItemList freshness).nros_schema_global_v and forces a full-site JSON-LD rebuild storm.wp_mail_from filters (no broken From: header); captures PHPMailer errors; test send works without saving first; clearer admin error messages.foundingDate cached; cron registration off frontend (wp_next_scheduled only in admin/activation).vatID omitted when identical to taxID.article_type (breaking, sports, politics, etc.) in AI Assist.wp_newsai_gsc_site_daily and wp_newsai_gsc_device created automatically on sync/activation (no manual migration).--nros-* tokens for admin dashboard, Chief Insights, editor sidebar, and Author Performance.nros-admin-dashboard.css (KPIs, kanban, tasks, sidebar cards).LIKE patterns, centralized transient cleanup on uninstall.:focus-visible on editor action buttons and Author Performance controls.nros-admin-dashboard.css (performance card, discussions, assignments)..pot / .po / .mo and JS translation JSON (includes command palette strings).newsai-story-cluster markup detected.<aside class="newsai-story-cluster"> (complementary related coverage, not main article body) and external story-cluster.css instead of heavy inline styles — better parser clarity and front-end performance.<span class="newsai-story-cluster__date"> or footer links; defaults apply (Σήμερα / Χθες / dates / «Όλο το χρονικό»). Blank label fields are removed from options on save. Timeline HTML cache bumped (v2 transient).<aside class="newsai-key-points"> and <section class="newsai-faq"> (FAQPage schema) replace inline-styled divs; styles in newsai-content-blocks.css. No insert when key points cannot be built from content.webmasters.readonly). Stores Discover, Google News, and web search metrics per post and author in wp_newsai_gsc_performance (DB version 1.3).sc-domain: and URL-prefix), connection test, Sync now, daily cron at 04:00 site time when Pro + enabled.edit_others_posts (batch prefetch per page).author-performance.css + author-performance.js for the perf tab (tabs, expand, grid refresh).plugins_loaded, author E-E-A-T save hardening, holiday import validation, representativeOfPage on lead image, PHPUnit smoke tests, editor tag pool cap, Wikidata lazy enrich, AI Tag Match, decay pagination improvements.plugins_loaded (no global get_option() at file load — safer for CLI/imports).representativeOfPage: true on the first NewsArticle ImageObject.currentColor (visible in wp-admin dark mode).composer test).newsai_decay_scan_last_id instead of slow SQL OFFSET on large archives.COUNT for dated tasks plus PHP only for recurring date rules (year/month rollover).DATE_SUB(UTC_TIMESTAMP()) in WHERE.newsai_ai_max_input_chars) for long-form Key Points / optimization.no_tags / no_matches), Gutenberg post_id resolution, improved default message.flush_rewrite_rules() on public init; uses versioned newsai_indexnow_rewrite_ver, flushes on plugin activation and when IndexNow is enabled in settings, with a one-time admin migration from the legacy newsai_indexnow_flushed flag.WP_Query search (s), which often returned zero rows on large Greek newsrooms. Uses shared tags/categories, title token SQL (OR), accent-normalized scoring, Gutenberg post_id resolution, and does not cache empty “no matches” for 10 minutes.og:image meta is set; breakdown shows featured_fallback vs explicit in the editor checklist.Tested up to: 7.0 (major.minor format for WordPress.org).License + License URI in main plugin header; Plugin Check hardening — output escaping in editor sidebar and admin dashboard; prepared SQL for dynamic task lists, views meta-key detection, semantic archive link queries, and weekly task cleanup.includes/sidebar.php (tasks, summaries, breaking panel, prompts); includes/admin-ui.php (nav tabs, KPI cards, Google status banner, task table, latest posts); task thread close button uses esc_attr__ with text domain.$wpdb->prepare() with spread args for archive link candidate queries; whitelisted ORDER BY on task dashboard queries; inline prepare for done-task cleanup.discover_ui (wp_localize_script) for English, Greek, German, and Spanish; removed hardcoded Greek/English branches in script.js. Translators comments for sidebar placeholders; new strings in .pot / .po.Stable tag 1.8.0, dedicated Classic Editor & Gutenberg section, FAQ, installation step, and plugin tags for block/classic editor discoverability.assign_terms capability (always denied for Authors/Editors), so the UI silently added tags without the “keep or use existing?” prompt. Fixed taxonomy capability check; classic script no longer bypasses on 403. Improved typo detection (e.g. NEWSOS vs NEWSSS). Classic script also loads when the classic Tags metabox is shown alongside the block editor._newsai_discover_score / breakdown meta from the editor (Phase 2 GSC traffic stays separate).max-image-preview:large, Core Web Vitals.Maximum call stack size exceeded in blocks.min.js when Breaking/live-update code called Gutenberg APIs (getEditedPostContent, createBlock, wp.data.subscribe) on Classic Editor screens. Block APIs now run only when block-editor-page + core/block-editor store are present; Classic uses TinyMCE/textarea only.liveBlogUpdate needs structured headings).liveBlogUpdate built from the first 24 words when Breaking/LiveBlog is on or when content looks like a pasted plugin readme; avoids bogus updates on announcement posts..po + JS newsai-script.json).liveBlogUpdate), optional “developing story” badge on the article, IndexNow / Google ping on enable, Resolve now, and auto-expire (24/48/72h, hourly cron). AJAX toggle works in Gutenberg; classic editor uses the same metabox save path._newsai_discover_score, _newsai_discover_score_breakdown. Filter: nros_discover_score_weights.includes/discover-score.php — AJAX newsai_discover_score_partial, newsai_save_discover_score, cron nros_refresh_trend_keyword_cache (cleared on plugin deactivation).datePublished, dateModified, dateCreated, LiveBlog coverage times, and video uploadDate now output ISO 8601 with the WordPress timezone offset (e.g. 2026-05-16T09:45:00+03:00) instead of UTC (+00:00), aligning with wp-admin display and Rank Math Open Graph.includes/admin-ui.php that WordPress reported as charsout=3 on activation and that could prefix REST loopback responses so Site Health showed "The REST API did not process the context query parameter correctly" even when the endpoint returned HTTP 200./wp-json/* requests the plugin no longer reloads its text domain or overrides plugin_locale for newsroom-ai-assistant, so core REST and Site Health checks stay stable while the per-site language picker (1.7.1+) continues to work in wp-admin.load_textdomain with determine_locale() lookup) after an experimental init-only loader caused the dashboard to stay in English regardless of Settings → Language.capability => edit_posts instead of deprecated who => authors (WordPress 5.9+).the_content / timeline shortcode and speakable snippet bail out during REST/JSON requests (no mutation of API payloads).