{"id":40631,"date":"2026-02-28T06:00:44","date_gmt":"2026-02-28T03:00:44","guid":{"rendered":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/"},"modified":"2026-02-28T06:00:44","modified_gmt":"2026-02-28T03:00:44","slug":"feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme","status":"publish","type":"post","link":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/","title":{"rendered":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme"},"content":{"rendered":"<h2>Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme<\/h2>\n<p>E-ticaret d\u00fcnyas\u0131nda \u00fcr\u00fcnlerinizi do\u011fru kitleye ula\u015ft\u0131rman\u0131n en etkili yollar\u0131ndan biri Google Al\u0131\u015fveri\u015f reklamlar\u0131d\u0131r. Ancak bu reklamlar\u0131n temelini olu\u015fturan \u00fcr\u00fcn feed&#8217;lerinin kalitesi, kampanya ba\u015far\u0131n\u0131z\u0131 do\u011frudan etkiler. \u00d6zellikle Ulta gibi b\u00fcy\u00fck ve dinamik bir e-ticaret sitesinden \u00e7ekilen ham veriler, genellikle Google Merchant Center (GMC) gereksinimlerini kar\u015f\u0131lamaktan uzakt\u0131r. Bu teknik makale, ham Ulta verilerini temizleyerek, standartla\u015ft\u0131rarak ve zenginle\u015ftirerek Google Merchant Center&#8217;a uygun, hatas\u0131z bir XML feed&#8217;ine nas\u0131l d\u00f6n\u00fc\u015ft\u00fcrece\u011finizi ad\u0131m ad\u0131m a\u00e7\u0131klayacakt\u0131r. Bu s\u00fcre\u00e7, &#8220;Feed Kurtarma&#8221; olarak adland\u0131r\u0131l\u0131r ve reklam performans\u0131n\u0131z\u0131 maksimize etmek i\u00e7in kritik \u00f6neme sahiptir.<\/p>\n<h3>Giri\u015f: Ham Veri Sorunsal\u0131 ve Feed Kurtarman\u0131n \u00d6nemi<\/h3>\n<p>Ulta gibi dinamik ve s\u00fcrekli g\u00fcncellenen e-ticaret sitelerinden veri \u00e7ekmek (scraping), pazarlamac\u0131lar ve veri analistleri i\u00e7in cazip bir kaynakt\u0131r. Ancak bu veriler genellikle ham, yap\u0131sal olmayan ve tutars\u0131z bir formatta gelir. \u00dcr\u00fcn ba\u015fl\u0131klar\u0131 eksik olabilir, fiyat bilgileri metin i\u00e7inde g\u00f6m\u00fcl\u00fc olabilir, stok durumu net olmayabilir veya g\u00f6rsel URL&#8217;leri ge\u00e7ersiz \u00e7\u0131kabilir. Bu t\u00fcr &#8220;ham veri&#8221; sorunlar\u0131, Google Merchant Center gibi platformlara do\u011frudan y\u00fcklenemez ve bir dizi d\u00f6n\u00fc\u015f\u00fcm s\u00fcrecinden ge\u00e7irilmesi gerekir. \u0130\u015fte bu noktada &#8220;Feed Kurtarma&#8221; devreye girer.<\/p>\n<h4>Ulta Verilerinin \u00d6zellikleri<\/h4>\n<p>Ulta&#8217;n\u0131n web sitesi, kullan\u0131c\u0131 deneyimini zenginle\u015ftirmek i\u00e7in dinamik i\u00e7erik y\u00fckleme, JavaScript tabanl\u0131 etkile\u015fimler ve bazen karma\u015f\u0131k HTML yap\u0131lar\u0131 kullan\u0131r. Bu durum, otomatik veri \u00e7ekme (scraping) s\u00fcre\u00e7lerini zorla\u015ft\u0131rabilir. \u00c7ekilen veriler genellikle a\u015fa\u011f\u0131daki sorunlar\u0131 bar\u0131nd\u0131r\u0131r:<\/p>\n<ul>\n<li><strong>Tutars\u0131z HTML Yap\u0131lar\u0131:<\/strong> Farkl\u0131 \u00fcr\u00fcn sayfalar\u0131nda ayn\u0131 bilgi i\u00e7in farkl\u0131 etiketler veya s\u0131n\u0131flar kullan\u0131labilir.<\/li>\n<li><strong>Dinamik Y\u00fcklenen \u0130\u00e7erik:<\/strong> Fiyat, stok durumu gibi kritik bilgiler sayfa y\u00fcklendikten sonra JavaScript ile getirilebilir, bu da basit HTTP istekleriyle \u00e7ekilemez.<\/li>\n<li><strong>Eksik veya Yanl\u0131\u015f Bilgiler:<\/strong> Baz\u0131 \u00fcr\u00fcnlerin GTIN&#8217;i (Global Ticari \u00dcr\u00fcn Numaras\u0131) olmayabilir, a\u00e7\u0131klamalar yetersiz kalabilir veya g\u00f6rsellerin \u00e7\u00f6z\u00fcn\u00fcrl\u00fc\u011f\u00fc d\u00fc\u015f\u00fck olabilir.<\/li>\n<li><strong>Metinsel Fiyatlar:<\/strong> Fiyatlar &#8220;24.99 $&#8221; gibi string format\u0131nda olabilir ve say\u0131sal i\u015fleme uygun olmayabilir.<\/li>\n<\/ul>\n<h4>Neden Feed Kurtarma?<\/h4>\n<p>Kaliteli bir \u00fcr\u00fcn feed&#8217;i, Google Al\u0131\u015fveri\u015f reklamlar\u0131n\u0131n temelidir. \u0130yi optimize edilmi\u015f bir feed, \u00fcr\u00fcnlerinizin do\u011fru aramalarda g\u00f6r\u00fcnmesini sa\u011flar, t\u0131klama oranlar\u0131n\u0131 (CTR) art\u0131r\u0131r ve d\u00f6n\u00fc\u015f\u00fcm oranlar\u0131n\u0131 y\u00fckseltir. Feed kurtarma s\u00fcreci, bu ham veriyi i\u015fleyerek pazarlama hedeflerinize ula\u015fman\u0131z\u0131 sa\u011flayan temiz, yap\u0131land\u0131r\u0131lm\u0131\u015f ve optimize edilmi\u015f bir feed&#8217;e d\u00f6n\u00fc\u015ft\u00fcr\u00fcr. Aksi takdirde, eksik veya hatal\u0131 verilerle olu\u015fturulan feed&#8217;ler, Google taraf\u0131ndan reddedilir veya d\u00fc\u015f\u00fck performans g\u00f6sterir.<\/p>\n<h4>Google Merchant Center ve Feed Kalitesi<\/h4>\n<p>Google Merchant Center, \u00fcr\u00fcn feed&#8217;leri i\u00e7in kat\u0131 kurallar ve gereksinimler belirlemi\u015ftir. Bu kurallara uyulmamas\u0131, \u00fcr\u00fcnlerinizin onaylanmamas\u0131na, reklamlar\u0131n\u0131z\u0131n yay\u0131nlanmamas\u0131na veya hesab\u0131n\u0131z\u0131n ask\u0131ya al\u0131nmas\u0131na yol a\u00e7abilir. Feed kurtarma, bu gereksinimleri kar\u015f\u0131lamak ve potansiyel reddedilme nedenlerini ortadan kald\u0131rmak i\u00e7in zorunludur. Kaliteli bir feed, ayn\u0131 zamanda Google&#8217;\u0131n \u00fcr\u00fcnlerinizi daha iyi anlamas\u0131na ve ilgili aramalarda g\u00f6stermesine yard\u0131mc\u0131 olur.<\/p>\n<h3>Veri Toplama ve \u0130lk Temizlik Ad\u0131mlar\u0131<\/h3>\n<p>Feed kurtarma s\u00fcrecinin ilk ad\u0131m\u0131, ham veriyi toplamak ve \u00f6n temizli\u011fini yapmakt\u0131r. Bu a\u015fama, sonraki ad\u0131mlar\u0131n ba\u015far\u0131s\u0131 i\u00e7in kritik bir temel olu\u015fturur.<\/p>\n<h4>Scraping Y\u00f6ntemleri ve Ara\u00e7lar\u0131<\/h4>\n<p>Ulta gibi bir siteden veri \u00e7ekmek i\u00e7in \u00e7e\u015fitli y\u00f6ntemler ve ara\u00e7lar mevcuttur:<\/p>\n<ul>\n<li><strong>Python K\u00fct\u00fcphaneleri:<\/strong>\n<ul>\n<li><strong>Scrapy:<\/strong> B\u00fcy\u00fck \u00f6l\u00e7ekli, asenkron scraping projeleri i\u00e7in g\u00fc\u00e7l\u00fc bir framework.<\/li>\n<li><strong>BeautifulSoup ve Requests:<\/strong> Daha k\u00fc\u00e7\u00fck \u00f6l\u00e7ekli projeler veya belirli sayfalar\u0131 \u00e7ekmek i\u00e7in ideal, kullan\u0131m\u0131 kolay k\u00fct\u00fcphaneler.<\/li>\n<li><strong>Selenium veya Playwright:<\/strong> JavaScript ile dinamik olarak y\u00fcklenen i\u00e7erikleri \u00e7ekmek i\u00e7in bir web taray\u0131c\u0131s\u0131n\u0131 sim\u00fcle eden ara\u00e7lar.<\/li>\n<\/ul>\n<\/li>\n<li><strong>Node.js K\u00fct\u00fcphaneleri:<\/strong> Puppeteer veya Cheerio, JavaScript tabanl\u0131 sitelerden veri \u00e7ekmek i\u00e7in pop\u00fcler se\u00e7eneklerdir.<\/li>\n<li><strong>Ticari Scraping Ara\u00e7lar\u0131:<\/strong> Bright Data, Scrape.it gibi platformlar, proxy y\u00f6netimi ve \u00f6l\u00e7eklenebilirlik gibi avantajlar sunar.<\/li>\n<\/ul>\n<p>Hangi y\u00f6ntemin se\u00e7ilece\u011fi, projenin \u00f6l\u00e7e\u011fine, b\u00fct\u00e7eye ve teknik bilgi birikimine ba\u011fl\u0131d\u0131r. Dinamik i\u00e7erik nedeniyle genellikle Selenium veya Puppeteer gibi taray\u0131c\u0131 otomasyon ara\u00e7lar\u0131 tercih edilir.<\/p>\n<h4>Ham Verinin Yap\u0131s\u0131<\/h4>\n<p>Scraping i\u015flemi sonucunda elde edilen ham veri genellikle JSON, CSV veya direkt HTML \u00e7\u0131kt\u0131s\u0131 \u015feklinde olabilir. Bu veriler, genellikle ana \u00fcr\u00fcn bilgileri (ba\u015fl\u0131k, fiyat, a\u00e7\u0131klama, g\u00f6rsel URL&#8217;si), SKU, marka ve kategori gibi temel alanlar\u0131 i\u00e7erir. Ancak bu alanlar, yukar\u0131da belirtildi\u011fi gibi tutars\u0131z veya eksik olabilir.<\/p>\n<h4>Temel Veri Temizli\u011fi<\/h4>\n<p>Ham veriyi toplad\u0131ktan sonra, ilk temizlik ad\u0131mlar\u0131 uygulanmal\u0131d\u0131r. Bu ad\u0131mlar, veriyi daha i\u015flenebilir hale getirir:<\/p>\n<ol>\n<li><strong>Bo\u015f De\u011ferleri Doldurma:<\/strong> Eksik <code>description<\/code> veya <code>brand<\/code> alanlar\u0131 i\u00e7in varsay\u0131lan de\u011ferler atama veya di\u011fer kaynaklardan tamamlama.<\/li>\n<li><strong>Gereksiz Karakterleri Kald\u0131rma:<\/strong> Fiyatlardan para birimi sembollerini, ba\u015fl\u0131k ve a\u00e7\u0131klamalardan HTML etiketlerini veya \u00f6zel karakterleri temizleme.<\/li>\n<li><strong>Veri Tiplerini D\u00fczeltme:<\/strong> Fiyat string&#8217;lerini float&#8217;a, stok durumunu boolean&#8217;a veya belirli bir string format\u0131na d\u00f6n\u00fc\u015ft\u00fcrme.<\/li>\n<li><strong>URL Do\u011frulama:<\/strong> G\u00f6rsel ve \u00fcr\u00fcn linklerinin ge\u00e7erli ve eri\u015filebilir olup olmad\u0131\u011f\u0131n\u0131 kontrol etme.<\/li>\n<\/ol>\n<p><strong>\u00d6rnek: Fiyat Verisi Temizli\u011fi (Python)<\/strong><\/p>\n<pre><code class=\"language-python\">\nimport re\n\ndef clean_price(price_str):\n    if not price_str:\n        return None\n    # Para birimi sembollerini, virg\u00fclleri kald\u0131r ve noktaya d\u00f6n\u00fc\u015ft\u00fcr\n    cleaned = re.sub(r'[^\\d.,]+', '', price_str).replace(',', '.')\n    try:\n        return float(cleaned)\n    except ValueError:\n        return None\n\n# Kullan\u0131m \u00f6rne\u011fi\nraw_price = \"$24.99 USD\"\ncleaned_price = clean_price(raw_price) # Sonu\u00e7: 24.99\n\nraw_price_turkish = \"\u20ba129,90\"\ncleaned_price_turkish = clean_price(raw_price_turkish) # Sonu\u00e7: 129.90\n<\/pre>\n<p><\/code><\/p>\n<h3>Veri Standardizasyonu ve Zenginle\u015ftirme<\/h3>\n<p>Temel temizlikten sonra, veriyi Google Merchant Center'\u0131n beklentilerine uygun hale getirmek ve reklam performans\u0131n\u0131 art\u0131rmak i\u00e7in standardizasyon ve zenginle\u015ftirme ad\u0131mlar\u0131 gelir.<\/p>\n<h4>\u00dcr\u00fcn Ba\u015fl\u0131klar\u0131n\u0131 Optimize Etme<\/h4>\n<p>GMC'de \u00fcr\u00fcn ba\u015fl\u0131klar\u0131, \u00fcr\u00fcn\u00fcn\u00fcz\u00fcn aramalarda g\u00f6r\u00fcnmesi i\u00e7in en \u00f6nemli fakt\u00f6rlerden biridir. Ham ba\u015fl\u0131klara genellikle marka, model, renk, boyut gibi kritik bilgiler eksik olabilir. Ba\u015fl\u0131klar, kullan\u0131c\u0131lar\u0131n arama sorgular\u0131na uygun olacak \u015fekilde yeniden d\u00fczenlenmelidir.<\/p>\n<p><strong>\u00d6rnek Ba\u015fl\u0131k Optimizasyonu:<\/strong><\/p>\n<ul>\n<li><strong>Ham Ba\u015fl\u0131k:<\/strong> \"Ruj\"<\/li>\n<li><strong>Optimize Edilmi\u015f Ba\u015fl\u0131k:<\/strong> \"MAC Ruby Woo Mat Ruj - K\u0131rm\u0131z\u0131, 3g\"<\/li>\n<\/ul>\n<p>Optimal ba\u015fl\u0131k format\u0131 genellikle: <code>[Marka] [\u00dcr\u00fcn Ad\u0131] [Anahtar \u00d6zellik 1] [Anahtar \u00d6zellik 2]<\/code> \u015feklindedir.<\/p>\n<h4>A\u00e7\u0131klamalar\u0131 Zenginle\u015ftirme<\/h4>\n<p>\u00dcr\u00fcn a\u00e7\u0131klamalar\u0131, \u00fcr\u00fcn\u00fcn\u00fcz hakk\u0131nda daha fazla bilgi sa\u011flar ve potansiyel m\u00fc\u015fterilerin sat\u0131n alma karar\u0131n\u0131 etkiler. A\u00e7\u0131klamalar, \u00fcr\u00fcn\u00fcn faydalar\u0131n\u0131, temel \u00f6zelliklerini ve anahtar kelimeleri i\u00e7ermelidir. HTML etiketlerinden ar\u0131nd\u0131r\u0131lm\u0131\u015f, okunakl\u0131 ve bilgilendirici olmal\u0131d\u0131r.<\/p>\n<h4>Kategori E\u015fle\u015ftirme<\/h4>\n<p>Ulta'n\u0131n kendi i\u00e7 kategori yap\u0131s\u0131, Google'\u0131n standart \u00fcr\u00fcn kategorileriyle (Google Product Categories - GPC) genellikle uyu\u015fmaz. \u00dcr\u00fcnlerinizin do\u011fru kategoride listelenmesi i\u00e7in Ulta kategorilerini GPC'ye e\u015fle\u015ftirmek zorunludur. Bu, manuel olarak veya bir e\u015fle\u015ftirme tablosu olu\u015fturarak yap\u0131labilir.<\/p>\n<p><strong>\u00d6rnek Kategori E\u015fle\u015ftirme Tablosu:<\/strong><\/p>\n<table>\n<thead>\n<tr>\n<th>Ulta Kategori<\/th>\n<th>Google \u00dcr\u00fcn Kategorisi (GPC)<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>Makyaj > Dudaklar > Rujlar<\/td>\n<td>Giyim ve Aksesuarlar > Kozmetik > Makyaj > Dudak Makyaj\u0131 > Rujlar<\/td>\n<\/tr>\n<tr>\n<td>Cilt Bak\u0131m\u0131 > Nemlendiriciler<\/td>\n<td>Sa\u011fl\u0131k ve G\u00fczellik > Ki\u015fisel Bak\u0131m > Cilt Bak\u0131m\u0131 > Nemlendiriciler<\/td>\n<\/tr>\n<tr>\n<td>Sa\u00e7 Bak\u0131m\u0131 > \u015eampuanlar<\/td>\n<td>Sa\u011fl\u0131k ve G\u00fczellik > Ki\u015fisel Bak\u0131m > Sa\u00e7 Bak\u0131m\u0131 > \u015eampuanlar<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h4>G\u00f6rsel URL'leri ve Stok Durumu<\/h4>\n<p>G\u00f6rsel URL'lerinin ge\u00e7erli, eri\u015filebilir ve y\u00fcksek \u00e7\u00f6z\u00fcn\u00fcrl\u00fckl\u00fc olmas\u0131 gerekir. Ayr\u0131ca, \u00fcr\u00fcnlerin stok durumunun (<code>in stock<\/code>, <code>out of stock<\/code>, <code>preorder<\/code>) do\u011fru bir \u015fekilde belirtilmesi, Google'\u0131n reklamlar\u0131 do\u011fru zamanda g\u00f6stermesi i\u00e7in \u00f6nemlidir. Stok durumu bilgisi genellikle anl\u0131k olarak \u00e7ekilmeli veya d\u00fczenli olarak g\u00fcncellenmelidir.<\/p>\n<h3>Google Merchant Center Gereksinimlerini Anlama<\/h3>\n<p>Google Merchant Center, \u00fcr\u00fcn feed'leri i\u00e7in belirli alanlar\u0131 zorunlu k\u0131lar ve baz\u0131lar\u0131n\u0131 da \u00f6nerir. Bu gereksinimleri tam olarak anlamak, feed'inizin onaylanmas\u0131 i\u00e7in hayati \u00f6neme sahiptir.<\/p>\n<h4>Zorunlu Alanlar<\/h4>\n<p>Her \u00fcr\u00fcn i\u00e7in a\u015fa\u011f\u0131daki alanlar kesinlikle sa\u011flanmal\u0131d\u0131r:<\/p>\n<ul>\n<li><code>id<\/code>: Her \u00fcr\u00fcn i\u00e7in benzersiz bir kimlik.<\/li>\n<li><code>title<\/code>: \u00dcr\u00fcn ba\u015fl\u0131\u011f\u0131 (optimize edilmi\u015f hali).<\/li>\n<li><code>description<\/code>: \u00dcr\u00fcn a\u00e7\u0131klamas\u0131 (zenginle\u015ftirilmi\u015f hali).<\/li>\n<li><code>link<\/code>: \u00dcr\u00fcn\u00fcn Ulta'daki do\u011frudan URL'si.<\/li>\n<li><code>image_link<\/code>: Ana \u00fcr\u00fcn g\u00f6rselinin URL'si.<\/li>\n<li><code>price<\/code>: \u00dcr\u00fcn\u00fcn g\u00fcncel fiyat\u0131 (\u00f6rn: \"24.99 USD\").<\/li>\n<li><code>availability<\/code>: Stok durumu (<code>in stock<\/code>, <code>out of stock<\/code>, <code>preorder<\/code>).<\/li>\n<li><code>brand<\/code>: \u00dcr\u00fcn\u00fcn markas\u0131.<\/li>\n<li><code>gtin<\/code>: Global Ticari \u00dcr\u00fcn Numaras\u0131 (UPC, EAN, ISBN, JAN) veya <code>mpn<\/code> (\u00dcretici Par\u00e7a Numaras\u0131) ve <code>brand<\/code> kombinasyonu. \u00d6zel \u00fcr\u00fcnler i\u00e7in <code>identifier_exists<\/code> alan\u0131 <code>false<\/code> olarak ayarlanabilir.<\/li>\n<li><code>condition<\/code>: \u00dcr\u00fcn\u00fcn durumu (<code>new<\/code>, <code>refurbished<\/code>, <code>used<\/code>).<\/li>\n<\/ul>\n<h4>\u00d6nerilen Alanlar<\/h4>\n<p>Bu alanlar zorunlu olmasa da, \u00fcr\u00fcnlerinizin performans\u0131n\u0131 art\u0131rmak ve daha spesifik aramalarda g\u00f6r\u00fcnmesini sa\u011flamak i\u00e7in \u015fiddetle tavsiye edilir:<\/p>\n<ul>\n<li><code>google_product_category<\/code>: Google \u00dcr\u00fcn Kategorisi.<\/li>\n<li><code>product_type<\/code>: Kendi i\u00e7 kategori yap\u0131n\u0131z.<\/li>\n<li><code>item_group_id<\/code>: Varyant \u00fcr\u00fcnleri (farkl\u0131 renk, boyut) gruplamak i\u00e7in.<\/li>\n<li><code>color<\/code>, <code>size<\/code>, <code>material<\/code>, <code>pattern<\/code>: \u00dcr\u00fcn \u00f6zelliklerini detayland\u0131rmak i\u00e7in.<\/li>\n<li><code>shipping<\/code>, <code>tax<\/code>: G\u00f6nderim ve vergi bilgileri.<\/li>\n<li><code>custom_label_0<\/code>, <code>custom_label_1<\/code>, vb.: \u00d6zel etiketler, kampanya y\u00f6netimi i\u00e7in esneklik sa\u011flar.<\/li>\n<\/ul>\n<h4>Veri Format\u0131 Kurallar\u0131<\/h4>\n<p>GMC, her alan i\u00e7in belirli format kurallar\u0131 belirler. \u00d6rne\u011fin, fiyatlar say\u0131sal bir de\u011fer ve para birimi koduyla (\u00f6rn: \"24.99 USD\") belirtilmelidir. URL'ler ge\u00e7erli olmal\u0131 ve HTTP\/HTTPS protokol\u00fcn\u00fc kullanmal\u0131d\u0131r. Ba\u015fl\u0131klar ve a\u00e7\u0131klamalar belirli karakter limitlerine sahip olabilir. Bu kurallara uymak, feed'inizin sorunsuz bir \u015fekilde i\u015flenmesini sa\u011flar.<\/p>\n<h3>XML Yap\u0131land\u0131rmas\u0131 ve D\u00f6n\u00fc\u015f\u00fcm S\u00fcreci<\/h3>\n<p>T\u00fcm veriler temizlenip standartla\u015ft\u0131r\u0131ld\u0131ktan sonra, s\u0131ra bu veriyi Google Merchant Center'\u0131n kabul etti\u011fi XML format\u0131na d\u00f6n\u00fc\u015ft\u00fcrmeye gelir. GMC, Atom 1.0 veya RSS 2.0 tabanl\u0131 XML \u015femalar\u0131n\u0131 destekler.<\/p>\n<h4>XML \u015eemas\u0131<\/h4>\n<p>Google Al\u0131\u015fveri\u015f feed'leri i\u00e7in genellikle Atom 1.0 \u015femas\u0131 kullan\u0131l\u0131r. Bu \u015fema, \u00fcr\u00fcn bilgilerini belirli etiketler alt\u0131nda yap\u0131land\u0131r\u0131r ve Google'\u0131n \u00f6zel uzant\u0131lar\u0131n\u0131 (<code>g:<\/code> \u00f6neki ile belirtilenler) kullan\u0131r.<\/p>\n<h4>XML Olu\u015fturma Ad\u0131mlar\u0131<\/h4>\n<ol>\n<li><strong>K\u00f6k Element ve Namespace Tan\u0131mlar\u0131:<\/strong> XML dosyas\u0131n\u0131n ba\u015f\u0131nda <code><feed><\/code> veya <code><rss><\/code> k\u00f6k elementi ve gerekli namespace (ad alan\u0131) tan\u0131mlar\u0131 yer al\u0131r. Google'\u0131n \u00f6zel etiketleri i\u00e7in <code>xmlns:g=\"http:\/\/base.google.com\/ns\/1.0\"<\/code> ad alan\u0131 eklenmelidir.<\/li>\n<li><strong>Kanal Bilgileri:<\/strong> Feed'in genel bilgilerini i\u00e7eren <code><title><\/code>, <code><link><\/code>, <code><description><\/code> gibi etiketler eklenir.<\/li>\n<li><strong>Her \u00dcr\u00fcn \u0130\u00e7in <code><entry><\/code> veya <code><item><\/code> Elementleri:<\/strong> Her bir \u00fcr\u00fcn, <code><feed><\/code> i\u00e7inde bir <code><entry><\/code> (Atom i\u00e7in) veya <code><rss><\/code> i\u00e7inde bir <code><item><\/code> (RSS i\u00e7in) elementi olarak temsil edilir.<\/li>\n<li><strong>GMC Alanlar\u0131n\u0131 Ekleme:<\/strong> Her <code><entry><\/code> veya <code><item><\/code> i\u00e7ine, daha \u00f6nce haz\u0131rlad\u0131\u011f\u0131n\u0131z t\u00fcm zorunlu ve \u00f6nerilen GMC alanlar\u0131, <code>g:<\/code> \u00f6nekiyle (\u00f6rn: <code><g:id><\/code>, <code><g:title><\/code>) eklenir.<\/li>\n<\/ol>\n<p><strong>Python ile XML Olu\u015fturma \u00d6rne\u011fi (lxml k\u00fct\u00fcphanesi ile):<\/strong><\/p>\n<pre><code class=\"language-python\">\nfrom lxml import etree\n\ndef create_gmc_xml(products_data):\n    # Google Merchant Center namespace\n    ns_g = \"http:\/\/base.google.com\/ns\/1.0\"\n    # Atom 1.0 namespace\n    ns_atom = \"http:\/\/www.w3.org\/2005\/Atom\"\n\n    # K\u00f6k elementi olu\u015ftur\n    root = etree.Element(\"feed\", nsmap={'g': ns_g, None: ns_atom})\n\n    # Feed genel bilgilerini ekle\n    title = etree.SubElement(root, \"title\")\n    title.text = \"Ulta \u00dcr\u00fcn Feed'i\"\n    link = etree.SubElement(root, \"link\", href=\"https:\/\/www.example.com\", rel=\"self\")\n    updated = etree.SubElement(root, \"updated\")\n    updated.text = \"2023-10-27T10:00:00Z\" # Son g\u00fcncelleme tarihi\n\n    for product in products_data:\n        entry = etree.SubElement(root, \"entry\")\n        \n        # Zorunlu alanlar\n        etree.SubElement(entry, f\"{{{ns_g}}}id\").text = str(product['id'])\n        etree.SubElement(entry, f\"{{{ns_g}}}title\").text = product['title']\n        etree.SubElement(entry, f\"{{{ns_g}}}description\").text = product['description']\n        etree.SubElement(entry, f\"{{{ns_g}}}link\").text = product['link']\n        etree.SubElement(entry, f\"{{{ns_g}}}image_link\").text = product['image_link']\n        etree.SubElement(entry, f\"{{{ns_g}}}price\").text = f\"{product['price']:.2f} USD\"\n        etree.SubElement(entry, f\"{{{ns_g}}}availability\").text = product['availability']\n        etree.SubElement(entry, f\"{{{ns_g}}}brand\").text = product['brand']\n        etree.SubElement(entry, f\"{{{ns_g}}}condition\").text = product['condition']\n\n        # GTIN veya MPN\/brand\n        if 'gtin' in product and product['gtin']:\n            etree.SubElement(entry, f\"{{{ns_g}}}gtin\").text = product['gtin']\n        elif 'mpn' in product and product['mpn'] and 'brand' in product and product['brand']:\n            etree.SubElement(entry, f\"{{{ns_g}}}mpn\").text = product['mpn']\n            # Brand zaten eklenmi\u015fti\n        else:\n            etree.SubElement(entry, f\"{{{ns_g}}}identifier_exists\").text = \"false\"\n\n        # \u00d6nerilen alanlar (\u00f6rnek)\n        if 'google_product_category' in product and product['google_product_category']:\n            etree.SubElement(entry, f\"{{{ns_g}}}google_product_category\").text = product['google_product_category']\n        if 'color' in product and product['color']:\n            etree.SubElement(entry, f\"{{{ns_g}}}color\").text = product['color']\n        # Di\u011fer alanlar da benzer \u015fekilde eklenebilir\n\n    # XML'i string olarak d\u00f6nd\u00fcr\n    return etree.tostring(root, pretty_print=True, encoding='utf-8', xml_declaration=True).decode()\n\n# \u00d6rnek kullan\u0131m (ger\u00e7ek verilerle de\u011fi\u015ftirilmeli)\n# products = [\n#     {\n#         'id': 12345,\n#         'title': 'MAC Ruby Woo Mat Ruj - K\u0131rm\u0131z\u0131, 3g',\n#         'description': 'MAC Cosmetics\\'in ikonik Ruby Woo mat rujunu ke\u015ffedin. Yo\u011fun pigmentli, uzun s\u00fcre kal\u0131c\u0131 form\u00fcl.',\n#         'link': 'https:\/\/www.ulta.com\/ruby-woo-matte-lipstick',\n#         'image_link': 'https:\/\/www.ulta.com\/images\/ruby-woo.jpg',\n#         'price': 24.00,\n#         'availability': 'in stock',\n#         'brand': 'MAC Cosmetics',\n#         'condition': 'new',\n#         'gtin': '773602061030',\n#         'google_product_category': 'Giyim ve Aksesuarlar > Kozmetik > Makyaj > Dudak Makyaj\u0131 > Rujlar',\n#         'color': 'K\u0131rm\u0131z\u0131'\n#     }\n# ]\n# xml_output = create_gmc_xml(products)\n# print(xml_output)\n<\/pre>\n<p><\/code><\/p>\n<h3>Do\u011frulama, Hata Ay\u0131klama ve Optimizasyon<\/h3>\n<p>XML feed'i olu\u015fturulduktan sonra, Google Merchant Center'a y\u00fcklemeden \u00f6nce ve y\u00fckledikten sonra dikkatlice do\u011frulanmal\u0131 ve hatalar ay\u0131klanmal\u0131d\u0131r.<\/p>\n<h4>GMC Feed Tan\u0131lama<\/h4>\n<p>Google Merchant Center, y\u00fckledi\u011finiz feed'i otomatik olarak tarar ve \"Te\u015fhis\" b\u00f6l\u00fcm\u00fcnde detayl\u0131 bir rapor sunar. Bu rapor, feed'inizdeki hatalar\u0131, uyar\u0131lar\u0131 ve iyile\u015ftirme f\u0131rsatlar\u0131n\u0131 g\u00f6sterir.<\/p>\n<ul>\n<li><strong>Hatalar:<\/strong> \u00dcr\u00fcnlerin onaylanmas\u0131n\u0131 engelleyen kritik sorunlard\u0131r (\u00f6rn: eksik zorunlu alanlar, ge\u00e7ersiz fiyat format\u0131).<\/li>\n<li><strong>Uyar\u0131lar:<\/strong> \u00dcr\u00fcnler onaylansa da performans\u0131n\u0131 etkileyebilecek veya gelecekte hataya d\u00f6n\u00fc\u015febilecek sorunlard\u0131r (\u00f6rn: d\u00fc\u015f\u00fck \u00e7\u00f6z\u00fcn\u00fcrl\u00fckl\u00fc g\u00f6rsel, eksik \u00f6nerilen alan).<\/li>\n<li><strong>F\u0131rsatlar:<\/strong> Feed'i daha da optimize etmek i\u00e7in \u00f6nerilerdir.<\/li>\n<\/ul>\n<h4>Hata T\u00fcrleri ve \u00c7\u00f6z\u00fcmleri<\/h4>\n<ul>\n<li><strong>Eksik Alanlar:<\/strong> En yayg\u0131n hatalardan biridir. Hangi alanlar\u0131n eksik oldu\u011funu belirleyin ve veri \u00e7ekme veya temizleme a\u015famalar\u0131n\u0131 kontrol ederek bu bilgileri ekleyin.<\/li>\n<li><strong>Ge\u00e7ersiz De\u011ferler:<\/strong> Fiyat format\u0131, URL ge\u00e7erlili\u011fi, stok durumu metni gibi de\u011ferlerin GMC kurallar\u0131na uygun oldu\u011fundan emin olun.<\/li>\n<li><strong>G\u00f6rsel Hatalar\u0131:<\/strong> G\u00f6rsel URL'lerinin eri\u015filebilir, do\u011fru formatta ve minimum boyut gereksinimlerini kar\u015f\u0131lad\u0131\u011f\u0131ndan emin olun.<\/li>\n<li><strong>GTIN Sorunlar\u0131:<\/strong> GTIN'ler benzersiz olmal\u0131 ve do\u011fru formatta girilmelidir. E\u011fer GTIN yoksa, <code>mpn<\/code> ve <code>brand<\/code> kullan\u0131n veya <code>identifier_exists<\/code> alan\u0131n\u0131 <code>false<\/code> olarak ayarlay\u0131n.<\/li>\n<li><strong>Kategori E\u015fle\u015ftirme Hatalar\u0131:<\/strong> Google \u00dcr\u00fcn Kategorileri'nin do\u011fru ve en spesifik seviyede e\u015fle\u015fti\u011finden emin olun.<\/li>\n<\/ul>\n<h4>Performans Optimizasyonu<\/h4>\n<p>Feed'i yaln\u0131zca hatas\u0131z hale getirmek yeterli de\u011fildir; ayn\u0131 zamanda performans\u0131n\u0131 da optimize etmelisiniz:<\/p>\n<ul>\n<li><strong>Ba\u015fl\u0131k ve A\u00e7\u0131klama Optimizasyonu:<\/strong> Anahtar kelimeleri ve \u00fcr\u00fcn\u00fcn en \u00e7ekici \u00f6zelliklerini i\u00e7eren ba\u015fl\u0131klar ve a\u00e7\u0131klamalar kullan\u0131n.<\/li>\n<li><strong>\u00d6zel Etiketler (Custom Labels):<\/strong> Kampanya y\u00f6netimi i\u00e7in \u00f6zel etiketler olu\u015fturun. \u00d6rne\u011fin, \"yeni gelenler\", \"\u00e7ok satanlar\", \"indirimli \u00fcr\u00fcnler\" gibi etiketlerle \u00fcr\u00fcn gruplar\u0131 olu\u015fturabilirsiniz.<\/li>\n<li><strong>Promosyonlar:<\/strong> Fiyat indirimleri veya \u00f6zel teklifler i\u00e7in promosyon feed'lerini kullan\u0131n.<\/li>\n<\/ul>\n<h4>A\/B Testleri<\/h4>\n<p>Farkl\u0131 ba\u015fl\u0131k formatlar\u0131, a\u00e7\u0131klamalar veya g\u00f6rsellerin performans\u0131n\u0131 \u00f6l\u00e7mek i\u00e7in A\/B testleri yapabilirsiniz. Bu, hangi elementlerin daha y\u00fcksek t\u0131klama ve d\u00f6n\u00fc\u015f\u00fcm oranlar\u0131 sa\u011flad\u0131\u011f\u0131n\u0131 anlaman\u0131za yard\u0131mc\u0131 olur.<\/p>\n<h3>S\u00fcrekli Bak\u0131m ve Otomasyon<\/h3>\n<p>Feed kurtarma tek seferlik bir i\u015flem de\u011fildir. \u00dcr\u00fcn bilgilerinin s\u00fcrekli g\u00fcncel kalmas\u0131 ve feed'in hatas\u0131z \u00e7al\u0131\u015fmas\u0131 i\u00e7in d\u00fczenli bak\u0131m ve otomasyon \u015fartt\u0131r.<\/p>\n<h4>Periyodik G\u00fcn<\/p>\n","protected":false},"excerpt":{"rendered":"\u00d6rnek: Fiyat Verisi Temizli\u011fi (Python)","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"csco_page_header_type":"","csco_page_load_nextpost":"","csco_page_subscribe_form":"","csco_page_contact_form":"","footnotes":""},"categories":[1],"tags":[],"class_list":{"0":"post-40631","1":"post","2":"type-post","3":"status-publish","4":"format-standard","6":"category-genel","7":"cs-entry","8":"cs-video-wrap"},"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v20.5 (Yoast SEO v25.3.1) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#039;ine D\u00f6n\u00fc\u015ft\u00fcrme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\" \/>\n<meta property=\"og:locale\" content=\"tr_TR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#039;ine D\u00f6n\u00fc\u015ft\u00fcrme\" \/>\n<meta property=\"og:description\" content=\"\u00d6rnek: Fiyat Verisi Temizli\u011fi (Python)\" \/>\n<meta property=\"og:url\" content=\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\" \/>\n<meta property=\"og:site_name\" content=\"Kodlar\u0131n Gizemli D\u00fcnyas\u0131\" \/>\n<meta property=\"article:published_time\" content=\"2026-02-28T03:00:44+00:00\" \/>\n<meta name=\"author\" content=\"Fatih Soysal\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Yazan:\" \/>\n\t<meta name=\"twitter:data1\" content=\"Fatih Soysal\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tahmini okuma s\u00fcresi\" \/>\n\t<meta name=\"twitter:data2\" content=\"14 dakika\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\"},\"author\":{\"name\":\"Fatih Soysal\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"headline\":\"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme\",\"datePublished\":\"2026-02-28T03:00:44+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\"},\"wordCount\":2222,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#respond\"]}],\"copyrightYear\":\"2026\",\"copyrightHolder\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\",\"name\":\"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML'ine D\u00f6n\u00fc\u015ft\u00fcrme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131\",\"isPartOf\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\"},\"datePublished\":\"2026-02-28T03:00:44+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#breadcrumb\"},\"inLanguage\":\"tr\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Anasayfa\",\"item\":\"https:\/\/fatihsoysal.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#website\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/\",\"name\":\"Fatihsoysal.com\",\"description\":\"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim\",\"publisher\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"tr\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1\",\"name\":\"Fatih Soysal\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"tr\",\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"contentUrl\":\"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png\",\"width\":512,\"height\":512,\"caption\":\"Fatih Soysal\"},\"logo\":{\"@id\":\"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/\"},\"description\":\"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.\",\"url\":\"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML'ine D\u00f6n\u00fc\u015ft\u00fcrme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/","og_locale":"tr_TR","og_type":"article","og_title":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML'ine D\u00f6n\u00fc\u015ft\u00fcrme","og_description":"\u00d6rnek: Fiyat Verisi Temizli\u011fi (Python)","og_url":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/","og_site_name":"Kodlar\u0131n Gizemli D\u00fcnyas\u0131","article_published_time":"2026-02-28T03:00:44+00:00","author":"Fatih Soysal","twitter_card":"summary_large_image","twitter_misc":{"Yazan:":"Fatih Soysal","Tahmini okuma s\u00fcresi":"14 dakika"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#article","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/"},"author":{"name":"Fatih Soysal","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"headline":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme","datePublished":"2026-02-28T03:00:44+00:00","mainEntityOfPage":{"@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/"},"wordCount":2222,"commentCount":0,"publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"inLanguage":"tr","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#respond"]}],"copyrightYear":"2026","copyrightHolder":{"@id":"https:\/\/fatihsoysal.com\/blog\/#organization"}},{"@type":"WebPage","@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/","url":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/","name":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML'ine D\u00f6n\u00fc\u015ft\u00fcrme - Kodlar\u0131n Gizemli D\u00fcnyas\u0131","isPartOf":{"@id":"https:\/\/fatihsoysal.com\/blog\/#website"},"datePublished":"2026-02-28T03:00:44+00:00","breadcrumb":{"@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#breadcrumb"},"inLanguage":"tr","potentialAction":[{"@type":"ReadAction","target":["https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/fatihsoysal.com\/blog\/feed-kurtarma-ham-ulta-verilerini-google-merchant-center-xmline-donusturme\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Anasayfa","item":"https:\/\/fatihsoysal.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Feed Kurtarma: Ham Ulta Verilerini Google Merchant Center XML&#8217;ine D\u00f6n\u00fc\u015ft\u00fcrme"}]},{"@type":"WebSite","@id":"https:\/\/fatihsoysal.com\/blog\/#website","url":"https:\/\/fatihsoysal.com\/blog\/","name":"Fatihsoysal.com","description":"Blog - Yaz\u0131l\u0131m D\u00fcnyas\u0131 Tecr\u00fcbelerim","publisher":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/fatihsoysal.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"tr"},{"@type":["Person","Organization"],"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/002a254750921dcfd568a99e48240dd1","name":"Fatih Soysal","image":{"@type":"ImageObject","inLanguage":"tr","@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","contentUrl":"https:\/\/fatihsoysal.com\/blog\/wp-content\/uploads\/2024\/04\/cropped-replicate-prediction-3kgg1hgjn5rgp0cf0p5tr0jw7w-1.png","width":512,"height":512,"caption":"Fatih Soysal"},"logo":{"@id":"https:\/\/fatihsoysal.com\/blog\/#\/schema\/person\/image\/"},"description":"Kullan\u0131m ve kodlama m\u00fckemmeliyetini odak alan uygulamalar olu\u015fturma deneyimine sahip, profesyonel olarak 15+ y\u0131l \u00fczeri deneyime sahip bir yaz\u0131l\u0131m m\u00fchendisi.","url":"https:\/\/fatihsoysal.com\/blog\/author\/fatihsoysal\/"}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"amp_enabled":true,"_links":{"self":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/40631","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/comments?post=40631"}],"version-history":[{"count":0,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/posts\/40631\/revisions"}],"wp:attachment":[{"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/media?parent=40631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/categories?post=40631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/fatihsoysal.com\/blog\/wp-json\/wp\/v2\/tags?post=40631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}