curl ile çağrıldı. Aşağıdaki bütün ekran görüntüleri 2026 Temmuz'undaki o oturuma ait.Yazının tamamının dayandığı tek bir tespit var, o yüzden en başa koyuyorum: Instagram'da akış gömme diye bir özellik yok. Facebook'un Sayfa Eklentisi gibi, son gönderilerinizi kendi sitenizde yayınlayan resmi bir araç bulunmuyor. Instagram'ın verdiği tek imkân, gönderileri tek tek gömmek. Bunu aşağıdaki resmi yöntemler bölümünde dört ayrı şekilde, ekran görüntüleriyle doğruladım. Dolayısıyla gerçek seçenek ikiye iniyor: gönderileri elle tek tek yapıştırmak ya da Instagram'ın Graph API'siyle konuşan bir widget kullanmak. Hâlâ araç karşılaştırıyorsanız aynı sayfa üzerinde 8 Instagram akış widget'ını test ettiğimiz yazı (İngilizce) işinizi görebilir.
Instagram akışını üçüncü taraf araç olmadan gömebilir misiniz? Resmi yöntemlerin hepsini test ettim
Karşılaştırma yazılarının nedense çalıştırmadığı kısım burası. Dört yöntem denedim, dört sonuç çıktı.
1. yöntem: gönderi gömme var, ama tek gönderilik
Bir gönderiyi açıp üç nokta menüsüne bastığınızda Embed seçeneği çıkıyor ve size bir <blockquote> ile bir script etiketi veriyor. Çalışıyor da. Instagram'ın resmen desteklediği tek gömme yöntemi bu.

Asıl mesele bundan sonrası. Bu, gönderi başına çalışan bir gömme. Son on iki gönderinizi göstermek istiyorsanız on iki ayrı kod bloğu yapıştırmanız ve her yeni paylaşımda sayfayı yeniden düzenlemeniz gerekir. Profil gömme yok, “son gönderiler” widget'ı yok, kendi kendini güncelleyen hiçbir şey yok.
2. yöntem: hikayelerde gömme seçeneğinin kendisi yok
Hikayelerde menünün kendisi çok daha kısa. Tarayıcıda bir hikayenin üç nokta menüsünü açtığınızda yalnızca uygunsuz olarak bildirme, hesap hakkında bilgi ve iptal çıkıyor; Embed satırı hiç yok.

Reels tarafında Embed seçeneği var, yani eksiklik hikayelere özgü. Bir hizmet size “Instagram hikayelerinizi web sitenizde gösteriyoruz” diyorsa, kullandığı şey gömme değildir; hesap sahibinin izniyle Graph API üzerinden hikayeleri okumaktır ve bu tamamen başka bir mekanizmadır. O yolu sonuna kadar takip ettiğimiz kaydı ayrı bir yazıya çıkardık: Instagram hikayelerini web sitesinde gösterme (İngilizce) yazısında API yolunun adımları ve 24 saati dolan bir hikayenin sitede ne olduğu anlatılıyor.
3. yöntem: resmi gömme kodu gerçekte neyi ekrana getiriyor
Bu konudaki fikrimi değiştiren sonuç bu oldu. Instagram'ın verdiği gömme kodunu bir Özel HTML bloğuna yapıştırdım, sayfayı yayınladım ve gizli pencerede açtım. Gönderi görünmedi. Ekranda kalan tek şey altı çizili iki metin bağlantısıydı: “View this post on Instagram” ve hesap künyesi. Görsel yok, video yok, açıklama yok.

Aynı test sayfası mobil genişlikte de aynı sonucu verdi.

Bunun neyi kanıtladığını tam olarak yazayım. Instagram'ın gömmesi bir <blockquote>'tur ve instagram.com'dan yüklenen bir script'in onu gerçek gönderi kartına dönüştürmesi beklenir. Yukarıda gördüğünüz, dönüşmemiş yedek görünüm; yani o script çalışmadığında ya da sonuna kadar tamamlanmadığında geriye kalan hâl. Bu, resmi gömmenin kimsede çalışmadığı anlamına gelmez. Script normal şekilde yüklendiğinde gönderi kartı çıkar.
Buna rağmen önemli olmasının sebebi, bu durumun nadir bir uç örnek olmaması. instagram.com'dan çekilen bir script, reklam engelleyicilerin, izleyici engelleyicilerin, tarayıcıların katı gizlilik modlarının ve ziyaretçi onay vermeden üçüncü taraf script'leri tutan çerez izni bantlarının tam olarak hedeflediği türden bir istektir. Bu ziyaretçilerin her biri yukarıdaki ekranı görür. Üstelik arıza sessiz ilerler: kendi oturum açmış tarayıcınızda sayfa gayet düzgün göründüğü için fark etmezsiniz ve Instagram'ın hazırladığı yedek görünüm ne yazık ki iki bağlantıdan ibarettir.
4. yöntem: WordPress'in Instagram bloğu kaldırıldı
WordPress'te eskiden, eski oEmbed uç noktasına dayanan özel bir Instagram gömme bloğu vardı. WordPress 7.0.2'de blok ekleyicide artık yok. YouTube ve X için işe yarayan yöntemi, yani bağlantıyı tek başına bir satıra yapıştırıp otomatik gömmeyi beklemeyi denediğinizde hata mesajı alıyorsunuz.

WordPress'te Instagram akışının neden görünmediğini (İngilizce) araştırıyorsanız, çoğu durumda cevabın tamamı budur: hatırladığınız blok kaldırıldı ve yapıştırdığınız adres sessizce düz bağlantıya dönüşüyor.
oEmbed uç noktaları: beklentimizin yanlış çıktığı yer
Varsaydığım gibi çıkmayan test bu oldu, o yüzden tam olarak yaşandığı gibi yazıyorum.
Eski uç noktanın kapalı olması beklenen sonuçtu. api.instagram.com/oembed/ çağrıldığında HTTP 302 ve content-length: 0 dönüyor: gövdesi boş bir yönlendirme, gömme verisi yok.

Yerine geçen uç noktanın uygulama kaydı ve erişim anahtarı isteyeceğini varsaymıştım. Öyle olmadı. graph.facebook.com/v23.0/instagram_oembed adresini hiçbir erişim anahtarı göndermeden çağırdığımda HTTP 200 ve blockquote JSON'u eksiksiz döndü.

Yani Instagram oEmbed'in artık uygulama ve erişim anahtarının arkasında olduğu yönündeki yaygın anlatım, test ettiğim gün için doğru değildi ve biz de onu tekrarlamayacağız. Adil olmak adına iki kayıt düşmek gerekiyor: yanıt, x-ad-api-version-warning başlığıyla geldi ve kullanımdan kaldırılmış bir API sürümünün çağrıldığını bildirdi; ayrıca belgelenmemiş, kimlik doğrulaması olmayan ve kullanımdan kaldırıldığı işaretlenmiş bir uç noktanın üzerine site özelliği kurmak akıllıca değil. Ama “erişim anahtarı gerekiyor” bizim ölçtüğümüz sonuç değil, o yüzden öyle yazmıyoruz.
Instagram akışını web sitesine ekleme: 5 adım
Buradan sonrası CollectSocials ile izlediğim yol ve aynı 2026 Temmuz oturumunda baştan sona ekran görüntüsüyle kayıt altına alındı. Beş adım var ve kod denebilecek tek iş, en sonda tek bir parçayı yapıştırmak. Başka araçlar da değerlendiriyorsanız sürecin genel şekli her yerde benzer; aşağıdaki ekranlar bize ait.
Akış türü seçimi kurulumun neresinde
Animasyon, bir Instagram akışını siteye taşırken geçilen altı adımı sırayla açıyor ve tamamlananların numarasını yeşil bir onay işaretine çeviriyor: hedefi belirleyin, akış türünü seçin, hesabı bağlayın, moderasyon kurallarını ayarlayın, düzeni özelleştirin, kodu gömüp mobilde kontrol edin. Aşağıdaki beş adımlık anlatım da aynı sırayı izliyor.
1. adım: bir akış oluşturup Instagram'ı seçin
Her şey akış birimi üzerinden ilerlediği için ilk oluşturacağınız şey bir akış oluyor. Ücretsiz bir hesap açın, New Feed (yeni akış) ekranını açın, adını verin ve hazır oradayken varsayılan gönderi durumunu da belirleyin: Approved seçilirse toplanan gönderiler otomatik görünür, diğer seçenekle hepsini inceleme için bekletebilirsiniz.

Instagram'ı seçtiğinizde beş kaynak türü çıkıyor: hesap (Account), etiketlenenler (Tagged), hashtag, bahsetmeler (Mention) ve hikayeler (Stories). Beşi de ücretsiz olarak kullanılabiliyor. İlk akışınız için hesap türünü seçmeniz yeterli; kendi gönderileriniz paylaşım sırasıyla gelir. Diğerlerinden ikisine bizim değil Meta'nın koyduğu şartlar eşlik ettiği için, karar vermeden önce akış türleri bölümünü okumanızı öneririm.

2. adım: hesabı bağlayın
Bağlantı için iki yol var. Ekran doğrudan Instagram girişiyle açılıyor: bu yol Facebook sayfasından geçmez ve hem işletme hem içerik üreticisi hesaplarında çalışır. Hashtag, etiketlenenler ve bahsetmeler kaynaklarını kuracaksanız Via Facebook yolu gerekir, çünkü Meta bu uçları yalnızca oradan veriyor.

Doğrudan Instagram girişi Facebook sayfasından geçmeyen yoldur ve tek bir izin ister: profili görüntüleme ile medyaya erişim.

Bu yol gerçekten daha basit. Yine de hesabınızda sonuna kadar tamamlanmazsa Via Facebook ile devam edebilirsiniz: ortaya çıkan akış aynıdır ve hashtag araması için zaten o yol gerekir.

3. adım: hangi gönderilerin görüneceğini seçin
Toplanan gönderiler doğrudan sitenize çıkmaz, önce inceleme ekranına düşer. Her gönderi için onaylama, en üste sabitleme ve çıkarma seçeneği vardır.

4. adım: akışın tasarımını belirleyin
Kart şablonu, düzen ve tema Design Studio'dan seçiliyor. Hayali bir örnek üzerinde değil, az önce topladığınız gerçek gönderilerin üzerinde canlı önizleme ile çalışıyorsunuz.

5. adım: tek parça kodu sayfanıza yapıştırın
Get Code düğmesi akışı nereye koyacağınızı sorar ve o hedefe uygun kodu verir.

Kodun kendisi bir <script> etiketi ile bir kapsayıcı öğeden ibaret. Kurulum bu kadar. Akış Shadow DOM içinde işlendiği için sitenizin CSS'i widget'ın içine, widget'ın CSS'i de sayfanıza sızamaz. Hangi aracı değerlendirirseniz değerlendirin kontrol etmeye değer bir nokta, çünkü script yöntemiyle çalışan gömmelerin çoğu hiçbir yalıtım yapmaz. Kontrolü de kolay: akışı incelediğinizde bir shadow root görüp görmediğinize bakın.
Sıranın tamamı bu ve akış ister WordPress'e, ister Shopify'a, ister elle yazılmış bir HTML sayfasına gitsin beş adım aynı kalıyor. Kendiniz deneyip sonucu yukarıdaki resmi gömme ekran görüntüleriyle karşılaştırabilirsiniz.
Instagram akış türleri: hesap, hashtag, etiketlenenler, bahsetmeler ve hikayeler
API kullanmaya başladığınız anda, Instagram'ın resmi gömmesinin hiçbir zaman sunmadığı seçenekler açılıyor. Kurulum aşamasında en sık yapılan hata da burada yanlış türü seçmek.
Hesap kendi gönderilerinizi sırayla gösterir; insanlar “Instagram akışı” dediğinde akıllarına gelen görüntü budur. Hashtag belirli bir etiketi taşıyan herkese açık gönderileri toplar, kullanıcı içeriği kampanyaları bu yolla kurulur. Etiketlenenler başka hesapların sizi etiketlediği gönderileri getirir. Bahsetmeler sizi @ ile anan gönderileri ve yorumları yakalar. Hikayeler ise o an yayında olan hikayelerinizi API üzerinden okur; yukarıda gördüğümüz gibi hikaye menüsünde gömme seçeneği bulunmadığı için var olan tek yol budur.
Beşi de ücretsiz olarak kullanılabiliyor. İkisine bizim değil Meta'nın koyduğu şartlar eşlik ediyor ve iki şartı da olduğu gibi aşağıya yazdım: hashtag araması bağlı bir Facebook sayfası istiyor, bahsetmeler ise yalnızca kurulumdan sonrası için geliyor.
Hashtag akışları: Facebook sayfası şartı gerçek
Hashtag akışı kuracaksanız bilmeniz gereken şu: Meta, hashtag aramasını Instagram işletme hesabınıza bağlı bir Facebook sayfası üzerinden işletiyor. Bu bizim paketleme kararımız değil, Meta'nın mimarisi; bu yüzden hiçbir araç bu şart olmadan Instagram hashtag araması sunamaz.

Bir kampanya planlamadan önce bilmekte fayda olan ikinci bir sınır daha var: Meta, hashtag aramasını hesap başına 7 günlük kayan pencerede 30 benzersiz hashtag ile sınırlıyor. Tek bir marka etiketi için fazlasıyla yeterli; onlarca etiketi dönüşümlü kullanmayı planlıyorsanız kısıt. Üstelik bu bilgi belgelerin derinlerinde değil, hesap seçme adımının üstünde yazıyor.

Hesap şartı da bu ekranda görünüyor: hashtag araması bir Instagram işletme hesabıyla çalışıyor. Kişisel hesaplar kapsam dışı ve bu da paket kısıtı değil, Meta kuralı.



Bahsetmeler yalnızca kurulumdan sonrası için gelir
Burası çok kişiyi şaşırttığı için açıkça yazıyorum: Instagram, bahsetmeleri bağlantıyı onayladığınız andan itibaren webhook ile gönderiyor. Kurulumdan önce sizden bahseden gönderiler içe aktarılamaz. Ne bizde ne başka bir yerde; API'de geçmişi geri getiren bir yöntem yok.

Bahsetmeler bağlantıya iki ek izin daha istiyor ve kurulum ekranı bunu olduğu gibi belirtiyor.

Etiketlenen gönderilerde geçmiş de gelir
Etiketlenenler bahsetmelerden farklı çalışıyor ve geçmiş gönderileri de getiriyor: test akışına 11 ay önce paylaşılmış bir etiketli gönderi düştü.

Resmi Instagram gömmesi ile Graph API widget'ı karşılaştırması
Aşağıdaki tablodaki her satır yukarıdaki oturumda bizzat kontrol ettiğim, sizin de kendi başınıza kontrol edebileceğiniz bir madde. Sayfa hızı rakamlarını bilerek koymadım: bu rakamları neden yayımlamayı bıraktığımızı (İngilizce) ayrıca yazdık. Kısa hâli şu: widget'ı sayfanın neresine koyduğunuza ve akışta ne olduğuna göre değiştikleri için araçtan çok test ortamını anlatan sayılar oluyorlar.
| Özellik | Instagram'ın resmi gömmesi | Graph API widget'ı |
|---|---|---|
| Son gönderilerden oluşan akış | Yok. Bir gömme, bir gönderi | Var |
| Sayfayı düzenlemeden güncellenme | Yok | Var |
| Hikayeler | Yok. Gömme seçeneğinin kendisi bulunmuyor | Var (API yoluyla) |
| Hashtag akışları | Yok | Var (Meta'nın istediği Facebook sayfası gerekir) |
| Etiketlenen gönderiler | Yok | Var |
| Bahsetmeler | Yok | Var (yalnızca kurulumdan sonrası, geçmiş alınamaz) |
| Gösterilecek gönderileri seçme | Var. Her birini elle siz yapıştırırsınız | Var. İnceleme ekranında onaylama, sabitleme, çıkarma |
| Üçüncü taraf script engellenirse | Geriye iki metin bağlantısı kalır | Sağlayıcıya göre değişir, mutlaka test edin |
| Maliyet | Ücretsiz | Ücretsiz başlanabilir (fiyatlandırma sayfası (İngilizce)) |
Dürüst özet şu: sayfada belirli tek bir gönderi göstermek istiyorsanız ve o gönderi değiştiğinde HTML düzenlemek sizi rahatsız etmiyorsa, Instagram'ın resmi gömmesi ücretsizdir ve işi görür. Ama kendi kendini güncel tutan bir akış istediğiniz anda, ya da hikayeler veya bir hashtag gerektiğinde, karşılaştırabileceğiniz resmi bir seçenek kalmıyor. İhtiyacınız bir widget ise Instagram akış widget'ı sayfasında (İngilizce) beş kaynak türünü ve tasarım seçeneklerini bulabilirsiniz.
WordPress, Wix, Squarespace, Shopify veya Webflow'a Instagram akışı ekleme
Yukarıdaki beş adım her yerde aynı; yalnızca kodu yapıştırdığınız yer platformdan platforma değişiyor. Her birini gerçek ürün üzerinde yürüttük:
- WordPress'e Instagram akışı ekleme (İngilizce), resmi eklentinin kurulumu dahil
- Wix'te Instagram akışı (İngilizce)
- Squarespace için Instagram widget'ı (İngilizce)
- Webflow'a Instagram akışı gömme (İngilizce)
- Shopify'a Instagram bağlama (İngilizce)
WordPress tarafında bir eklenti var, yani kodu Özel HTML bloğuna yapıştırmanız bile gerekmiyor: akış, düzenleyicinin içinde bir blok hâline geliyor.


Akışı sayfanın neresine koymalı
Akışın değeri, düzenden çok yerleşimde belli oluyor.
Bir Instagram akışı hangi sayfada işe yarar
Animasyon bir web sitesi maketi çiziyor ve Instagram akışının işe yaradığı üç bölgeyi sırayla vurgulayıp her biri için kısa bir gerekçe gösteriyor: ana sayfanın ilk ekran altındaki bölümü, gerçek kullanımı gösteren ürün sayfası ve markayı insan yüzüyle tanıtan hakkımızda sayfası. Vurgu bu üç bölge arasında dönüp duruyor.
Ana sayfada akışı ilk ekranın altına koyun, yani sayfa ne yaptığınızı söyledikten sonra. Ürün sayfasında, o ürünü kullanan müşterilerin gönderileri her alıcının içinden geçirdiği soruya cevap verir. Açılış sayfasında ise dikkatli olun: akış, ziyaretçiye bakacak başka bir yer ve tıklayacak başka bir yer sunar.
Sayfa türüne göre ayrıntılı anlatımı Instagram akışını nereye yerleştirmeli (İngilizce) yazısında bulabilirsiniz.
Diğer platformların akışları
Diğer platformlar için de aynı yaklaşımı izledik: resmi yolu kendimiz test ettik, sonra çalışan yöntemi adım adım anlattık.
- X (Twitter) akışını web sitesine gömme
- YouTube oynatma listesi ve kanal videolarını siteye gömme
- Google yorumlarını web sitesine ekleme
Sıkça sorulan sorular
Instagram profilimin tamamını web siteme gömebilir miyim?
Instagram'ın sunduğu araçlarla mümkün değil. Profil gömme de akış gömme de yok, yalnızca gönderi bazlı gömme var. Akış için Graph API'yi kullanan bir araç gerekir.
Instagram akışı eklemek ücretsiz mi?
Instagram'ın gönderi bazlı gömmesi ücretsizdir ve gönderi bazlı olmayı sürdürür. Gerçek bir akış istiyorsanız CollectSocials'ta Instagram kaynak türlerinin beşini de (hesap, hashtag, etiketlenenler, bahsetmeler ve hikayeler) ücretsiz kullanabilirsiniz. Ücretsiz hesap açın: süreci baştan sona deneyip ödemeye değip değmeyeceğine sonra karar verebilirsiniz. Paketlerin ayrıntısı fiyatlandırma sayfasında (İngilizce) duruyor.
Instagram gömmemde neden sadece bağlantı görünüyor?
Bu, instagram.com'dan yüklenen script çalışmadığında geriye kalan blockquote yedek görünümüdür. Reklam engelleyiciler, gizlilik modları ve çerez izni bantları bunun sebebi olabilir. Kendi tarayıcınızda script sorunsuz yükleniyorsa siz sorunu göremezsiniz, bu yüzden fark edilmeden kalması kolaydır.
Instagram hikayelerini gömebilir miyim?
Gömme yoluyla mümkün değil; hikaye menüsünde Embed satırı yok. Web sitesinde görünen hikayeler API üzerinden gelir.
Facebook sayfası şart mı?
Hesap akışı için gerekmiyor. Hashtag araması için gerekiyor: Meta bunu Instagram işletme hesabına bağlı bir sayfa üzerinden işletiyor ve bu kural bütün araçlar için aynı.
İşletme hesabı gerekli mi?
API üzerinden çalışan akışlar için gerekli: işletme ya da içerik üreticisi hesabı olmalı. Kişisel hesaplar kapsam dışı.
Kurulumdan önceki bahsetmeleri alabilir miyim?
Alamazsınız. Instagram bahsetmeleri bağlantıyı onayladığınız andan itibaren webhook ile iletiyor ve API'de geçmişi geri getiren bir yöntem bulunmuyor.
Kod bilmem gerekiyor mu?
Hayır. Kurulum, bir <script> etiketi ile bir kapsayıcı öğeyi akışın görünmesini istediğiniz yere yapıştırmaktan ibaret; WordPress'te ise buna bile gerek yok, akış düzenleyicinin içinde bir blok oluyor.
Instagram akışınızı web sitenize taşıyın
Gönderileri tek tek yapıştırmaya son. Hesabınızı bağlayın, gösterilecek gönderileri seçin, tek parça kodu sayfanıza yapıştırın.
Test koşulları ve kaynaklar
Testler 2026 Temmuz'unda, WordPress 7.0.2 ve PHP 8.4 ortamında, uzantıları kapatılmış Chrome gizli penceresiyle yapıldı. Hiçbir gömme içermeyen bir kontrol sayfası dahil olmak üzere birbirinin aynı üç sayfa kullanıldı; uç noktalar temiz bir kabuktan curl ile çağrıldı. Bu yazıda anlatılan ürün davranışı, CollectSocials'ın 2026 Ağustos'undaki davranışıdır. Meta, Instagram'ın API yüzeyini sık sık değiştiriyor; bir kararın dayanağı yapmadan önce yeniden kontrol etmenizi öneririm.