The plugin lets you attach any number of files with descriptions to every product — manuals, drivers, firmware, certificates, drawings. The file list appears on the product page, so customers download what they need without contacting your support.
Drop files onto the product page or pick them in the usual file dialog. A progress bar shows the upload status.
A manual shared across a product line is uploaded once and attached to every product that needs it by searching its filename.
Reorder files by dragging them — customers see the list exactly in the order you set.
The storefront markup of the file list lives in a regular template file inside your theme folder, so your edits survive plugin updates.
The plugin adds an “Attached files” section to the product page. It works in both the new and the legacy product editor.
A file attached to several products is stored on disk only once, yet its description and position in the list are kept separately for each product.
The file list is rendered on the product page at the position your design theme reserves for the frontend_product.block or frontend_product.block_aux hook. Which one to use is chosen in the plugin settings.
To change the markup of the file list, put a
plugin.syrattach.attachments.htmlfile into the folder of your active design theme. The plugin picks it up automatically, and a plugin update never touches it. If the theme has no such file, the built-in template is used.
Inside the template the $attachments variable holds the data of the attached files:
$attachments = array(
array(
'id' => $id, /* attachment ID */
'file_id' => $file_id, /* file ID */
'name' => $name, /* file name */
'ext' => $ext, /* file extension */
'description' => $desc, /* file description */
'size' => $size, /* file size in bytes */
'url' => $url /* file URL */
),
);
If you need the file list somewhere other than the hook position, call the plugin's view helper anywhere in the product template. It returns either ready-made HTML or an array of file data you can lay out entirely yourself.
{* ready-made HTML from the plugin or design theme template *}
{$wa->shop->syrattachPlugin->render($product.id)}
{* file array for your own markup *}
{$files = $wa->shop->syrattachPlugin->getList($product.id)}
Such a call is safe: if the plugin is disabled or removed, the template will not break. The legacy helper call syntax is supported as well.
When importing products from CSV, files can be attached right away instead of opening product pages one by one.
wa-data/public/site/syrattach folder on the server — for example, in the file manager of the Site appwa-data/public/site/syrattach into that columnThe file must be located strictly in that folder: URLs and nested folders are not supported. The import never deletes anything — on a repeated import, and whenever a file name is already taken, the existing file is not overwritten and the new one is added under a modified name. Once the import is over, the contents of
wa-data/public/site/syrattachcan be deleted.
The limit comes from the server your store runs on, not from the plugin. If a file fails to upload, check the upload_max_filesize, post_max_size and memory_limit values in php.ini. The plugin shows the effective limit right in the upload area.
The plugin interface is localized into English, Russian, Ukrainian, Belarusian, Kazakh, German, Dutch and French.
The ability to add and edit reviews in the backend
7 days free
Google Merchant Center & Shopping product feed
7 days free