Skip to main content

Image Options

Control which image size, how many images, and in what order your products appear in the Facebook and Instagram catalogue feed.

note

Available since v1.0.0

Overview

Every product entry in the feed requires at least one image URL. Facebook also accepts up to 10 additional image URLs per product through the additional_image_link field, which it uses to show more angles in dynamic ads and the shop catalogue.

The Images Options tab in the module configuration lets you decide which PrestaShop image format to serve, whether to verify that image files exist on disk before including them, how to encode URLs, and how many images to include per product. Getting these settings right affects both the quality of your ads and how long the feed takes to generate.

Images Options configuration panel in the Facebook Products Feed Back Office

Configuration

Go to Modules > Module Manager, find Facebook & Instagram Product Catalogue Feed Pro, and click Configure. Then click the Images Options tab.

FieldValuesDefaultDescription
Select image size to show with productsAny PS image type registered for productsfpf_image (if available)The PrestaShop thumbnail format used to build image URLs in the feed.
Disable check image existsEnabled / DisabledDisabledWhen disabled, the module verifies the physical file exists on disk before including the image. Enable to skip the check.
Disable image URL encodingEnabled / DisabledDisabledWhen disabled, the module applies iconv transliteration to strip non-ASCII characters from image URLs. Enable to preserve special characters as-is.
Disable Additional ImagesEnabled / DisabledDisabledWhen disabled, all extra product images are included as additional_image_link entries. Enable to export only the cover image.
Ignore cover?Enabled / DisabledDisabledWhen enabled, the module ignores the product's designated cover image and uses the first image by position order as the main image instead.
Images limitInteger0 (no limit)Maximum number of images (cover + additional) to include per product. Set to 0 to include all available images.
Image Position StartInteger0 (disabled)Position index to start from when selecting images. Set to 0 to start from the cover. Setting any value greater than 0 automatically enables Ignore cover.

Image size recommendation: Facebook performs best with square or near-square images. Choose an image type with an aspect ratio close to 1:1. If none of your existing types match, the module installs a dedicated fpf_image type — but you must regenerate thumbnails in PrestaShop (Design > Image Preferences) after selecting it.

How Each Setting Works

Image type selector

PrestaShop stores product images in multiple pre-generated sizes (thumbnails). The selector lists every image type registered for the "products" context. The module uses the selected type name when calling PrestaShop's getImageLink() to build the URL for each product.

If you select fpf_image, you need to regenerate thumbnails in your Back Office at least once — otherwise those files will not exist on disk and image errors will appear in the feed.

WebP and AVIF: PrestaShop can store images in WebP or AVIF depending on your image quality settings (Design > Image Preferences > Image Format). Facebook's catalogue importer does not reliably accept WebP or AVIF URLs for all ad formats. If you use a modern image format in your shop, enable Disable check image exists so the module does not silently skip images it cannot find as .jpg, and verify in Facebook Commerce Manager that images are being fetched correctly.

Disable check image exists

By default, before adding an image URL to the feed, the module checks whether the corresponding .jpg (or .png) file exists on the server's filesystem. This prevents broken image URLs from reaching Facebook.

Enable this setting in two situations:

  • Your shop uses a non-standard image format (WebP, AVIF, JPEG 2000, HEIC derivatives) where the module's existence check looks for a .jpg that is never there.
  • Your catalogue is very large and feed generation is slow — skipping the filesystem check speeds up generation noticeably.

Disable image URL encoding

By default, the module applies iconv UTF-8 transliteration to image URLs before writing them to the feed. This converts accented or special characters (common in product slugs from French, Spanish, German, and other languages) into their ASCII equivalents, producing cleaner URLs that are safe for all XML parsers.

Enable Disable image URL encoding if your image URLs already use proper percent-encoding or if transliteration is corrupting URLs in your specific locale.

Disable Additional Images

When disabled (the default), the module collects all images attached to a product beyond the cover and writes them as additional_image_link fields in the feed. Facebook accepts up to 10 additional_image_link values per product — the module enforces this cap automatically regardless of how many images a product has.

Enable this setting to omit additional images entirely and include only the cover. This can significantly reduce feed generation time for large catalogues with many images per product.

Ignore cover

When disabled (the default), the module uses the image marked as the product's cover in PrestaShop as the main image_link in the feed.

Enable Ignore cover to use the first image by position order instead, ignoring the cover flag. This is useful if your cover images are not the best-performing creative for ads but your positional ordering is.

Images limit

Set a number to cap how many images per product are written to the feed. The cover counts as the first image; additional images fill slots from position 2 onward. The cap applies before Facebook's own 10-image limit.

Leave at 0 to export all available images (Facebook still caps at 10 additional images).

Image Position Start

Enter a position number (1-based) to start image selection from that position in the product's image list, rather than from the first image. For example, entering 2 causes the module to use the second image (by position) as the main image_link and skip the first.

When this setting is greater than 0, Ignore cover is automatically activated — because the module is no longer using the cover image, and the cover option would be redundant.

Watch the Errors tab: If you set Image Position Start to a number higher than the total number of images some products have, those products will appear in the Errors tab under "Products with less than N images." The tab label dynamically reflects the configured start value.

Usage Examples

Example: Large catalogue with WebP images Your shop is configured to generate WebP images. The module's filesystem check looks for .jpg files and marks hundreds of products as having missing images. Enable Disable check image exists so URLs are included regardless of format, and verify in Facebook Commerce Manager that the images load correctly.

Example: Fashion catalogue — skip lifestyle cover, use clean product shot Your products have a lifestyle photo as the cover but the second image is a clean product-on-white. Set Image Position Start to 2. The module will use position 2 as image_link across all products and automatically enable Ignore cover.

Example: Speed up generation for 50,000 products Your feed takes 40 minutes to generate. Enable Disable Additional Images to skip the per-product image collection loop, and enable Disable check image exists to skip filesystem lookups. These two changes typically cut generation time by 20–40% for large catalogues.

Important Notes

  • Facebook's additional_image_link cap is 10 images. The module enforces this hard limit in FeedImage::getAdditionalImages() regardless of your Images limit setting.
  • If you use combinations (product variants), images assigned to a specific combination are used for that variant's entries. If no combination-specific images exist, the product's shared images are used instead.
  • Image URLs always use your shop's SSL domain when SSL is enabled (PS_SSL_ENABLED). If your image domain differs from your shop domain (e.g., a CDN), the module corrects the host portion of the URL to match the current shop's domain.
  • These settings are per-shop in multi-shop configurations. Adjust them separately for each shop context.

Troubleshooting

ProblemSolution
Many image errors in the Errors tab even though products have imagesEnable Disable check image exists — your images may be stored in WebP or AVIF format, which the filesystem check does not find.
Image URLs contain garbled characters or fail to loadDisable Disable image URL encoding (i.e., keep encoding enabled) so the module strips non-ASCII characters from URLs.
Feed generation is very slow for a large catalogueEnable Disable Additional Images and/or Disable check image exists to skip the most time-consuming per-image operations.
Facebook shows the wrong image as the product coverEnable Ignore cover if your cover designation in PrestaShop does not match the image you want Facebook to use, or use Image Position Start to select a specific position.
Products disappear from the feed after setting Image Position StartThose products have fewer images than the start position requires. Lower the value or add more images to affected products.
Selected fpf_image type but images are broken in the feedYou must regenerate thumbnails in PrestaShop (Design > Image Preferences > Regenerate thumbnails) after selecting fpf_image.

Frequently Asked Questions

What image size should I choose for Facebook ads?

Facebook recommends images with an aspect ratio of 1:1 (square). Look at the image types listed in the selector and choose one whose dimensions are close to square, typically 800×800 px or larger. Avoid very wide banner formats as Facebook may crop or reject them.

Does Facebook accept WebP images in the catalogue feed?

Facebook's catalogue importer can fetch WebP images from a URL, but support varies by ad format and placement. If you have doubts, keep your PrestaShop image quality setting on JPEG and use a .jpg image type so the feed always points to JPEG files.

Why does enabling Image Position Start automatically turn on Ignore cover?

When you tell the module to start from a specific image position, the cover designation becomes irrelevant — the module is selecting by order, not by the cover flag. The module enables Ignore cover automatically to avoid a conflict between the two settings.

Can I include more than 10 additional images per product?

No. Facebook's feed specification allows a maximum of 10 additional_image_link values per product. The module enforces this limit and stops adding images once 10 have been collected, regardless of how many images the product has in PrestaShop.

Will disabling the image existence check cause broken URLs in Facebook?

Only if the image files genuinely do not exist. The check is a safety filter — disabling it means the module trusts that all image URLs it builds are valid. If your images do exist but in a non-standard format (WebP, AVIF), disabling the check is the correct solution. If images are truly missing, they will produce errors in Facebook Commerce Manager instead.

How does Image Position Start interact with combination images?

For combinations, the module first looks for images assigned to the specific combination. If found, FPF_IMG_START is applied to that combination's image list via array_slice. If no combination-specific images exist, the product's shared image list is used with the same start offset.