
內容簡介
Semantic Journey 是一款專為編輯團隊設計的分析外掛,提供簡單易懂的內容互動數據,幫助了解讀者行為及其達成的關鍵行動,並以隱私為首要考量,無需複雜的分析術語。
【主要功能】
• 讀者進度追蹤,報告四個固定里程碑
• 決策點標記,定義重要行動的達成
• 專用報告畫面,顯示讀者互動數據
• 隱私優先設計,不收集個人數據
• 簡單易懂的語言,無需專業訓練
外掛標籤
開發者團隊
原文外掛簡介
Semantic Journey answers questions about your content that conventional analytics answers badly or not at all: what does this content experience look like for real readers, and did they reach the actions that matter to you? Not how many events fired, how long sessions lasted, or how you compare to a benchmark.
It is a plain-language, privacy-first alternative to conventional analytics for editorial teams, built around a fixed contract:
Semantic, not mechanical. “Readers reached the end”, never “scroll depth exceeded 80%”.
Understandable without training. No analytics vocabulary, no dashboards that require interpretation skills.
Outcome-first language. Progress, completion, confidence, clarity, friction. Never metrics, events, rates, or funnels.
Privacy-first by design. No personal data, no identifiers, no cookies, no user tracking, nothing sent to third parties.
Aggregate-only signals. No sessions, no individuals, no cross-page journeys, no behavioral profiling.
Liftable by default. Every module is self-contained and works independently of any other plugin.
Semantic Journey works on any public post type, not only posts and pages: products, portfolio items, or any custom post type your site uses.
Reader Progress (module 1)
The reference implementation of the contract above. Reader Progress reports four fixed milestones for each piece of content:
Started Reading. The reader began engaging with the main content.
Reached the Middle. The reader progressed through roughly half of the content.
Read Most. The reader consumed the large majority of the content (more forgiving than strict completion).
Reached the End. The reader reached the conclusion.
Detection is content-relative, using IntersectionObserver against the primary content container, never scroll events, scroll percentages, time-on-page, or mouse movement. Milestones fire at most once per page view and are recorded as counts only: no per-event timestamps, no session or user identity of any kind.
Decision Point (module 2)
A Decision Point marks the moment a reader reached a site-owner-defined action: a “Buy Now” button, a survey link, a phone number. Unlike Reader Progress’s four fixed milestones, Decision Point labels are yours to define, and a Decision Point can be reached more than once per page view since each click is a genuine, separate signal.
Four ways to mark a Decision Point, in order of precedence:
A data-sj-decision="Label" attribute added to any element, for precise control from your theme or page builder.
Phone number links (tel:), email links (mailto:), and text message links (sms:), all detected automatically with no configuration.
An admin-defined CSS selector rule (Settings > Decision Point), matching any element, not only links. This is the option for AJAX-submitted forms, Add to Cart buttons, or anything a page builder generates without a real link underneath it.
An admin-defined URL pattern rule (Settings > Decision Point), for marking real links by address without touching a template.
Decision Point data appears as additional columns on the same Reports screen as Reader Progress, and in the same CSV export, built dynamically from whichever labels actually have data in the selected time window.
Reports
A dedicated Reports screen shows, for any content item, how many readers started, reached the middle, read most, or reached the end, over a 7/30/90-day window, plus a column for each Decision Point label with data in that window, with search, column sorting, and a CSV export. The four Reader Progress columns use plain-language milestone names; there are no rates, percentages, or scores to interpret.
Copy prompt for your LLM
The Reports screen can build a plain-text summary of exactly what is currently displayed (the full filtered set, not just the current page) for you to paste into an LLM of your choice, if you want a plain-English interpretation of the counts. This plugin does not send this text anywhere itself, there is no outbound link and no third-party integration; it copies to your clipboard only, and where you paste it afterward is entirely your own choice. The built-in instructions ask the LLM not to invent rates or percentages and not to assert a definite cause for any pattern, matching this plugin’s own approach to the same data.
On the post editor
A small sidebar box on the post/page edit screen (and any other trackable post type) confirms whether Reader Progress and Decision Point are recording for that piece of content, showing 30-day counts for each, with a link straight to the filtered Reports screen. Read-only, no fields to fill in.
On the Posts and Pages list, and the Dashboard
A Semantic Journey column on the Posts/Pages list table (and any other trackable post type) gives an at-a-glance summary without opening each item. A small Dashboard widget shows the top 5 pieces of content by readers reaching the end, over the last 7 days.
Privacy and external services
This plugin does not send any data to third-party services. All data collected by Reader Progress stays in your own WordPress database, in a dedicated table, as aggregate daily counts. Nothing is shared externally, and no cookies or personal identifiers are used at any point.
For developers
Other plugins can integrate with Semantic Journey through a small, stable public API (see includes/functions.php):
semantic_journey_is_module_enabled( string $module, $context = null ): bool
semantic_journey_reader_progress_get_summary( int $content_id, int $days = 30 ): array
semantic_journey_decision_point_get_summary( int $content_id, int $days = 30 ): array
the semantic_journey_module_enabled filter, for applying your own licensing or per-post rules on top of the site-level toggle.
Semantic Journey itself has no concept of licensing, plans, or host-specific gating; that interpretation belongs entirely to the integrating plugin.
