Below is a compact, practical guide with ready-to-use prompt templates and examples you can drop into ChatGPT (or other LLMs) to generate SEO-friendly copy and import-ready data for PrestaShop products, categories and CMS pages.
Principles for perfect prompts
- Be explicit about the fields you need and the exact format (CSV/JSON/Markdown/HTML). LLMs follow formatting instructions best.
- Provide product-specific data (brand, specs, target keywords, audience, tone, word limits, special features). The richer the context, the better the result.
- Ask for structured output (CSV columns, JSON keys, or table) matching PrestaShop import fields so you can paste or import directly.
- Specify SEO constraints: meta title length (~50–60 chars), meta description (~140–160 chars), friendly URL rules (lowercase, hyphens, no special characters), and alt text.
- Request multiple lengths/variants (short title, long title, short desc, long desc, marketing bullets) and translation if needed.
- Ask for HTML-safe output for long descriptions (allowed tags like
,
, - , ) or plain text if you import differently.
- For bulk jobs, request CSV-ready rows or JSON array with exact field names.
Key PrestaShop fields to include
- Name (product name)
- Reference / SKU
- Friendly URL (slug)
- Meta title
- Meta description
- Short description (used on listing)
- Description (HTML)
- Tags
- Categories (one or list)
- Images (filenames)
- Price (tax excl/incl)
- Quantity / stock
- Manufacturer / Supplier
- Condition (new/refurbished/used)
- Visibility (everywhere/search/catalog)
- Combinations/attributes (color/size) — provide combination values and stock
- Weight, Dimensions, Shipping, Additional shipping costs
- Features / Specifications
- Attachment links (manuals)
- Image ALT text
Product prompt templates
1) Single product — SEO & import-ready JSON
Prompt:
You are an e-commerce SEO copywriter for a PrestaShop store selling [category]. Generate import-ready JSON for one product using these source details:
- Name: {{NAME}}
- Brand: {{BRAND}}
- SKU/reference: {{SKU}}
- Target keywords: {{KEYWORDS}} (comma-separated)
- Short features: {{FEATURES}} (bullet list)
- Technical specs: {{SPECS}} (key:value pairs)
- Price (tax excl): {{PRICE}}
- Categories: [{{CATEGORY1}}, {{CATEGORY2}}]
- Images: [{{img1.jpg}}, {{img2.jpg}}]
Output requirements:
- Return only valid JSON with these keys: name, reference, friendly_url, meta_title, meta_description, short_description (plain text, ≤300 chars), description (HTML, use
,
, - , with persuasive copy), tags (array), categories (array), images (array), image_alts (array), price_tax_excl, quantity, manufacturer, condition, visibility.
- Meta title ≤60 chars, meta description ≤160 chars.
- Friendly URL: lowercase, hyphen-separated, no special chars.
- Include a 5-bullet marketing list, a 250–400 word long description, a 40–80 word short description, and a JSON object "specs" with technical specs.
- Do not add explanations — output only the JSON.
Example of how to call it:
(Then insert above with real data.)
2) Single product — CSV row
Prompt:
Produce a single comma-separated line (CSV) that matches these headers (no header line): "Name,Reference,Friendly URL,Meta title,Meta description,Short description,Description,Tags,Categories,Images,Image alts,Price (tax excl),Quantity,Manufacturer,Condition,Visibility". Use these values: Name={{NAME}}, Brand={{BRAND}}, SK={{SKU}}, Keywords={{KEYWORDS}}, Specs={{SPECS}}, Price={{PRICE}}. Ensure commas in fields are escaped with quotes. Meta rules as above. Output only one CSV line.
Category prompt template
Prompt:
You are a content writer for an ecommerce category page. For the category "{{CATEGORY_NAME}}" targeting keywords "{{KEYWORDS}}", write:
- Meta title (≤60 chars)
- Meta description (≤160 chars)
- Friendly URL (slug)
- Short description (100–200 words, plain text)
- Long description (HTML, 250–500 words, include 2–3 H2 headings and an unordered list of benefits)
- Suggested subcategories (list of 5)
- Suggested product tags (comma-separated)
Produce output labelled fields (like Meta title: ...), or output as JSON if requested.
CMS page (About / Help / Shipping) prompt template
Prompt:
You are a UX-focused copywriter creating a PrestaShop CMS page for "{{PAGE_TITLE}}" (purpose: {{PURPOSE}}, e.g., shipping policy, returns, about us). Requirements:
- Meta title ≤60 chars; meta description ≤160 chars; friendly URL slug.
- Headline (H1)
- Intro paragraph (35–60 words)
- 3–5 subheadings with 60–120 word sections each; include an FAQ with 3 Q&A if applicable.
- Tone: {{TONE}} (e.g., friendly professional)
- Add internal links suggestions: "Link to categories: X, Y" or to specific products using slugs (optional).
- Output in HTML using
, ,
,
, - , and standard safe markup.
Examples (short)
Product example prompt filled (for quick copy/paste)
You are an e‑commerce SEO writer. Generate JSON for one PrestaShop product. Source:
- Name: "GlowPro LED Desk Lamp"
- Brand: "GlowPro"
- SKU: "GP-LAMP-01"
- Keywords: "LED desk lamp, adjustable desk lamp, eye care lamp"
- Features: "Adjustable arm; 3 color temps; USB-C charging"
- Specs: "Power: 10W; ColorTemps: 2700K-5000K; Warranty: 2 years"
- Price: 39.99
- Categories: ["Office Lighting", "Desks & Lamps"]
- Images: ["gp-lamp-01.jpg", "gp-lamp-01-side.jpg"]
Requirements:
- Provide only JSON with keys: name, reference, friendly_url, meta_title, meta_description, short_description, description, tags (array), categories (array), images (array), image_alts (array), price_tax_excl, quantity, manufacturer, condition, visibility, specs (object).
- Meta title ≤60 chars; meta description ≤160 chars.
- Short description ≤200 words; long description 200–350 words in HTML.
(LLM should return the described JSON)
Tips for title, meta, URLs, and descriptions
- Meta title: include brand + main keyword near start, keep ≤60 chars.
- Meta description: make it actionable with a CTA, ≤160 chars.
- Friendly URL: use product name simplified (lowercase, hyphens, no stop punctuation).
- Short description: 1–3 lines, focused benefits and a call-to-action.
- Long description: mix benefits and specs, use HTML lists for scanning and include keyword variations naturally.
- Image alt text: describe image + main keyword, ≤100 chars.
Combinations / variants prompt
Prompt:
Given attributes: Color = [Red, Blue, Black], Size = [S,M,L], generate CSV lines or JSON array with combinations containing: sku, combination_name (e.g., "Red / S"), price_adjustment, quantity, reference, ean13 (optional). Ensure friendly naming, unique SKUs, and stock levels per variant.
Bulk generation workflow
- Prepare a spreadsheet with core columns you know (name, sku, brand, keywords, raw specs).
- Use a prompt that takes each row as variables and returns a CSV row matching PrestaShop import columns.
- For thousands of SKUs, run chunked batches (e.g., 50 rows at a time) and validate the CSV encoding/escaping.
Refinement prompts
- Ask LLM to produce 3 meta title variants and 3 meta description variants.
- Ask for tone adjustments: "Make it more playful / professional / technical".
- Ask for translations: "Translate the JSON output into French (do not change field names)."
Quality checks before import
- Validate CSV/JSON structure.
- Check meta lengths and friendly URL compliance.
- Remove unsupported HTML from description imports.
- Avoid duplicate content across products; request unique angles and features.
- Check special characters and encoding (UTF-8).
Example final prompt to copy
You can copy-paste this as a template and replace the placeholders:
You are an e-commerce SEO copywriter for a PrestaShop store. Using the product data below, produce a single JSON object exactly with keys:
name, reference, friendly_url, meta_title, meta_description, short_description, description, tags, categories, images, image_alts, price_tax_excl, quantity, manufacturer, condition, visibility, specs.
Product data:
- Name: {{NAME}}
- Brand: {{BRAND}}
- SKU: {{SKU}}
- Keywords: {{KEYWORDS}}
- Features: {{FEATURES}}
- Specs: {{SPECS}}
- Price: {{PRICE}}
- Categories: [{{CATEGORY1}},{{CATEGORY2}}]
- Images: [{{IMG1}},{{IMG2}}]
Rules:
- Meta title ≤60 chars; meta description ≤160 chars.
- Friendly URL: lowercase, hyphen-separated.
- Short description: 40–80 words, plain text.
- Description: 200–350 words, HTML using
,
, - , include 4 marketing bullets and a specs table as an HTML
.
- Tags: array of 5 tags.
- Images: filenames only; image_alts: short alt texts (one per image).
- specs: JSON object with the provided technical specs.
- Output only the JSON (no explanations).
Final notes
- If you use PrestaShop Manager or the PrestaShop CSV import, map the LLM output fields to the import template columns.
- Use “temperature” lower (0.2–0.5) for consistent, factual outputs; higher for marketing creativity.
- Keep prompts consistent for bulk runs to ensure uniformity.
If you want, paste a real product (or sample rows) and I’ll produce the exact JSON/CSV output ready for PrestaShop import.