moonming opened a new pull request, #2002:
URL: https://github.com/apache/apisix-website/pull/2002

   ## Summary
   
   Comprehensive SEO improvements based on a full site audit of 
https://apisix.apache.org/.
   
   ## Changes
   
   ### P0: Broken Link Detection
   - Changed `onBrokenLinks` from `'ignore'` to `'log'` and 
`onBrokenMarkdownLinks` from `'ignore'` to `'warn'` in all 4 Docusaurus config 
files (website, doc, blog-en, blog-zh)
   - This surfaces broken links during builds instead of silently ignoring them
   
   ### P1: Meta Descriptions
   - Added unique `<meta name="description">` and `<meta 
property="og:description">` to 6 pages that previously had none:
     - `/docs` — Documentation hub
     - `/plugins` — Plugin Hub
     - `/downloads` — Downloads page
     - `/help` — Help page
     - `/showcase` — Showcase page
     - `/team` — Team page
   
   ### P1: Twitter Card Upgrade
   - Changed `twitter:card` from `summary` to `summary_large_image` in all 4 
Docusaurus configs
   - This displays a large preview image when links are shared on Twitter/X, 
improving CTR
   
   ### P1: Structured Data (Schema.org)
   - Expanded `config/schema-org.js` from a single `WebSite` schema to include:
     - `WebSite` with `SearchAction` (enables Google sitelinks search box)
     - `Organization` with logo and `sameAs` links (GitHub, Twitter, YouTube)
     - `SoftwareApplication` with description, category, license, and free offer
   
   ### P2: Image Accessibility
   - Fixed empty `alt=""` attributes on AI Gateway page images:
     - `Hero.tsx`: Added descriptive alt text for the architecture overview 
image
     - `Advantage.tsx`: Added descriptive alt text for the plugin icons image
   
   ### P2: robots.txt
   - Added `Disallow` rules for low-value pages that waste crawl budget:
     - `/blog/tags/`, `/zh/blog/tags/` (tag listing pages)
     - `/blog/page/`, `/zh/blog/page/` (blog pagination pages)
     - `/search`, `/zh/search` (search results pages)
   
   ### P2: 302 → 301 Redirects
   - Changed 4 `RedirectMatch 302` rules to `301` in `.htaccess` for permanent 
content redirects (getting-started and 3.2 plugins)
   - Social media redirects (`/twitter`, `/youtube`, `/slack`) intentionally 
kept as 302
   
   ## Files Changed (15 files)
   
   | File | Change |
   |------|--------|
   | `.htaccess` | 302 → 301 redirects |
   | `blog/en/docusaurus.config.js` | onBrokenLinks + twitter:card |
   | `blog/zh/docusaurus.config.js` | onBrokenLinks + twitter:card |
   | `config/schema-org.js` | Expanded structured data |
   | `doc/docusaurus.config.js` | onBrokenLinks + twitter:card |
   | `website/docusaurus.config.js` | onBrokenLinks + twitter:card |
   | `website/src/components/AIGateway/Advantage.tsx` | Alt text fix |
   | `website/src/components/AIGateway/Hero.tsx` | Alt text fix |
   | `website/src/pages/docs.tsx` | Meta description |
   | `website/src/pages/downloads.tsx` | Meta description |
   | `website/src/pages/help.tsx` | Meta description |
   | `website/src/pages/plugins.tsx` | Meta description |
   | `website/src/pages/showcase.tsx` | Meta description |
   | `website/src/pages/team.tsx` | Meta description |
   | `website/static/robots.txt` | Disallow rules |
   
   ## Not Included (requires manual work)
   
   - **Font OTF → WOFF2**: Fonts are hosted on external CDN 
(`static.apiseven.com`) as OTF; converting requires obtaining source files, 
converting, and re-uploading
   - **Docusaurus upgrade to v3**: Major framework upgrade requiring extensive 
testing


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to