Changeset 3737111
- Timestamp:
- 10/09/2026 05:04:36 PM (3 weeks ago)
- File:
-
- 1 edited
-
nikk-agency-related-flow/trunk/readme.txt (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
nikk-agency-related-flow/trunk/readme.txt
r3737016 r3737111 9 9 License URI: https://www.gnu.org/licenses/gpl-2.0.html 10 10 11 Show recent related posts by shared tags inside articles and after content, with a freshness limit and no JavaScript.11 Show fresh related posts in up to four inline positions and after content, with smart tag rules and Polylang support. 12 12 13 13 == Description == 14 14 15 Nikk.Agency Related Flow is a lightweight related-content plugin designed for blogs, magazines, and news sites where recency matters. It is developed by [Nikk.Agency](https://nikk.agency/). 16 17 Instead of filling a page with old recommendations, it can limit related posts to a configurable freshness window. Posts are matched using shared WordPress tags, ranked by the number of shared tags, and then by publication time. 18 19 The plugin can automatically place: 20 21 * one related post after a configurable paragraph; 22 * a second related post after another configurable paragraph; 23 * a list of related posts at the end of the post content. 24 25 There are no thumbnails, sliders, JavaScript, AJAX requests, external APIs, tracking calls, or remote services. 15 Nikk.Agency Related Flow is a lightweight related-content plugin for blogs, magazines, and news websites where relevance, freshness, and multilingual content matter. It is developed by [Nikk.Agency](https://nikk.agency/). 16 17 The plugin finds related posts using shared WordPress tags while strictly respecting a configurable freshness window. 18 19 You can automatically place related recommendations in up to four configurable positions inside an article and add a separate related-post list after the content. 20 21 Nikk.Agency Related Flow also provides centralized tag-matching rules. 22 23 Ignored tags never participate in matching. 24 25 Priority tags take precedence over ordinary tags. If the current post contains one or more configured priority tags, the plugin first searches using only those priority tags. One matching priority tag is enough, while candidates sharing more priority tags rank higher. 26 27 If no fresh related post is found during the priority-tag pass, the plugin automatically falls back to the post's other non-ignored tags and applies the normal minimum-shared-tags setting. 28 29 With Polylang, related posts remain in the language of the current post. Ignored and priority rules automatically apply to translated versions of configured tags. 30 31 Each recommendation can display its publication date and time together with the exact clickable tags that caused the match. 32 33 A dedicated CSS / Styles settings tab lets administrators customize backgrounds, colors, fonts, font sizes, weights, spacing, separators, radius, metadata, matched tags, and other visual properties. The built-in Nikk.Agency styling values are provided as editable defaults. 34 35 Administrators can also enable “Use site/theme styles” to disable the plugin stylesheet completely and let the active WordPress theme control the appearance. 36 37 There are no thumbnails in the plugin output, sliders, JavaScript, AJAX requests, external APIs, tracking calls, or remote services. 26 38 27 39 = Features = 28 40 29 41 * Related posts based on shared WordPress tags. 42 * Configurable freshness window from 1 to 365 days. 43 * Strict freshness validation before related posts are displayed. 30 44 * Admin-configured ignored tags that never participate in matching. 31 * Admin-configured priority tags: when a post has any priority tags, those tags are tried first; if no priority match exists in the freshness window, matching falls back to the post’s other non-ignored tags. 45 * Admin-configured priority tags that take precedence over ordinary tags. 46 * Automatic fallback to non-ignored ordinary tags when no fresh priority match exists. 47 * One shared priority tag is sufficient; candidates matching more priority tags rank higher. 32 48 * Polylang automatically applies ignored and priority rules to translated versions of selected tags. 33 * Configurable freshness window from 1 to 365 days. 34 * Configurable minimum number of shared tags. 49 * Configurable minimum number of shared tags for normal matching. 35 50 * Four optional inline placements by paragraph number. 36 51 * Optional end-of-content related-post list. … … 38 53 * Newer posts break ties between equally relevant candidates. 39 54 * No duplicate recommendations within the same post. 55 * Strict Polylang language validation prevents recommendations from leaking across languages. 56 * Publication date and time can be shown or hidden. 57 * Shows the exact shared tags used to match each recommendation. 58 * Matched tags are clickable and link to their WordPress tag archives. 40 59 * Transient caching to reduce repeated database work. 41 60 * Cache invalidation when posts or post tags change. 42 61 * Lightweight CSS with logical properties for RTL support. 43 * Dedicated CSS / Styles settings tab for background, colors, fonts, font sizes, weights, spacing, separators, radius, tags, metadata, and credit styling. 62 * Dedicated CSS / Styles settings tab. 63 * Editable background, text, accent and separator colors. 64 * Editable font family, font sizes, font weights, spacing, radius and padding. 65 * Separate styling controls for labels, headings, related-post titles, dates, matched tags and developer credit. 44 66 * Nikk.Agency style values are pre-filled as editable defaults. 45 67 * Optional “Use site/theme styles” mode disables the plugin stylesheet completely. 46 * Publication date and time can be shown or hidden. 47 * Shows the exact shared tags used to match each recommendation, with clickable tag-archive links. 48 * Polylang integration: results stay in the current post language. 68 * Polylang integration keeps recommendations in the current post language. 49 69 * Editable front-end labels in the plugin settings. 50 70 * Automatic built-in label translations for Polylang languages, with per-language manual overrides. … … 52 72 * Request-local marker rendering helps prevent later content filters from rewriting the plugin markup. 53 73 * Developer filters for query arguments, selected post IDs, and rendered HTML. 54 * Optional developer credit link in the end-of-content block. It is disabled by default and appears only after explicit opt-in in settings. 74 * Optional developer credit link in the end-of-content block. 75 * Developer credit is disabled by default and appears only after explicit administrator opt-in. 76 * No JavaScript or AJAX on the front end. 77 * No external APIs, tracking, analytics, or remote assets. 55 78 56 79 = Privacy = 57 80 58 Nikk.Agency Related Flow does not collect, transmit, or track personal data. It does not contact external servers and does not load remote assets. 81 Nikk.Agency Related Flow does not collect, transmit, or track personal data. 82 83 The plugin does not contact external servers, use analytics or tracking services, or load remote assets. 59 84 60 85 == Installation == … … 63 88 2. Activate Nikk.Agency Related Flow. 64 89 3. Go to Settings > Nikk.Agency Related Flow. 65 4. Choose the freshness window, paragraph positions, number of bottom links, labels, and cache duration. 66 5. Make sure your posts use WordPress tags. Posts without tags will not receive related recommendations. 90 4. Set the freshness window and up to four inline paragraph positions. 91 5. Configure the optional end-of-content related-post list. 92 6. Select ignored and priority tags if needed. 93 7. Configure labels, publication metadata, and cache duration. 94 8. Open the CSS / Styles tab to customize the built-in appearance or enable “Use site/theme styles”. 95 9. Make sure your posts use WordPress tags. Posts without usable tags will not receive related recommendations. 67 96 68 97 == Frequently Asked Questions == … … 70 99 = How are related posts selected? = 71 100 72 The plugin first removes tags marked as ignored in Settings. If the current post has one or more tags marked as priority, those priority tags are tried first and all other tags are ignored for that first pass. One shared priority tag is enough, and candidates sharing more priority tags rank higher. If that priority pass finds no related posts inside the freshness window, the plugin automatically falls back to all non-ignored tags on the current post and uses the normal minimum-shared-tags setting. Candidates outside the freshness window are excluded. Publication time breaks ties. With Polylang, translated versions of selected ignored and priority tags inherit the same rule automatically. 101 The plugin first removes tags marked as ignored in Settings. 102 103 If the current post has one or more tags marked as priority, those priority tags are used for the first matching pass and the post's other tags are temporarily ignored. 104 105 One shared priority tag is enough. Candidates sharing more priority tags rank higher. 106 107 If the priority pass finds no related posts inside the freshness window, the plugin automatically falls back to all other non-ignored tags on the current post and applies the normal minimum-shared-tags setting. 108 109 Candidates outside the configured freshness window are excluded. Publication time breaks ties between equally relevant candidates. 110 111 With Polylang, translated versions of selected ignored and priority tags automatically inherit the same rule. 73 112 74 113 = What happens if there are not enough related posts? = 75 114 76 The plugin simply shows fewer links. It does not fall back to older or unrelated content. 115 The plugin shows the related posts that are available. 116 117 It does not extend the configured freshness window to include older content. 118 119 If priority-tag matching returns no fresh result, the plugin can fall back to the post's ordinary non-ignored tags. It does not fall back to unrelated posts. 77 120 78 121 = Does it work without Polylang? = 79 122 80 Yes. Polylang is optional. When Polylang is active, the plugin restricts related-post queries to the language of the current post. 123 Yes. Polylang is optional. 124 125 When Polylang is active, the plugin restricts related-post results to the language of the current post and also applies ignored and priority rules to translated versions of selected tags. 126 127 = How many inline related-post positions can I use? = 128 129 Up to four. 130 131 Each position can be assigned a paragraph number independently. Set a position to 0 to disable it. 81 132 82 133 = Does the plugin use JavaScript or AJAX? = 83 134 84 No. Front-end output is generated with PHP and one small optional CSS file. 135 No. 136 137 Front-end related-post output is generated with PHP. The plugin can load one small local CSS file unless the site/theme styles option is enabled. 85 138 86 139 = Can I customize or disable the built-in styles? = 87 140 88 Yes. Open Settings > Nikk.Agency Related Flow > CSS / Styles to edit the Nikk.Agency defaults for backgrounds, colors, font family, font sizes, weights, spacing, separators, and other visual properties. Enable "Use the site/theme styles" to stop loading the plugin stylesheet completely and style the `.fresh-related-posts` classes from your theme. 141 Yes. 142 143 Open Settings > Nikk.Agency Related Flow > CSS / Styles to customize backgrounds, colors, font family, font sizes, weights, spacing, separators, radius, matched tags, metadata, and other visual properties. 144 145 Enable “Use site/theme styles” to stop loading the plugin stylesheet completely and style the `.fresh-related-posts` classes from your theme. 146 147 = Can visitors see why a post was considered related? = 148 149 Yes. 150 151 The plugin can display the exact shared tags used to select each recommendation. Those tags are clickable and link to their normal WordPress tag archive pages. 152 153 Ignored tags are never displayed as matching tags. 89 154 90 155 = Why are no related posts showing? = 91 156 92 Check that the current post has tags, that other recent posts share enough of those tags, and that the freshness window is not too short. 157 Check that: 158 159 * the current post has usable WordPress tags; 160 * other recent posts share enough of those tags; 161 * the freshness window is not too short; 162 * relevant tags have not been marked as ignored; 163 * Polylang language restrictions are not excluding the candidates. 93 164 94 165 = Does it modify REST API content or feeds? = 95 166 96 No. Automatic insertion is limited to the normal front-end single-post main loop. 167 No. 168 169 Automatic insertion is limited to the normal front-end single-post main loop. 97 170 98 171 = Is the Nikk.Agency developer credit required? = 99 172 100 No. The public credit link is disabled by default. It appears only if a site administrator explicitly enables it in Settings > Nikk.Agency Related Flow, and it is not required for any plugin functionality. 101 102 == Screenshots == 103 104 1. A lightweight inline related-post block between article paragraphs. 105 2. The end-of-content list with related posts and publication dates. 106 3. The Nikk.Agency Related Flow settings page. 173 No. 174 175 The public developer credit is disabled by default and appears only if a site administrator explicitly enables it in Settings > Nikk.Agency Related Flow. 176 177 It is not required for any plugin functionality. 107 178 108 179 == Changelog == … … 112 183 * Added editable controls for block background, text/accent/separator colors, radius, margins, padding, font family, labels, headings, related-post titles, dates, matched tags, list spacing, and developer credit. 113 184 * Pre-filled all visual controls with the existing Nikk.Agency Related Flow design values. 114 * Added a "Use thesite/theme styles" option that disables the plugin front-end stylesheet and custom style overrides.185 * Added a "Use site/theme styles" option that disables the plugin front-end stylesheet and custom style overrides. 115 186 * Preserved existing non-style settings when saving only the CSS / Styles tab. 116 187 … … 135 206 * Inline placements are now processed in paragraph order and duplicate paragraph positions are ignored. 136 207 137 138 208 = 1.0.8 = 139 209 * Replaced Ctrl/Command multi-select tag controls with clear checkbox lists in the plugin settings. 140 210 * Added a dedicated “Save tag rules” button next to the ignored/priority tag controls. 141 * Added priority fallback: if no related post matches the current post ’s priority tags inside the freshness window, matching automatically retries with all non-ignored tags from the post.211 * Added priority fallback: if no related post matches the current post's priority tags inside the freshness window, matching automatically retries with all non-ignored tags from the post. 142 212 * Preserved automatic Polylang translation handling for ignored and priority tag groups. 143 213 … … 188 258 == Upgrade Notice == 189 259 190 = 1.0.11 = 191 Updates the WordPress.org compatibility header to WordPress 7.1. 192 193 = 1.0.10 = 194 Shows clickable tags that explain why each related post was selected. 195 196 = 1.0.8 = 197 Adds checkbox-based tag rule controls and automatic fallback to normal non-ignored tags when priority tags have no fresh matches. 198 199 = 1.0.7 = 200 Adds centralized ignored-tag and priority-tag matching rules, including automatic Polylang translation handling. 201 202 = 1.0.6 = 203 Strictly enforces both the freshness window and current Polylang language before related posts are displayed. 204 205 = 1.0.5 = 206 Addresses Plugin Check internationalization errors and a performance warning. 207 208 = 1.0.4 = 209 Updates the displayed plugin author name. 210 211 = 1.0.3 = 212 Updates Nikk.Agency links and WordPress.org contributor metadata. 213 214 = 1.0.2 = 215 Adds an optional, opt-in developer credit and updates the author website. 216 217 = 1.0.1 = 218 Adds editable and automatically localized front-end labels. 219 220 = 1.0.0 = 221 Initial release. 260 = 1.0.14 = 261 Adds full CSS / Styles customization while preserving the existing Nikk.Agency design as editable defaults.
Note:
See TracChangeset
for help on using the changeset viewer.
![(please configure the [header_logo] section in trac.ini)](/chrome/site/your_project_logo.png)