@prefix sioc: <http://rdfs.org/sioc/ns#> .
@prefix dc: <http://purl.org/dc/elements/1.1/> .
@prefix dcterms: <http://purl.org/dc/terms/> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix content: <http://purl.org/rss/1.0/modules/content/> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

<https://lhero.org/?post_type=lh-portfolio&#038;p=147050>
  a sioc:Post ;
  dc:title "Hooks" ;
  dcterms:identifier 147050 ;
  dc:modified "2026-09-05T02:53:31Z"^^xsd:dateTime ;
  dc:created "2026-09-05T02:53:31Z"^^xsd:dateTime ;
  sioc:link <https://lhero.org/portfolio/lh-polls/hooks/> ;
  sioc:has_creator <https://lhero.org/author/1/#account> ;
  sioc:has_container <https://lhero.org/#posts> ;
  content:encoded """<h2>Actions</h2>
<ul>
<li><strong>template_redirect</strong> (priority 1) &#8211; LH_Polls_Voting::handle_form_post &#8211; processes vote/change_vote form submissions, exits via redirect on POST.</li>
<li><strong>template_redirect</strong> (priority 5) &#8211; LH_Polls_Embed::maybe_serve_embed &#8211; serves the self-contained embed HTML document for ?embed requests. Runs after the voting handler so a real vote submission is processed before the embed re-renders.</li>
<li><strong>deleted_comment</strong> &#8211; LH_Polls_Comments::on_comment_deleted &#8211; keeps lh_poll_votes in sync when a vote comment is deleted via the WP comments screen.</li>
</ul>
<h2>Filters</h2>
<ul>
<li><strong>oembed_response_data</strong> &#8211; returns an iframe-based rich oEmbed response for lh_poll posts (600px wide, height estimated from option count).</li>
<li><strong>the_content</strong> &#8211; injects poll markup + JS tag on the standalone (non-embed) singular view.</li>
<li><strong>comments_clauses / comment_feed_where / get_comments_number</strong> &#8211; exclude lh_vote-type comments from standard queries, feeds, and displayed counts on non-poll posts.</li>
<li><strong>comments_open / comments_array</strong> &#8211; disable the comment form/list UI on lh_poll posts entirely (votes are stored as comments internally but never shown as a comment thread).</li>
</ul>
"""^^rdf:XMLLiteral ;
  sioc:content """Actions

template_redirect (priority 1) &#8211; LH_Polls_Voting::handle_form_post &#8211; processes vote/change_vote form submissions, exits via redirect on POST.
template_redirect (priority 5) &#8211; LH_Polls_Embed::maybe_serve_embed &#8211; serves the self-contained embed HTML document for ?embed requests. Runs after the voting handler so a real vote submission is processed before the embed re-renders.
deleted_comment &#8211; LH_Polls_Comments::on_comment_deleted &#8211; keeps lh_poll_votes in sync when a vote comment is deleted via the WP comments screen.

Filters

oembed_response_data &#8211; returns an iframe-based rich oEmbed response for lh_poll posts (600px wide, height estimated from option count).
the_content &#8211; injects poll markup + JS tag on the standalone (non-embed) singular view.
comments_clauses / comment_feed_where / get_comments_number &#8211; exclude lh_vote-type comments from standard queries, feeds, and displayed counts on non-poll posts.
comments_open / comments_array &#8211; disable the comment form/list UI on lh_poll posts entirely (votes are stored as comments internally but never shown as a comment thread).

""" ;
  sioc:topic <https://lhero.org/lh_portfolio-type/doc-section/>, <https://lhero.org/?taxonomy=author&term=cap-1> .

<https://lhero.org/author/1/#account> rdfs:seeAlso <https://lhero.org/author/1/?feed=lhrdf&format=turtle> .
<https://lhero.org/lh_portfolio-type/doc-section/> rdfs:seeAlso <https://lhero.org/lh_portfolio-type/doc-section/?feed=lhrdf&format=turtle> .
<https://lhero.org/?taxonomy=author&term=cap-1> rdfs:seeAlso <https://lhero.org/?taxonomy=author&term=cap-1&feed=lhrdf&format=turtle> .
