Enrich listing detail pages with product-type OpenGraph tags
Summary
- Extend
SiteHeadwithtype,imageAlt,priceAmount,priceCurrency,availability, andconditionprops. - Detail pages now render
og:type=productplusproduct:price:amount,product:price:currency,product:availability(mapped from listing status: for_sale → "in stock", pending → "pending", sold → "out of stock"), andproduct:condition(new → "new"; like_new/good/junk → "used"). - Add
og:image:alt/twitter:image:altusing the listing title whenever there's a cover image. - Non-listing pages keep
og:type=website.
Test plan
-
curl https://yardsale.atelier.house/sale/<short_id>and grep forproperty="og:andproperty="product:— confirm product tags are present with the listing's price -
Mark a listing sold → confirm product:availability="out of stock"; mark pending →"pending" -
Set condition=new → product:condition="new"; set condition=like_new →"used" -
Paste a listing URL into a link preview tool (e.g. opengraph.xyz) and confirm the title, description, and image render