Kodu anlayıp, birkaç harf değiştirmem gerekiyor

NobleChemist

Yeni üye
5 Şub 2023
6
1
Herkese merhaba, elimde bir tema var, sadece 3 satırlık kodu anlayıp, birkaç kelimenin yerini değiştirmem gerekiyor. Kod amazon'un cdn'sinden script koduyla çekiliyor. Ve tema sahibi bu işin başında değil, otomatiğe bağlamış. Her ay kodlar otomatik değişiyor. Yani aktif olan eklentilerim sıfıra düşüyor. Her ay temayı yeniden kurmak zorunda kalıyorum. Destekten cevap gelmiyor. Ödemesini yaptığım bir temayı kendim kurcalayıp çözmem gerektiyor sanırım.

KOD ;

!async function(){document.dispatchEvent(new CustomEvent("dbtfy:loading"));try{var n;let t={},e=[];const a=await fetch("/search?view=addons");a.ok&&(n=await a.json().then(t=>t.addons),e=Object.keys(n).reduce((t,e)=>!0===n[e]?[...t,{name:e,class:e.replace("dbtfy_","dbtfy-")}]:t,[]),t={...t,enabledAddons:e});const d=[...document.querySelectorAll(".dbtfy")],c=e.map(t=>t.class);c.length&&d.length&&d.filter(e=>!c.some(t=>e.classList.contains(t))).forEach(t=>{t.remove()}),document.dispatchEvent(new CustomEvent("dbtfy:loaded",{detail:t}))}catch(t){document.dispatchEvent(new CustomEvent("dbtfy:failed"))}}();


(n) = ( n ) *boşluksuz

"/search?view=addons" kaynağından veri almak için "dbtfy:loading" ile olay gönderip etkin eklentileri "e" dizininde topluyor. Etkinleştirilmiş eklentileri "t"ye yüklüyor.

Halihazırda tüm eklentilere sahibim ama öyle bir yerde kod değiştiriliyor ki, elimdeki tüm eklentiler kayboluyor. 55 eklentiden 0 eklentiye düşüyorum ve bu canımı sıkıyor açıkçası. Şu an eklentiler kurulu sorunsuz, anlayabilmeniz için eklentisiz koda ihtiyacınız var mı bilmiyorum. Eğer eklentisiz koda ihtiyacınız varsa eklentileri kaybettiğimde atabilirim. Okuyan ve anlamaya çalışan yardımcı olan herkese çok teşekkür ederim :)

Eğer yapabilirsem, bu hazır çalışan kodu kendim scriptle çekebileceğim bir js dosyasına yapıştırıp, cdn veya herhangi bir barındırmaya yüklersem sorunsuz çalışır mı diye düşünüyorum.
 
Moderatör tarafında düzenlendi:
Çözüm
mükemmel cevap, teşekkür ederim :) yalnız bunu tam 1 saat önce araştırarak denedim, kodun aynısı. hosta yükledim fakat çalışmadı. hostta tam olarak nereye yüklemem gerekiyor, assets bölümüne yüklemiştim. çünkü diğer js dosyaları da orda. kodu değiştirdiğim kısım ise layout bölümündeki tema dosyasında. dosyayı bulamamış olabilir mi
JS dosyasını doğru yerden çektiğinize emin misiniz acaba?
kendi hostunuza yükledikten sonra

site.com/assets/blablabla/dosyaadi.js
şeklinde gitmeye çalıştığınızda görüntüleyebiliyor musunuz?

Eğer görüntüleyebiliyorsanız websayfanızda js kodunu çağırdığınız html sayfasına gidip, ctrl+shift+k'ye bastığınızda konsolda herhangi bir hata mesajı görüntülüyor musunuz?
Görüntülüyorsanız hatayı buraya...

Enistein

Kıdemli Üye
16 Eyl 2012
2,220
1,213
Amsterdam
Herkese merhaba, elimde bir tema var, sadece 3 satırlık kodu anlayıp, birkaç kelimenin yerini değiştirmem gerekiyor. Kod amazon'un cdn'sinden script koduyla çekiliyor. Ve tema sahibi bu işin başında değil, otomatiğe bağlamış. Her ay kodlar otomatik değişiyor. Yani aktif olan eklentilerim sıfıra düşüyor. Her ay temayı yeniden kurmak zorunda kalıyorum. Destekten cevap gelmiyor. Ödemesini yaptığım bir temayı kendim kurcalayıp çözmem gerektiyor sanırım.

KOD ;

!async function(){document.dispatchEvent(new CustomEvent("dbtfy:loading"));try{var n;let t={},e=[];const a=await fetch("/search?view=addons");a.ok&&(n=await a.json().then(t=>t.addons),e=Object.keys(n).reduce((t,e)=>!0===n[e]?[...t,{name:e,class:e.replace("dbtfy_","dbtfy-")}]:t,[]),t={...t,enabledAddons:e});const d=[...document.querySelectorAll(".dbtfy")],c=e.map(t=>t.class);c.length&&d.length&&d.filter(e=>!c.some(t=>e.classList.contains(t))).forEach(t=>{t.remove()}),document.dispatchEvent(new CustomEvent("dbtfy:loaded",{detail:t}))}catch(t){document.dispatchEvent(new CustomEvent("dbtfy:failed"))}}();


(n) = ( n ) *boşluksuz

"/search?view=addons" kaynağından veri almak için "dbtfy:loading" ile olay gönderip etkin eklentileri "e" dizininde topluyor. Etkinleştirilmiş eklentileri "t"ye yüklüyor.

Halihazırda tüm eklentilere sahibim ama öyle bir yerde kod değiştiriliyor ki, elimdeki tüm eklentiler kayboluyor. 55 eklentiden 0 eklentiye düşüyorum ve bu canımı sıkıyor açıkçası. Şu an eklentiler kurulu sorunsuz, anlayabilmeniz için eklentisiz koda ihtiyacınız var mı bilmiyorum. Eğer eklentisiz koda ihtiyacınız varsa eklentileri kaybettiğimde atabilirim. Okuyan ve anlamaya çalışan yardımcı olan herkese çok teşekkür ederim :)

Merhaba,
bu kod minify edilmiş bir koddur. Bundan dolayı okunması zordur. Bir nebze daha anlaşılır olması için, unminify js diye Google üzerinde aratıp online olarak anlaşılabilir bir hale getirebilirsiniz.

JavaScript:
!(async function () {
    document.dispatchEvent(new CustomEvent("dbtfy:loading"));
    try {
        var n;
        let t = {},
            e = [];
        const a = await fetch("/search?view=addons");
        a.ok && ((n = await a.json().then((t) => t.addons)), (e = Object.keys.reduce((t, e) => (!0 === n[e] ? [...t, { name: e, class: e.replace("dbtfy_", "dbtfy-") }] : t), [])), (t = { ...t, enabledAddons: e }));
        const d = [...document.querySelectorAll(".dbtfy")],
            c = e.map((t) => t.class);
        c.length &&
            d.length &&
            d
                .filter((e) => !c.some((t) => e.classList.contains(t)))
                .forEach((t) => {
                    t.remove();
                }),
            document.dispatchEvent(new CustomEvent("dbtfy:loaded", { detail: t }));
    } catch (t) {
        document.dispatchEvent(new CustomEvent("dbtfy:failed"));
    }
})();
 

NobleChemist

Yeni üye
5 Şub 2023
6
1
Merhaba,
bu kod minify edilmiş bir koddur. Bundan dolayı okunması zordur. Bir nebze daha anlaşılır olması için, unminify js diye Google üzerinde aratıp online olarak anlaşılabilir bir hale getirebilirsiniz.

JavaScript:
!(async function () {
    document.dispatchEvent(new CustomEvent("dbtfy:loading"));
    try {
        var n;
        let t = {},
            e = [];
        const a = await fetch("/search?view=addons");
        a.ok && ((n = await a.json().then((t) => t.addons)), (e = Object.keys.reduce((t, e) => (!0 === n[e] ? [...t, { name: e, class: e.replace("dbtfy_", "dbtfy-") }] : t), [])), (t = { ...t, enabledAddons: e }));
        const d = [...document.querySelectorAll(".dbtfy")],
            c = e.map((t) => t.class);
        c.length &&
            d.length &&
            d
                .filter((e) => !c.some((t) => e.classList.contains(t)))
                .forEach((t) => {
                    t.remove();
                }),
            document.dispatchEvent(new CustomEvent("dbtfy:loaded", { detail: t }));
    } catch (t) {
        document.dispatchEvent(new CustomEvent("dbtfy:failed"));
    }
})();
teşekkür ederim şimdi daha kolay okunabiliyor, elinize sağlık.
e-ticaret firması yönetiyorum ama bu kodlara hakim değilim. (bu bundan büyükse diğerlerini sil gibi kodlar var ama nereyi değiştireceğimi bilmiyorum)
 

Enistein

Kıdemli Üye
16 Eyl 2012
2,220
1,213
Amsterdam
teşekkür ederim şimdi daha kolay okunabiliyor, elinize sağlık.
e-ticaret firması yönetiyorum ama bu kodlara hakim değilim. (bu bundan büyükse diğerlerini sil gibi kodlar var ama nereyi değiştireceğimi bilmiyorum)
Koddan anladığım kadarıyla apiden verileri json formatında çekiyor. Gelen verilere göre sayfa içerisinde dbtfy classına sahip olmayan bütün elemanları siliyor.
 

NobleChemist

Yeni üye
5 Şub 2023
6
1
Koddan anladığım kadarıyla apiden verileri json formatında çekiyor. Gelen verilere göre sayfa içerisinde dbtfy classına sahip olmayan bütün elemanları siliyor.
Peki son olarak, bu kod zaten sorunsuz olduğu için cdn'den çekilen scripti iptal edip direkt temaya yazsam nasıl yazmam gerekir?

<script defer src='https://cdn.debutify.com/scripts/pr...zLm15c2hvcGlmeS5jb20=/debutify_script_tags.js'></script></head>

kod bu linkten çekiliyor. içeriğini değiştirebilmek için cdn'ye yüklemişler. direkt temaya yazabilir miyim, başına ve sonuna yazacağım komutları nereden öğrenebilirim
 

Enistein

Kıdemli Üye
16 Eyl 2012
2,220
1,213
Amsterdam
Peki son olarak, bu kod zaten sorunsuz olduğu için cdn'den çekilen scripti iptal edip direkt temaya yazsam nasıl yazmam gerekir?

<script defer src='https://cdn.debutify.com/scripts/pr...zLm15c2hvcGlmeS5jb20=/debutify_script_tags.js'></script></head>

kod bu linkten çekiliyor. içeriğini değiştirebilmek için cdn'ye yüklemişler. direkt temaya yazabilir miyim, başına ve sonuna yazacağım komutları nereden öğrenebilirim
evet değiştirebilirsiniz scriptinizi normal hostunuza yükleyip yukarda belirttiğiniz
<script defer src='https://cdn.debutify.com/scripts/pr...zLm15c2hvcGlmeS5jb20=/debutify_script_tags.js'></script>
yazan kısmı silip aşağıdaki şekilde güncelleyebilirsiniz.
<script src="jsadresi.js"></script>
şeklinde güncelleyebilirsiniz.

Koddan anladığım kadarıyla sadece cdnden geliyor, cdn içerisinde bulunan herhangi başka bir sayfayı, urlyi, datayı, vb. tetiklemiyor. Bundan dolayı sıkıntısız bir şekilde çalışır.
 

NobleChemist

Yeni üye
5 Şub 2023
6
1
evet değiştirebilirsiniz scriptinizi normal hostunuza yükleyip yukarda belirttiğiniz
<script defer src='https://cdn.debutify.com/scripts/pr...zLm15c2hvcGlmeS5jb20=/debutify_script_tags.js'></script>
yazan kısmı silip aşağıdaki şekilde güncelleyebilirsiniz.
<script src="jsadresi.js"></script>
şeklinde güncelleyebilirsiniz.

Koddan anladığım kadarıyla sadece cdnden geliyor, cdn içerisinde bulunan herhangi başka bir sayfayı, urlyi, datayı, vb. tetiklemiyor. Bundan dolayı sıkıntısız bir şekilde çalışır.
mükemmel cevap, teşekkür ederim :) yalnız bunu tam 1 saat önce araştırarak denedim, kodun aynısı. hosta yükledim fakat çalışmadı. hostta tam olarak nereye yüklemem gerekiyor, assets bölümüne yüklemiştim. çünkü diğer js dosyaları da orda. kodu değiştirdiğim kısım ise layout bölümündeki tema dosyasında. dosyayı bulamamış olabilir mi
 

Enistein

Kıdemli Üye
16 Eyl 2012
2,220
1,213
Amsterdam
mükemmel cevap, teşekkür ederim :) yalnız bunu tam 1 saat önce araştırarak denedim, kodun aynısı. hosta yükledim fakat çalışmadı. hostta tam olarak nereye yüklemem gerekiyor, assets bölümüne yüklemiştim. çünkü diğer js dosyaları da orda. kodu değiştirdiğim kısım ise layout bölümündeki tema dosyasında. dosyayı bulamamış olabilir mi
JS dosyasını doğru yerden çektiğinize emin misiniz acaba?
kendi hostunuza yükledikten sonra

site.com/assets/blablabla/dosyaadi.js
şeklinde gitmeye çalıştığınızda görüntüleyebiliyor musunuz?

Eğer görüntüleyebiliyorsanız websayfanızda js kodunu çağırdığınız html sayfasına gidip, ctrl+shift+k'ye bastığınızda konsolda herhangi bir hata mesajı görüntülüyor musunuz?
Görüntülüyorsanız hatayı buraya atarsanız sorunu inceleyebiliriz.
 
Çözüm

NobleChemist

Yeni üye
5 Şub 2023
6
1
JS dosyasını doğru yerden çektiğinize emin misiniz acaba?
kendi hostunuza yükledikten sonra

site.com/assets/blablabla/dosyaadi.js
şeklinde gitmeye çalıştığınızda görüntüleyebiliyor musunuz?

Eğer görüntüleyebiliyorsanız websayfanızda js kodunu çağırdığınız html sayfasına gidip, ctrl+shift+k'ye bastığınızda konsolda herhangi bir hata mesajı görüntülüyor musunuz?
Görüntülüyorsanız hatayı buraya atarsanız sorunu inceleyebiliriz.
hocam harikasın. shopify bunları bana görüntülememe izin vermediği için sitemi sağ tık incelemeden network ayarlarından buldum konumu. blabla dediğiniz noktada üst üste 10 klasöre gömülmüş. cloud cdn amazon front vs araştırıyorum sabahtan beri. bir de ne göreyim, zaten halihazırda shopify'ın cdnsi var. sizin verdiğiniz kodun js dosyasını yapıştırdım direkt. şu an tüm eklentiler sorunsuz geldi. umarım sorun yaşamam.

yönlendirmeleriniz için çok teşekkür ederim. sağlıcakla kalın, iyi akşamlar :)
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.