<?xml version="1.0"?>
<rss version="2.0"><channel><title>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x442;&#x435;&#x43C;&#x44B;: Facebook &#x442;&#x430; Instagram &#x440;&#x435;&#x43A;&#x43B;&#x430;&#x43C;&#x430;</title><link>https://forum.opencart.pro/forum/61-facebook-instagram-reklama/</link><description>&#x41F;&#x43E;&#x441;&#x43B;&#x435;&#x434;&#x43D;&#x438;&#x435; &#x442;&#x435;&#x43C;&#x44B;: Facebook &#x442;&#x430; Instagram &#x440;&#x435;&#x43A;&#x43B;&#x430;&#x43C;&#x430;</description><language>ru</language><item><title>&#x420;&#x435;&#x43A;&#x43B;&#x430;&#x43C;&#x430; Facebook &#x442;&#x430; Instagram &#x434;&#x43B;&#x44F; OpenCart: Meta &#x43F;&#x456;&#x43A;&#x441;&#x435;&#x43B;&#x44C;, Conversions API, &#x43A;&#x430;&#x442;&#x430;&#x43B;&#x43E;&#x433; &#x442;&#x43E;&#x432;&#x430;&#x440;&#x456;&#x432; &#x456; &#x440;&#x435;&#x43C;&#x430;&#x440;&#x43A;&#x435;&#x442;&#x438;&#x43D;&#x433; &#x434;&#x43B;&#x44F; &#x456;&#x43D;&#x442;&#x435;&#x440;&#x43D;&#x435;&#x442;-&#x43C;&#x430;&#x433;&#x430;&#x437;&#x438;&#x43D;&#x443;</title><link>https://forum.opencart.pro/topic/21092-%D1%80%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%B0-facebook-%D1%82%D0%B0-instagram-%D0%B4%D0%BB%D1%8F-opencart-meta-%D0%BF%D1%96%D0%BA%D1%81%D0%B5%D0%BB%D1%8C-conversions-api-%D0%BA%D0%B0%D1%82%D0%B0%D0%BB%D0%BE%D0%B3-%D1%82%D0%BE%D0%B2%D0%B0%D1%80%D1%96%D0%B2-%D1%96-%D1%80%D0%B5%D0%BC%D0%B0%D1%80%D0%BA%D0%B5%D1%82%D0%B8%D0%BD%D0%B3-%D0%B4%D0%BB%D1%8F-%D1%96%D0%BD%D1%82%D0%B5%D1%80%D0%BD%D0%B5%D1%82-%D0%BC%D0%B0%D0%B3%D0%B0%D0%B7%D0%B8%D0%BD%D1%83/</link><description><![CDATA[<p><strong>Реклама у Facebook та Instagram для інтернет-магазину на OpenCart тримається на трьох різних речах: Meta піксель у браузері, Conversions API на сервері і товарний каталог у Commerce Manager.</strong> <strong>Правильна дедуплікація подій між пікселем і CAPI, коректні ідентифікатори товарів у каталозі та живі аудиторії ремаркетингу визначають, чи буде реклама рахуватись коректно і чи повернуться в магазин витрачені на неї гроші.</strong></p>

<p>Питання, яке я чую частіше за всі інші разом: «в Ads Manager сорок покупок, в адмінці дванадцять, хто бреше». Ніхто не бреше. Але причин тут дві, вони зовсім різні, і плутають їх постійно.</p>

<p>Перша причина нормальна і лікуванню не підлягає: Meta рахує конверсії у своєму вікні атрибуції, а магазин рахує факт замовлення. Ці числа не зійдуться ніколи, і не мають.</p>

<p>Друга причина це справжня поломка, і вона трапляється в кожному другому магазині, де хтось «підключив серверні події». Одна покупка пішла в Meta двома різними шляхами, і Meta не зрозуміла, що це одна покупка. Далі ви оптимізуєте кампанії по подвоєному доходу, піднімаєте ставки під цифру, якої не існує, і дивуєтесь, чому прибуток падає при зростанні ROAS.</p>

<p>Ця стаття про те, як влаштована ця конструкція і де вона рветься.</p>

<figure class="illo"><img alt="hero_meta" src="https://forum.opencart.pro/uploads/ocbox_meta/meta1.jpg"></figure>

<hr>

<h2>Meta піксель, Conversions API і каталог товарів: три різні системи Facebook-реклами</h2>

<p>«Реклама у Фейсбуці» в голові власника магазину це одна річ. Насправді їх три, і кожна вміє ламатись окремо.</p>

<figure class="chart"><img alt="m5" src="https://forum.opencart.pro/uploads/ocbox_meta/meta2.png"></figure>

<p><strong>Каталог товарів</strong> це ваш склад усередині Meta. Живе в Commerce Manager, наповнюється фідом і сам по собі не коштує нічого. Саме з нього беруться товари для динамічних оголошень і для позначок товарів у постах.</p>

<p><strong>Піксель Meta разом з Conversions API</strong> це памʼять. Хто який товар дивився, хто поклав у кошик, хто оплатив. Без цього шару не буде ні ремаркетингу, ні схожих аудиторій, ні нормальної оптимізації, бо алгоритму нема на чому вчитися.</p>

<p><strong>Ads Manager</strong> це каса: бюджети, аудиторії, креативи, звіти.</p>

<p>Далі майже все цікаве відбувається у другому блоці, тому з нього і почнемо.</p>

<hr>

<h2>Чому подія Meta пікселя дублюється з Conversions API</h2>

<p>Колись вистачало пікселя в браузері. Зараз не вистачає, і причини прозаїчні: блокувальники реклами, обмеження браузерів на сторонні скрипти, налаштування приватності, банальна закрита вкладка на середині оплати. Частина подій просто не доходить.</p>

<p>Тому події дублюють: той самий факт відправляють і з браузера пікселем, і з вашого сервера через Conversions API. Логіка здорова, у Meta більше шансів зібрати повну картину.</p>

<p>Але з цього моменту у вас є рівно одна серйозна задача: пояснити Meta, що це <strong>одна</strong> подія, а не дві.</p>

<hr>

<h2>Дедуплікація подій Meta: eventID пікселя і event_id Conversions API</h2>

<p>У документації Meta спосіб описаний прямо. Основний і рекомендований: <a href="https://developers.facebook.com/docs/marketing-api/conversions-api/deduplicate-pixel-and-server-events" rel="external nofollow" target="_blank">параметр <code>eventID</code> пікселя має збігатися з <code>event_id</code> у Conversions API, а подія <code>event</code> пікселя з <code>event_name</code> на сервері</a>. Два поля, обидва мають збігтися.</p>

<p>Є і запасний спосіб, за комбінацією <code>event_name</code> плюс <code>fbp</code> або <code>external_id</code>. Але у нього в тій самій довідці є обмеження, про яке варто знати: він працює <strong>тільки для подій, надісланих спершу з браузера, а потім із сервера</strong>. Якщо у вас сервер відпрацював перший, дедуплікації не буде.</p>

<p>Ось як це виглядає в грошах.</p>

<figure class="chart"><img alt="m1" src="https://forum.opencart.pro/uploads/ocbox_meta/meta3.png"></figure>

<p>Зверніть увагу на третій стовпчик. Це не теоретична страшилка, це найпоширеніший стан магазину, який «підключив серверку»: обидва канали працюють, обидва звітують, кожна покупка порахована двічі, дохід подвоєний. Найгірше тут те, що виглядає це не як поломка, а як успіх. ROAS красивий, кабінет радісний, і рівно тому ніхто не йде перевіряти.</p>

<hr>

<h2>Вікно дедуплікації Meta: 48 годин на злиття пікселя і Conversions API</h2>

<p>Тепер деталь, якої я майже ніколи не бачу в обговореннях, хоча вона вирішальна для серверних відправок.</p>

<figure class="illo"><img alt="window48" src="https://forum.opencart.pro/uploads/ocbox_meta/meta4.jpg"></figure>

<p>У тій самій довідці написано: <strong>події дедуплікуються, тільки якщо вони отримані протягом 48 годин</strong> від моменту, коли Meta отримала першу подію з цим <code>event_id</code>. Далі вікно закривається, і друга подія стає окремою покупкою.</p>

<figure class="chart"><img alt="m2" src="https://forum.opencart.pro/uploads/ocbox_meta/meta5.png"></figure>

<p>Кому це болить насправді. Якщо ваші серверні події не відправляються одразу, а складаються в чергу і вивантажуються завданням за розкладом, то затримка більша за дві доби перетворює вашу акуратну дедуплікацію на подвійний рахунок. Черга сама по собі нормальна і навіть корисна, просто вона не має накопичуватись добами.</p>

<p><em>Швидка перевірка:</em> подивіться, з якою періодичністю у вас іде серверна відправка. Якщо це раз на добу, ви ще в межах вікна, але запас у вас маленький. Якщо завдання інколи не відпрацьовує і події лежать по два-три дні, ви вже платите за дублі.</p>

<hr>

<h2>Параметри клієнта в Conversions API: як покращити зіставлення покупця</h2>

<p>Серверна подія має одну перевагу, заради якої все це й затівається: у момент оформлення замовлення магазин знає про людину набагато більше, ніж знає браузерний піксель. І це знання можна передати законно, у вигляді хешів.</p>

<p>Meta <a href="https://developers.facebook.com/docs/marketing-api/conversions-api/parameters/customer-information-parameters" rel="external nofollow" target="_blank">перелічує параметри для зіставлення</a> і чітко ділить їх на дві групи.</p>

<p><strong>Обовʼязково хешувати SHA256:</strong> пошта <code>em</code>, телефон <code>ph</code>, імʼя <code>fn</code>, прізвище <code>ln</code>, дата народження <code>db</code>, стать <code>ge</code>, місто <code>ct</code>, область <code>st</code>, індекс <code>zp</code>, країна <code>country</code>. Для <code>external_id</code> хешування рекомендоване.</p>

<p><strong>Хешувати НЕ можна:</strong> <code>client_ip_address</code>, <code>client_user_agent</code>, <code>fbc</code> і <code>fbp</code>. Останні два це значення з cookie <code>_fbc</code> і <code>_fbp</code>, і вони найцінніші, бо звʼязують людину з конкретним кліком по вашому оголошенню.</p>

<p>Нормалізація теж прописана і її люблять ігнорувати: пошту перед хешуванням привести до нижнього регістру і прибрати пробіли, телефон очистити від символів і провідних нулів та лишити з кодом країни. Захешували неправильно нормалізований телефон, і він просто ні з ким не зіставиться. Помилки при цьому ніхто не покаже.</p>

<figure class="chart"><img alt="m3" src="https://forum.opencart.pro/uploads/ocbox_meta/meta6.png"></figure>

<p>Практична суть цієї таблиці проста. Анонімний відвідувач на сторінці товару дає вам мінімум. Той самий відвідувач на кроці оформлення дає вже пошту, телефон, місто і країну. Якщо ви їх не передаєте, ви щодня викидаєте найточніші дані, які у вас взагалі бувають, і платите за гірше зіставлення.</p>

<hr>

<h2>Каталог товарів Meta для OpenCart: content_ids, content_type і динамічні оголошення</h2>

<p>Динамічні оголошення показують людині саме той товар, який вона дивилась. Щоб це працювало, Meta має впізнати товар, а впізнає вона його за ідентифікатором.</p>

<p>У довідці про <a href="https://developers.facebook.com/docs/meta-pixel/get-started/advantage-catalog-ads" rel="external nofollow" target="_blank">піксель для товарних оголошень</a> сказано без варіантів: <strong>ідентифікатори мають збігатися з тими, що у вашому каталозі</strong>. І перелічені три події, які зобовʼязані нести <code>content_ids</code> або <code>contents</code>: <code>ViewContent</code>, <code>AddToCart</code>, <code>Purchase</code>.</p>

<figure class="chart"><img alt="m4" src="https://forum.opencart.pro/uploads/ocbox_meta/meta7.png"></figure>

<p>Друге поле поруч, про яке забувають ще частіше. <a href="https://developers.facebook.com/docs/meta-pixel/reference" rel="external nofollow" target="_blank">Довідник пікселя</a> визначає <code>content_type</code> з двома значеннями, <code>product</code> і <code>product_group</code>, і прямо каже: якщо ви передаєте ідентифікатори груп товарів, значення має бути <code>product_group</code>.</p>

<p>Для OpenCart це не дрібниця. Щойно у вас зʼявляються опції розміру чи кольору, у фіді виникають варіанти, і питання «ви шлете ідентифікатор товару чи ідентифікатор групи» перестає бути теоретичним. Невідповідність тут не дає помилки. Вона просто робить динамічні оголошення звичайними.</p>

<hr>

<h2>Реклама в Instagram для OpenCart: один каталог, один піксель, один Conversions API</h2>

<figure class="illo"><img alt="instagram" src="https://forum.opencart.pro/uploads/ocbox_meta/meta8.jpg"></figure>

<p>Половина питань про Instagram зводиться до пошуку окремого рекламного кабінету, окремого пікселя і окремого каталогу. Їх нема, і це добра новина.</p>

<p>Instagram і Facebook це один рекламний механізм. Той самий каталог, той самий піксель, той самий Conversions API, ті самі аудиторії. Meta у своїй документації прямо <a href="https://developers.facebook.com/docs/commerce-platform/catalog/multiplatform" rel="external nofollow" target="_blank">рекомендує тримати один каталог на рекламу, Instagram і торгівлю</a>, щоб використовувати сигнали з усіх майданчиків разом. Тобто розводити їх по різних каталогах не просто зайва робота, а гірший результат.</p>

<p>Що справді відрізняється, так це формат і поведінка людини.</p>

<p><strong>Формат.</strong> Стрічка Facebook терпить горизонтальне і квадратне, Reels і Stories вимагають вертикального. Той самий банер, розтягнутий на вертикаль, читається як реклама, яку ліньки було зробити.</p>

<p><strong>Намір.</strong> У пошуку Google людина вже щось шукає. В Instagram вона нічого не шукає, вона гортає. Тому оголошення, яке в пошуку працює як відповідь на запит, тут має спрацювати як зупинка гортання. Це різна робота з креативом, а не різні налаштування кабінету.</p>

<p>Висновок для власника простий: не шукайте окремих налаштувань під Instagram. Налаштуйте каталог і події один раз, а різницю робіть у креативі.</p>

<hr>

<h2>Аудиторії ремаркетингу Meta і схожі аудиторії lookalike для OpenCart</h2>

<p>Аудиторія ремаркетингу з сайту наповнюється так само, як у Google: людина потрапила на сторінку з пікселем, підійшла під правило, опинилась у списку.</p>

<p>Про тривалість памʼяті в документації є неприємна деталь, і я скажу її як є. На <a href="https://developers.facebook.com/docs/marketing-api/audiences/guides/website-custom-audiences/" rel="external nofollow" target="_blank">сторінці про аудиторії з сайту</a> параметр <code>retention_days</code> описаний як значення <strong>від 1 до 180 днів</strong>, а нижче, у відповідях на питання тієї ж сторінки, згадується максимум у 365 днів. Документація Meta суперечить сама собі, тож орієнтуйтесь на те, що реально дозволить інтерфейс, і не переказуйте чуже число як істину.</p>

<p>Мінімального розміру аудиторії для показу Meta публічно не називає, на відміну від Google з його сотнею. Тому будь-яка кругла цифра, яку вам наведуть на форумі, це чийсь особистий досвід, а не правило.</p>

<p>А от де цифра є і вона тверда, так це схожі аудиторії. У <a href="https://developers.facebook.com/docs/marketing-api/audiences/guides/lookalike-audiences/" rel="external nofollow" target="_blank">довідці про lookalike</a> прямо: вихідна аудиторія має містити <strong>щонайменше 100 учасників</strong>, і щонайменше сто з них мають бути з однієї країни. Там же: Meta використовує <strong>до 180 днів</strong> минулих даних про конверсії.</p>

<p>Звідси практичний висновок, який економить місяць. Схожа аудиторія на базі покупців це майже завжди найкраща аудиторія в акаунті, але доти, доки у вас не назбиралось сто покупців, будувати її нема з чого. Спершу сто покупців, потім lookalike, а не навпаки.</p>

<hr>

<h2>Розбіжність замовлень у Ads Manager і адмінці OpenCart: атрибуція проти дублів</h2>

<p>Тепер, коли механіка зрозуміла, розберемо саме питання про сорок покупок проти дванадцяти.</p>

<p>Meta дивиться назад у часі. У <a href="https://developers.facebook.com/docs/marketing-api/reference/ads-action-stats/" rel="external nofollow" target="_blank">довіднику показників</a> перелічені вікна: один, сім і двадцять вісім днів після кліку, і так само один, сім і двадцять вісім днів після перегляду оголошення. Тобто покупка, яку людина зробила сьогодні, може бути приписана оголошенню, яке вона бачила два тижні тому.</p>

<p>Ваш магазин так не рахує. Він рахує замовлення в день замовлення. Тому:</p>

<p><strong>Розбіжність сама по собі це норма.</strong> Різні системи відповідають на різні питання. Meta відповідає «скільки продажів повʼязані з рекламою», магазин відповідає «скільки замовлень прийшло».</p>

<p><strong>А от кратна розбіжність це вже симптом.</strong> Сорок проти дванадцяти на невеликому обсязі варто перевірити не на атрибуцію, а на дублі. Спершу переконайтесь, що піксель і сервер шлють однаковий <code>event_id</code>, і лише потім міркуйте про вікна.</p>

<hr>

<h2>Типові проблеми Meta пікселя і Conversions API на OpenCart</h2>

<p>Короткий список того, що я бачу з магазину в магазин.</p>

<p><strong>1. Піксель і сервер без спільного <code>event_id</code>.</strong><br>
Найдорожча поломка з усіх, бо вона не виглядає поломкою. Дохід подвоєний, рішення приймаються по вигаданих числах.</p>

<p><strong>2. Подія покупки живе на сторінці подяки.</strong><br>
Покупець після оплати не повернувся, і продажу для Meta не існує. Дзеркально до першого пункту: там дублі, тут недолік.</p>

<p><strong>3. Серверні події їдуть з великою затримкою.</strong><br>
Черга накопичилась, вивантаження пройшло через три доби, вікно в 48 годин закрилось. Формально все налаштовано, фактично дублі.</p>

<p><strong>4. У серверну подію не кладуть дані покупця.</strong><br>
Магазин має пошту і телефон, а відправляє порожнечу. Зіставлення гірше, ніж могло б бути, і це видно по вартості результату.</p>

<p><strong>5. Ідентифікатори не збігаються з каталогом, або переданий не той <code>content_type</code>.</strong><br>
Динамічні оголошення тихо перестають бути динамічними.</p>

<hr>

<h2>OcBox AI Remarketing: Meta піксель, Conversions API і ремаркетинг для OpenCart без ручної збірки</h2>

<p>Ці пʼять пунктів і були причиною зібрати <a href="https://opencartforum.com/files/file/9672-ocbox-ai-remarketing-advanced-analytics/">OcBox AI Remarketing &amp; Advanced Analytics</a>. По Meta там зроблено рівно те, що описано вище, і я перерахую предметно, бо загальні слова тут нічого не варті.</p>

<p><strong>Дедуплікація зроблена так, як у документації.</strong> Піксель у браузері відправляє подію з <code>eventID</code>, серверна відправка йде з тим самим <code>event_id</code> і відповідним <code>event_name</code>. Тобто саме той основний спосіб, а не запасний через <code>fbp</code> з його обмеженням на порядок подій.</p>

<p><strong>Дані покупця передаються повністю.</strong> Хешовані: пошта, телефон, імʼя, прізвище, місто, область, індекс, країна, зовнішній ідентифікатор. Нехешовані, як і вимагає Meta: IP, user agent, а також <code>fbc</code> і <code>fbp</code> з cookie. Саме останні два найчастіше і забувають, хоча вони звʼязують покупку з конкретним кліком.</p>

<p><strong>Подія покупки відправляється з сервера в момент, коли замовлення отримує статус</strong>, а не зі сторінки подяки. Покупцю не треба повертатися з платіжного шлюзу. І ви самі обираєте, які статуси вважати продажем, тобто можете рахувати оплачені, а не просто створені замовлення.</p>

<p><strong>Згода на cookie врахована.</strong> Є банер і Consent Mode, де рекламна категорія керує саме пікселями, зокрема Meta. До згоди піксель не пише <code>_fbp</code>, після згоди накопичені події дошлються.</p>

<p>Сторінка модуля на форумі це вітрина з описом і журналом змін, файлів там нема. Доступ до завантаження надається після оплати, збірка компілюється під домен магазину.</p>

<hr>

<h2>Швидка перевірка Meta пікселя і Conversions API у Events Manager</h2>

<p>Відкрийте Events Manager, знайдіть подію Purchase і подивіться на джерела.</p>

<p>Якщо там і браузер, і сервер, ви маєте побачити, що частина подій позначена як дедупльовані. Якщо ви бачите два повноцінні потоки і жодної ознаки склеювання, у вас подвійний рахунок просто зараз, і всі рішення останніх місяців приймались по завищеному доходу.</p>

<p>Це десять хвилин роботи, і це та перевірка, яку варто зробити раніше, ніж чіпати бюджети.</p>

<p>Якщо після цієї перевірки виявиться, що дедуплікації нема, дані покупця в серверні події не летять, або серверні події їдуть із затримкою в кілька діб, ці пʼять типових поломок закриває <a href="https://opencartforum.com/files/file/9672-ocbox-ai-remarketing-advanced-analytics/">OcBox AI Remarketing &amp; Advanced Analytics</a> одним модулем, без ручної збірки пікселя і Conversions API під ваш OpenCart.</p>

<hr>

<h2>Часті питання</h2>

<h3>Що таке Meta піксель і навіщо він магазину на OpenCart</h3>

<p>Meta піксель це фрагмент JavaScript-коду, який ставиться в теми OpenCart і повідомляє Facebook, що зробив відвідувач: подивився товар, поклав у кошик, оформив замовлення. Без пікселя Meta не бачить, які саме дії людей на сайті випливають з реклами, тому не може ні коректно оптимізувати кампанії, ні зібрати аудиторії ремаркетингу, ні побудувати схожі аудиторії. Для магазину на OpenCart піксель це мінімальний рівень, без якого реклама у Facebook та Instagram працює наосліп.</p>

<h3>Чим Conversions API відрізняється від пікселя Meta</h3>

<p>Meta піксель відправляє події з браузера покупця, а Conversions API (CAPI) відправляє ті самі події з вашого сервера. Піксель втрачає частину подій через блокувальники реклами, обмеження браузерів на сторонні cookie і закриті вкладки. Conversions API цих обмежень не має, тому доносить до Meta ті події, які браузер втратив. У серверну подію можна покласти більше даних про покупця (пошта, телефон, місто), що покращує зіставлення і зменшує вартість результату. Правильна схема це не «замість пікселя», а піксель і CAPI разом плюс дедуплікація подій.</p>

<h3>Що таке дедуплікація подій Meta і чому вона важлива</h3>

<p>Дедуплікація це склеювання однієї покупки, яка приїхала в Meta двома шляхами (з пікселя і з Conversions API), в одну подію. Без неї Meta вважає це двома різними покупками, дохід у звітах подвоюється, ROAS завищений, і рекламодавець піднімає ставки під цифру, якої не існує. Meta склеює події за парою полів <code>eventID</code> пікселя і <code>event_id</code> Conversions API, за умови що обидві прийшли протягом 48 годин. Якщо серверні події їдуть черга раз на кілька діб, вікно закривається і дедуплікація перестає працювати.</p>

<h3>Скільки покупок треба, щоб працював ремаркетинг у Facebook</h3>

<p>Для звичайної аудиторії ремаркетингу «хто був на сайті» мінімум Meta публічно не оголошує, працює будь-який непорожній список. А от для схожих аудиторій lookalike вимога тверда: у вихідній аудиторії має бути щонайменше 100 учасників з однієї країни. Схожа аудиторія на базі покупців зазвичай найкращий варіант для магазину, але поки у вас не назбиралось сто оплачених замовлень, будувати lookalike нема з чого. Тому послідовність така: спершу піксель і CAPI, потім сто покупців, потім lookalike.</p>

<h3>Чому Meta піксель погано працює саме на OpenCart</h3>

<p>Найчастіші причини у магазинах на OpenCart: піксель і серверні події відправляються з різними ідентифікаторами, тому Meta не дедуплікує їх і рахує кожну покупку двічі; подія Purchase живе тільки на сторінці подяки, куди покупець після оплати часто не повертається; серверні події складаються в чергу і виїжджають раз на добу або рідше, вилітаючи за 48-годинне вікно дедуплікації; у серверну подію не кладуть хешовані дані покупця, які магазин має на момент замовлення; ідентифікатори товарів у пікселі не збігаються з каталогом у Commerce Manager, і динамічні оголошення перестають бути динамічними. Всі пʼять лікуються не окремими правками теми, а одним модулем, який робить піксель, Conversions API і каталог узгоджено.</p>
]]></description><guid isPermaLink="false">21092</guid><pubDate>Mon, 28 Sep 2026 00:28:47 +0000</pubDate></item></channel></rss>
