{"id":13831,"date":"2026-08-08T18:47:05","date_gmt":"2026-08-08T12:47:05","guid":{"rendered":"https:\/\/skyaddons.com\/elementor\/?p=13831"},"modified":"2026-08-16T00:20:36","modified_gmt":"2026-08-15T18:20:36","slug":"kaya-photographed-at-the-end-of-a-long-shift","status":"publish","type":"post","link":"https:\/\/skyaddons.com\/elementor\/photography\/kaya-photographed-at-the-end-of-a-long-shift\/","title":{"rendered":"Kaya, photographed at the end of a long shift"},"content":{"rendered":"<h2 class=\"wp-block-heading\">Sky Addons Table of Contents Extension: A Complete Guide<\/h2><p class=\"wp-block-paragraph\">Long-form content is one of the most effective ways to establish topical authority and drive organic search traffic. But without proper navigation, readers land on a wall of text and bounce before they find what they came for. The Sky Addons Table of Contents extension automatically generates a navigable, stylable contents list from page headings, actively tracking and highlighting the section currently in view.<\/p><h3 class=\"wp-block-heading\">Automatic Heading Detection and Hierarchical Display<\/h3><p class=\"wp-block-paragraph\">Sky Addons scans the page heading structure on load and builds the list programmatically from H2 through H6 headings. The display can be filtered to specific heading levels \u2014 H2 and H3 for a concise overview, or all levels for technical documentation. This flexibility means the same extension serves equally well for blog posts, knowledge base articles, and comprehensive product guides without manual maintenance when content changes.<\/p><h3 class=\"wp-block-heading\">Custom Smooth Scroll with Precise Offset Control<\/h3><p class=\"wp-block-paragraph\">The smooth scroll implementation is deliberately custom rather than relying on browser-native anchor scrolling. This allows a configurable pixel offset so that fixed headers or sticky navigation bars do not obscure the target heading when the scroll completes. The offset value applies consistently across all anchor links on the page regardless of how many headings appear, solving the common problem where anchor links disappear behind sticky elements.<\/p><h3 class=\"wp-block-heading\">Active Heading Tracking via Intersection Observer<\/h3><p class=\"wp-block-paragraph\">As the reader scrolls, the table of contents updates in real time to highlight the current section using Intersection Observer for performance. The active state \u2014 typically a colour change or weight increase \u2014 transitions smoothly between items as the reader moves down, providing constant orientation within lengthy content. The scroll spy correctly identifies heading text even when text animation effects are applied, preventing the common bug where animated headings are skipped by the scroll tracker.<\/p><h3 class=\"wp-block-heading\">Multiple Independent Instances Per Page<\/h3><p class=\"wp-block-paragraph\">Each instance tracks only its own scoped container, configured through the parent selector setting. A page with both a main article and a sidebar FAQ section can have two independent tables of contents that do not interfere with each other&#8217;s scroll spy or active state. This is particularly valuable for template pages built with Sky Addons Loop Carousel where each carousel item represents a distinct content section.<\/p><h3 class=\"wp-block-heading\">Full Styling Control Through Elementor<\/h3><p class=\"wp-block-paragraph\">Links colour, hover colour, typography family, size, weight, and spacing are all adjustable through Elementor&#8217;s control panel. Container background, padding, border radius, and shadow ensure the widget matches any design system without custom CSS. On dark card backgrounds, the links colour controls ensure readability against the contrasting background \u2014 a common pain point with third-party table of contents plugins that default to unreadable colour combinations.<\/p><h3 class=\"wp-block-heading\">SEO Benefits and Structured Data<\/h3><p class=\"wp-block-paragraph\">Search engine bots follow the same anchor links users click, understanding page structure at a glance. Rank Math or Yoast can generate structured data markup from the table of contents, surfacing it directly in search results as a featured snippet \u2014 giving pages a competitive edge in rich results and increasing click-through rates from search engine results pages.<\/p>","protected":false},"excerpt":{"rendered":"<p>We shoot working people at the end of the shift on purpose. The tiredness is the point, not a problem to be lit out.<\/p>\n","protected":false},"author":5,"featured_media":13841,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"sky_video_link_meta":"","footnotes":""},"categories":[116],"tags":[],"class_list":["post-13831","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-photography"],"acf":[],"_links":{"self":[{"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/posts\/13831","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/comments?post=13831"}],"version-history":[{"count":0,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/posts\/13831\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/media\/13841"}],"wp:attachment":[{"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/media?parent=13831"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/categories?post=13831"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/skyaddons.com\/elementor\/wp-json\/wp\/v2\/tags?post=13831"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}