Below is a compact, practical guide with ready-to-use prompt templates and examples you can use with ChatGPT (or any LLM) to generate or edit PrestaShop product pages, category pages and CMS pages. It focuses on getting accurate, SEO-friendly, import-ready content and avoiding hallucinations.
Quick checklist — what to include in every prompt
- Role + output format: tell the model it’s a product copywriter / SEO writer and exactly what format to return (HTML, JSON, CSV).
- Source data: supply product attributes (name, SKU, brand, features, materials, dimensions, weight, price, stock, variants, images, category, tags).
- Constraints: word counts, SEO targets, tone, language, do-not-invent rule (“Do not invent specs or features; respond ‘Not provided’ when data missing”).
- SEO fields: meta title (50–60 chars), meta description (120–160 chars), friendly URL (slug), H1, alt text for images, keywords.
- Output structure: map to PrestaShop fields: name, link_rewrite, short_description, description, meta_title, meta_description, meta_keywords, tags, supplier/manufacturer, condition, price.
- Safety: require fact-check step or a “sources” note if content derived from external text.
- Bulk: indicate CSV/JSON schema for import-ready outputs.
General system prompt template (use as system message)
You are an expert e-commerce copywriter and SEO specialist with experience writing PrestaShop product and category pages. Always follow the user instructions exactly. Do not invent product specifications. If required data is missing, write "Not provided" for that field. Provide output in the requested format and validate lengths for SEO fields. Use natural, persuasive, factual copy suitable for the target audience and language.
Product page prompt template
User: Generate a PrestaShop product record for import. Use this source data:
- product_name: {{product_name}}
- sku: {{sku}}
- brand: {{brand}}
- category: {{category}}
- price: {{price}}
- short_features: {{short_features}} (3–6 bullet points)
- long_features: {{long_features}} (detailed list/specs)
- materials: {{materials}}
- dimensions: {{dimensions}}
- weight: {{weight}}
- color/options: {{variants}}
- images: {{image_filenames}}
- target_audience: {{target_audience}} (e.g., “outdoor enthusiasts, age 25–45”)
- keywords: {{keywords}} (comma-separated)
- seo_tone: {{tone}} (e.g., “conversational”, “technical”, “luxury”)
- language: {{language_code}} (e.g., en, fr, es)
Constraints and output format:
1) Do not invent facts. If any field above is missing, write "Not provided".
2) Output JSON with these keys exactly:
- name
- link_rewrite (lowercase slug, hyphens, max 80 chars)
- short_description (HTML allowed, max 300 chars)
- description (HTML allowed, 150–450 words)
- meta_title (50–60 chars, include primary keyword)
- meta_description (120–160 chars, include primary keyword)
- meta_keywords (comma-separated from keywords)
- tags (comma-separated)
- manufacturer
- sku
- price (numeric)
- condition (new/refurbished)
- weight
- dimensions
- images (array of filenames)
- image_alts (array of alt texts matching images)
- features (array of bullet strings)
- technical_specs (key:value pairs)
- internal_links (suggest up to 3 useful PrestaShop internal links with anchor text)
3) Tone: {{tone}}. Target audience: {{target_audience}}.
4) SEO: primary keyword = first item in keywords. Use it in meta title, meta description, H1 (name), and within the first paragraph.
5) If generating HTML for description, use 1 H2, 2–3 short paragraphs and a
for features.
6) Keep outputs concise and ready for import.
Example product prompt (filled)
- product_name: AlpinePro Trail Running Shoes
- sku: AP-TR-2026
- brand: AlpinePro
- category: Trail Shoes > Running
- price: 129.99
- short_features: Lightweight, Gore-Tex membrane, Vibram outsole
- long_features: 40mm stack, rock plate, breathable mesh, reinforced toe cap, removable insole
- materials: mesh, Gore-Tex, rubber
- dimensions: Not provided
- weight: 320g (size 42)
- variants: EU 39–46; colors: Black/Red, Grey/Blue
- images: alpinepro-front.jpg, alpinepro-side.jpg, alpinepro-sole.jpg
- target_audience: trail runners 20–45
- keywords: trail running shoes, Gore-Tex trail shoes, lightweight trail shoes
- tone: energetic
- language: en
Category page prompt template
User: Create a SEO-friendly PrestaShop category page for the category: {{category_name}}.
Include:
- short blurb (40–80 words) for category listing page (for grid views)
- full category description (200–400 words, for SEO-rich category page)
- meta_title (50–60 chars) and meta_description (120–160 chars)
- H1 (category name)
- suggested subcategories (up to 6)
- suggested internal links and sample anchor texts
- primary keywords (provided or choose from: {{keywords}})
Constraints:
- Tone: {{tone}}.
- Use primary keyword in H1, first sentence, meta_title, meta_description.
- Output as JSON with fields: name, link_rewrite, short_description, description, meta_title, meta_description, suggested_subcategories (array), internal_links (array of URL+anchor).
CMS page prompt template (About, Shipping, Returns, Guides)
User: Write a PrestaShop CMS page for "{{page_type}}" with these facts: {{facts}}. Provide:
- page title (H1)
- 1-sentence summary (for previews)
- full page content (400–900 words) with H2 sections and bullet lists where helpful
- meta_title (50–60 chars) and meta_description (120–160 chars)
- suggested internal links (3–5)
Constraints:
- Language: {{language}}
- Tone: {{tone}} (e.g., professional, friendly)
- Include FAQs (3–6 Q&A) at the bottom if page_type is “Shipping” or “Returns”.
- Output in HTML or JSON as specified.
Bulk CSV/JSON generation (for many products)
- Tell the model the exact CSV header order PrestaShop expects, or ask for JSON array with specific keys.
- Provide a sample row and a sample output row.
- Ask: “Return only the CSV content (no commentary) with columns: name,link_rewrite,short_description,description,meta_title,meta_description,meta_keywords,tags,manufacturer,sku,price,condition,weight,dimensions,images,image_alts,features,technical_specs,internal_links”
- For thousands of products, generate templates only and rely on programmatic merging in your pipeline. Example: use prompt to produce per-product JSON, then a script merges to CSV.
Few-shot example (helps quality)
- Provide 1–2 completed samples (input attributes + output) inside the prompt. LLM will mimic s.
Examples: short sample prompts and expected constraints
Example 1 — Product (short)
You are an SEO product copywriter. Using:
- Name: EcoBrew French Press 1L
- Brand: EcoHome
- Features: 1L borosilicate glass, stainless plunger, bamboo lid, dishwasher safe
- Images: ecobrew-1.jpg, ecobrew-2.jpg
- Keywords: french press, eco coffee maker, borosilicate french press
Produce JSON with fields: name, link_rewrite, short_description (max 200 chars), description (150–250 words, HTML allowed), meta_title (max 60 chars), meta_description (max 155 chars), images (filenames) and image_alts. Do not invent specs; if missing write "Not provided".
Example 2 — Category
Write a category description for "Camping Cookware" using keywords: camping cookware, backpacking stove, camp cookware set. Short blurb 50 words, full SEO description 250 words, meta fields, and 4 suggested subcategories.
Prevent hallucinations and keep facts accurate
- Always include "Do not invent" clause.
- If the model tends to hallucinate, add "Only use the attributes listed. If you need to ask a question because required data missing, respond with 'MISSING DATA: [field name]' instead of inventing."
- For complex specs (electronics, certifications), require a source URL or database record and instruct the model to cite that source in the output.
Tone/SEO variations
- Marketing: persuasive, benefits-first, 150–300 words, include CTA
- Technical: specs-first, plain language, include table of technical specs
- Minimal: 1–2 sentence short_description for category grids
Validation and QA steps (apply after generation)
- Check that meta_title length is 50–60 chars and meta_description is 120–160 chars.
- Verify link_rewrite for ASCII and no spaces; lowercase and replace non-alphanumerics with hyphens.
- Ensure no invented measurements, certifications or claims. If model wrote any, cross-check with source.
- Run outputs through a spell-check and brand-s guidelines.
Common prompt snippets to copy/paste
- “Do not invent features or specs. If a field is missing, return 'Not provided' for that field.”
- “Return only valid JSON/CSV content with no additional commentary.”
- “Include primary keyword in H1, first paragraph, meta_title, and meta_description.”
- “Generate alt text for each image: describe what the image shows and include the primary keyword when relevant.”
Final checklist before import
- Confirm every required PrestaShop field is present.
- Validate lengths and slug format.
- Confirm image filenames match files on your server/import package.
- Run a small import test (5–10 products/categories) and review live pages.
If you want, I can:
- Create a set of ready-made prompt templates with placeholders you can paste into your automation.
- Convert the product template into a JSON schema for bulk generation.
- Produce 3 live example outputs (product, category, CMS) using real sample data.
Which of the above would you like me to generate now?