Commit Graph

17 Commits

Author SHA1 Message Date
Kunthawat Greethong
d5d4574683 fix(hero): replace product pill with category from all-products
Each product page's hero pill now shows the category from
all-products.astro instead of the product-specific sub-pill.

Updated 25 pages:
- ระบบท่อ (6): ppr-thai-ppr, ppr-scg, hdpe, upvc, syler, xy-lent
- เครื่องเชื่อมท่อ (2): pipe-coupling, เม็กกรู๊ฟ-คับปลิ้ง
- ระบบน้ำ (3): วาล์ว-valve, water-pump, water-treatment
- อุปกรณ์ปรับอากาศ (3): grilles, durgo-avvs, หัวจ่าย-ball-jet
- อุปกรณ์ดับเพลิง (2): ตู้ดับเพลิง, realflex
- ฉนวนหุ้มท่อ (7): armflex, aeroflex, maxflex, thermobreak, rockwool, microfiber, scg
- ระบบรั้ว (1): รั้วเทวดา
- เดิม: ระบบรั้วไวน์แมน, เครื่องเชื่อม-hdpe, เครื่องเชื่อม-ppr
2026-06-10 14:34:42 +07:00
Kunthawat Greethong
ea36f28c17 fix(hero): remove duplicate old CTAs from 19 product pages
Old CTAs (e.g. 'สนใจสินค้าของเรา?', 'สอบถามราคาและสั่งซื้อ',
'sนใจรั้วเทวดา?') were still present above the canonical CTA
section added in 17f4eb7. Each page now has exactly one CTA.

Deleted section types:
  - 12x section gradient (สนใจสินค้าของเรา?)
  -  5x section gradient (สนใจสินค้านี้? — different buttons)
  -  3x box bg-primary-50 (สอบถามราคาและสั่งซื้อ)
  -  2x accent gradient sections
  -  1x div-based (ตู้ดับเพลิง — special format)

Verified: new CTA intact, no duplicate headings, build 40/40 OK,
HTML render: 20/20 have correct single CTA with 2 buttons.
2026-06-10 10:30:00 +07:00
Kunthawat Greethong
17f4eb752b fix(content): drop @ prefix from JPPSELECTION in text + add CTA to 20 products
Two changes driven by content review:

1) @JPPSELECTION → JPPSELECTION in user-visible text only
   - 19 page files: drop @ from inline JPPSELECTION in <p> tags
   - BaseLayout.astro + Footer.astro: drop @ from companyInfo.line
     (rendered as "LINE: @JPPSELECTION" in mobile CTA + footer)
   - URL line.me/ti/p/~JPPSELECTION left unchanged (the @ belongs
     in the URL per line.me convention)

2) Add missing CTA section to all 20 product pages
   - 16 pages had no CTA at all
   - 4 pages (armflex, aeroflex, maxflex, xy-lent) had bespoke
     CTA variants; replaced with canonical template
   - Template copied from ppr-thai-ppr
   - CTA inserted before </main> in all 20 product pages

Verified rendered HTML:
- @JPPSELECTION in <p> text = 0 across all 20 pages
- "LINE: JPPSELECTION" rendered in footer / mobile CTA
- heading + contact + line buttons present in all 20

Files touched: 30
2026-06-10 09:44:28 +07:00
Kunthawat Greethong
eb6557eeb3 fix(hero): correct Line icon SVG path in all 20 product heroes
The SVG path used for the Line chat button in the canonical template
contained a malformed curve command — a stray '0' inserted into a
relative bezier segment that broke the path into an unintended
sub-path. Result: the icon rendered as a misaligned blob instead of
the LINE wordmark glyph.

Restored the canonical path from ท่อ-ppr-thai-ppr (the untouched
stash reference) for all 20 product hero pages:

  วาล์ว-valve, ท่อ-syler, ตู้ดับเพลิง, armflex, grilles, aeroflex,
  durgo-avvs, maxflex, pipe-coupling, realflex, water-pump,
  water-treatment, ท่อ-xy-lent, ระบบรั้วไวน์แมน, รั้วเทวดา,
  หัวจ่าย-ball-jet, เครื่องเชื่อม-hdpe, เครื่องเชื่อม-ppr,
  เทอร์โมเบรค, เม็กกรู๊ฟ-คับปลิ้ง

Path length 1079 chars, byte-for-byte identical to the working
template (stash) version. Verified against rendered HTML: all 20
pages now have the correct path; no other markup changed.
2026-06-10 09:30:29 +07:00
Kunthawat Greethong
74db1dad77 fix(hero): correct hero layout to TEXT-LEFT for 12 product pages
Two prior commits (d8ff358, 9653fcb) claimed to rewrite heroes with a
TEXT-LEFT template, but the source-order check in the prior apply step
was misread. The committed heroes were still IMAGE-LEFT, with the
sticky wrapper around the image and the data-price-button still
rendering where the page has no #pricelist section.

This commit rewrites the hero section of 12 pages against the actual
HEAD~1 (9653fcb) source and the HEAD (d8ff358) source for วาล์ว-valve
to apply the canonical TEXT-LEFT template correctly:
  - text container (pill, title, features, buttons) before image
  - sticky wrapper moved to the image column
  - data-price-button removed where id="pricelist" is missing
  - max-w-md mx-auto lg:max-w-none classes restored on image + card

Pages: วาล์ว-valve, realflex, water-pump, water-treatment, ท่อ-xy-lent,
ระบบรั้วไวน์แมน, รั้วเทวดา, หัวจ่าย-ball-jet, เครื่องเชื่อม-hdpe,
เครื่องเชื่อม-ppr, เทอร์โมเบรค, เม็กกรู๊ฟ-คับปลิ้ง

Verified rendered HTML: all 12 pages have TEXT-LEFT order in DOM,
data-price-button present only where id="pricelist" exists.
2026-06-10 09:10:14 +07:00
Kunthawat Greethong
9653fcbaf9 refactor(hero): rewrite 11 product hero sections to canonical template
Continue template migration for the remaining image-LEFT product pages.

- Extract data per page (pill, title, image, features, hasPricelist)
- Generate hero from canonical template (text-LEFT, image-RIGHT, animated bg)
- Remove dead <Header slot=Footer slot= StickyBottomCTA slots
- Remove dead data-price-button when id="pricelist" missing
- Drop legacy image-LEFT layout, mobile-only sections, justify-center workarounds
- Apply consistent TEXT-LEFT order across all product heroes
- Drop unused special components (auto-rendered by BaseLayout already)

Pages: realflex, water-pump, water-treatment, ท่อ-xy-lent (0 features),
ระบบรั้วไวน์แมน, รั้วเทวดา (0 features), หัวจ่าย-ball-jet (6 features),
เครื่องเชื่อม-hdpe, เครื่องเชื่อม-ppr (5 features),
เทอร์โมเบรค, เม็กกรู๊ฟ-คับปลิ้ง (mobile+desktop special).

Verified: 11 pages render with valid HTML, correct features per page.
2026-06-10 08:35:22 +07:00
hermes
b34f8fc2fb feat(blog): Phase 5 SEO/GEO content with 5 new blog posts
Add 5 long-form Thai blog posts (1,200-2,500 words each) with SEO + GEO
optimization for the dealplustech water-systems site. Each post targets
a specific audience (contractors, engineers, project managers) and
follows a content-quality workflow: source real product specs, verify
Thai text, dedupe images, link back to product pages.

## New blog posts (src/content/blog/)
- thermobreak-guide.md (Thermobreak closed-cell insulation overview)
- plastic-grilles-guide.md (ABS plastic grilles for HVAC)
- ppr-pipe-guide.md (PPR pipe properties + heat-fusion welding)
- ppr-vs-hdpe-vs-upvc.md (3-way pipe comparison with PE80/PE100)
- thermobreak-series-guide.md (Thermobreak LS vs Solar series)
- 10-things-checklist-pipe-ordering.md (10-point pre-order checklist)

## Removed legacy posts
- pipe-knowledge.md, valve-guide.md, welcome-post.md (orphans)

## Hero images (public/images/blog/)
~20 product photos sourced from manufacturers (Thermobreak, Thai PPR,
thaiconsupply) plus Nano Banana Pro infographics. All resized to
3:2 aspect ratio per user preference. Source folder preserved for
re-derivation.

## Astro layout/SEO work
- src/components/seo/SEO.astro, JsonLd.astro (new SEO components)
- src/layouts/BaseLayout.astro, Layout.astro (OG/Twitter/JSON-LD wiring)
- src/pages/404.astro
- Product pages (8): added #pricelist anchors + schema work
- src/styles/global.css: scroll-padding for sticky-header anchors

## Automation scripts (scripts/)
- build_og_image.py (OG image builder)
- inject_faq_schema.py, inject_product_schema.py (JSON-LD injection)

## Misc
- public/robots.txt, public/images/og/default-og.jpg
- .gitignore: exclude scripts/__pycache__/
2026-06-08 12:45:32 +07:00
Kunthawat Greethong
c8cf03a725 Add EmDash CMS blog + hero standardization + seed fix
- Add EmDash CMS integration with SQLite and local storage
- Add blog collection (seed/seed.json) with 3 sample posts
- Add /บทความ list page and /บทความ/[slug] detail page
- Add blog section to homepage
- Fix reserved field slugs (slug, published_at removed from fields)
- Fix date field mapping (publishedAt camelCase)
- Fix featured image URL for admin-uploaded images (meta.storageKey)
- Standardize all product page hero sections
- Update navigation with 'บทความ' link
- Configure Google OAuth provider
2026-06-01 15:44:02 +07:00
Kunthawat Greethong
f12f84cf52 Add sticky wrapper to pages with img-hover class 2026-05-24 20:11:00 +07:00
Kunthawat Greethong
f9161ab984 Standardize hero grid to items-start for all product pages 2026-05-24 20:07:20 +07:00
Kunthawat Greethong
67c53fa421 Fix broken overflow-hidden pattern in all product pages 2026-05-24 19:37:51 +07:00
Kunthawat Greethong
e82f4b39f2 Fix animated hero background position and update Header menu
1. Fixed animated hero background - now inside the hero section with proper class structure
2. Changed อุปกรณ์ดับเพลิง to ตู้ดับเพลิง in Header main menu
2026-05-24 11:57:17 +07:00
Kunthawat Greethong
b4a41c3ed4 Add animated hero background to all product pages
All 30 pages now have the same animated hero effect:
- Mesh gradient blur animation (animate-mesh-1)
- Floating particles
- Water wave SVG animations

Pages updated include ท่อ-ppr-scg, ท่อ-ppr-thai-ppr, ท่อ-hdpe, ท่อ-upvc, ท่อ-xy-lent, เม็กกรู๊ฟ-คับปลิ้ง, water-treatment, อุปกรณ์ปรับอากาศ, ตู้ดับเพลิง, realflex, เทอร์โมเบรค-thermobreak, รั้วเทวดา, ระบบรั้วไวน์แมน
2026-05-23 20:36:39 +07:00
Kunthawat Greethong
67d84b09b1 Fix hero image path in อุปกรณ์ปรับอากาศ page 2026-05-22 18:29:29 +07:00
Kunthawat Greethong
286a011f1c Fix missing product images across all pages
- Fixed รั้วเทวดา page: Replaced รุ่นสินค้า section with gallery of actual photos from LINE album
- Fixed ระบบรั้วไวน์แมน page: Changed all SVG refs to JPG
- Fixed ท่อ-upvc, ท่อ-xy-lent, ระบบน้ำ pages
- Fixed วาล์ว-valve, อุปกรณ์ดับเพลิง, อุปกรณ์ปรับอากาศ pages
- Fixed เครื่องเชื่อม-ppr, เทอร์โมเบรค-thermobreak, เม็กกรู๊ฟ-คับปลิ้ง pages
- Copied รั้วเทวดา images to public/images/tevada/
2026-05-22 18:21:52 +07:00
Kunthawat Greethong
882fa7f819 Update insulation brand pages (Armaflex, Aeroflex, Maxflex)
- Added 3 new brand pages: armflex.astro, aeroflex.astro, maxflex.astro
- Updated hero images with product photos from 3t-insulation.com
- Enhanced content with product specifications and benefits
- Added standard certifications (FM Approved, UL 94, GREENGUARD)
- Added product gallery sections
- Shortened menu names to brand only (Armaflex, Aeroflex, Maxflex)
- Removed old ฉนวนหุ้มท่อ.astro page
- Updated Header and BaseLayout navigation
- Downloaded product images for all 3 brands
2026-05-22 12:50:17 +07:00
Kunthawat Greethong
5219cf8f72 Part 1: Source code - Astro project structure and components 2026-05-21 16:33:59 +07:00