Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.
Katılım
3 Aralık 2023
Mesajlar
15.077
Makaleler
104
Çözümler
1.590
Beğeniler
45.768
Yer
İstanbul
Arkadaşlar selam,

Hem Technopat hem de burada mevcut olan bir sorunu çözmeye çalışıyoruz. Sorun basitçe içinde Türkçe karakter olan bir link konulduğunda karakterlerin bozuk çıkması. Bkz:


Bütün eklentileri kapatsak da bu sorun devam etti maalesef. İşin garibi, sistem veriyi çekerken sorun yok. Bkz.

HTML:
<!DOCTYPE html>
<html class="nojs tr-tr seg-consumer emea tr" lang="tr-TR">

        <head>


            <link rel="preconnect" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com" crossorigin="anonymous">
            <link rel="dns-prefetch" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com" crossorigin="anonymous">

            <link rel="preconnect" href="https://www.apple.com" crossorigin="anonymous">
            <link rel="dns-prefetch" href="https://www.apple.com" crossorigin="anonymous">

            <meta name="viewport" content="width=device-width, height=device-height, initial-scale=1" />
    <title>Güç Adaptörü Uzatma Kablosu - Apple (TR)</title>
    <meta charset="utf-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />  
    <meta name="format-detection" content="telephone=no" />      
         <meta property="og:locale" content="tr_TR" />
        <meta name="robots" content="max-image-preview:large" />
        <meta property="og:title" content="Güç Adaptörü Uzatma Kablosu" />
        <meta property="og:type" content="product" />
        <meta property="og:image" content="https://store.storeimages.cdn-apple.com/4668/as-images.apple.com/is/MK122_GEO_EMEA?wid=1200&amp;hei=630&amp;fmt=jpeg&amp;qlt=95&amp;.v=1694554348237" />
        <meta name="twitter:card" content="summary_large_image" />
        <meta property="og:site_name" content="Apple (TR)" />
        <meta name="twitter:site" content="@apple" />
        <meta property="og:url" content="https://www.apple.com/tr/shop/product/MK122TU/A/güç-adaptörü-uzatma-kablosu" />
        <meta property="og:description" content="Güç Adaptörü Uzatma Kablosu ile, Apple güç adaptörünüzü kolaylıkla uzatabilirsiniz." />
    <meta name="description" content="Güç Adaptörü Uzatma Kablosu ile, Apple güç adaptörünüzü kolaylıkla uzatabilirsiniz." />
       
     
     
      <link rel="canonical" href="https://www.apple.com/tr/shop/product/MK122TU/A/güç-adaptörü-uzatma-kablosu" />
            <link rel="alternate" hreflang="zh-hant-hk" href="https://www.apple.com/hk-zh/shop/product/MK122B/A/%E9%9B%BB%E6%BA%90-%E8%BD%89%E6%8F%9B%E5%99%A8-%E5%BB%B6%E9%95%B7%E7%B7%9A" />
            <link rel="alternate" hreflang="en-sg" href="https://www.apple.com/sg/shop/product/MK122B/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="zh-hant-tw" href="https://www.apple.com/tw/shop/product/MK122TA/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-ca" href="https://www.apple.com/ca/shop/product/MK122LL/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-ie" href="https://www.apple.com/ie/shop/product/MK122B/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-gb" href="https://www.apple.com/uk/shop/product/MK122B/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-ae" href="https://www.apple.com/ae/shop/product/MK122B/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="no-no" href="https://www.apple.com/no/shop/product/MK122Z/A/skj%C3%B8tekabel-for-lader" />
            <link rel="alternate" hreflang="hu-hu" href="https://www.apple.com/hu/shop/product/MK122Z/A/h%C3%A1l%C3%B3zatiadapter-hosszabb%C3%ADt%C3%B3" />
            <link rel="alternate" hreflang="fr-be" href="https://www.apple.com/be-fr/shop/product/MK122Z/A/c%C3%A2ble-extension-adaptateur-secteur" />
            <link rel="alternate" hreflang="en-us" href="https://www.apple.com/shop/product/MK122LL/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-in" href="https://www.apple.com/in/shop/product/MK122HN/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="tr-tr" href="https://www.apple.com/tr/shop/product/MK122TU/A/g%C3%BC%C3%A7-adapt%C3%B6r%C3%BC-uzatma-kablosu" />
            <link rel="alternate" hreflang="de-ch" href="https://www.apple.com/ch-de/shop/product/MK122SM/A/power-adapter-netzteil-verl%C3%A4ngerungskabel" />
            <link rel="alternate" hreflang="th-th" href="https://www.apple.com/th/shop/product/MK122TH/A/%E0%B8%AA%E0%B8%B2%E0%B8%A2%E0%B9%80%E0%B8%9E%E0%B8%B4%E0%B9%88%E0%B8%A1%E0%B8%84%E0%B8%A7%E0%B8%B2%E0%B8%A1%E0%B8%A2%E0%B8%B2%E0%B8%A7%E0%B8%AD%E0%B8%B0%E0%B9%81%E0%B8%94%E0%B8%9B%E0%B9%80%E0%B8%95%E0%B8%AD%E0%B8%A3%E0%B9%8C%E0%B9%81%E0%B8%9B%E0%B8%A5%E0%B8%87%E0%B9%84%E0%B8%9F" />
            <link rel="alternate" hreflang="da-dk" href="https://www.apple.com/dk/shop/product/MK122DK/A/forl%C3%A6ngerkabel-til-str%C3%B8mforsyning" />
            <link rel="alternate" hreflang="vi-vn" href="https://www.apple.com/vn/shop/product/MK122ZP/A/c%C3%A1p-n%E1%BB%91i-d%C3%A0i-cho-b%E1%BB%99-ti%E1%BA%BFp-h%E1%BB%A3p-ngu%E1%BB%93n" />
            <link rel="alternate" hreflang="fi-fi" href="https://www.apple.com/fi/shop/product/MK122Z/A/virtal%C3%A4hteen-jatkokaapeli" />
            <link rel="alternate" hreflang="fr-lu" href="https://www.apple.com/lu/shop/product/MK122Z/A/c%C3%A2ble-extension-adaptateur-secteur" />
            <link rel="alternate" hreflang="en-au" href="https://www.apple.com/au/shop/product/MK122X/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="fr-fr" href="https://www.apple.com/fr/shop/product/MK122Z/A/c%C3%A2ble-extension-adaptateur-secteur" />
            <link rel="alternate" hreflang="nl-be" href="https://www.apple.com/be-nl/shop/product/MK122Z/A/lichtnetadapter-verlengkabel" />
            <link rel="alternate" hreflang="de-at" href="https://www.apple.com/at/shop/product/MK122D/A/power-adapter-netzteil-verl%C3%A4ngerungskabel" />
            <link rel="alternate" hreflang="nl-nl" href="https://www.apple.com/nl/shop/product/MK122Z/A/lichtnetadapter-verlengkabel" />
            <link rel="alternate" hreflang="en-th" href="https://www.apple.com/th-en/shop/product/MK122TH/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="en-ph" href="https://www.apple.com/ph/shop/product/MK122PP/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="pl-pl" href="https://www.apple.com/pl/shop/product/MK122Z/A/przed%C5%82u%C5%BCacz-do-zasilacza" />
            <link rel="alternate" hreflang="es-cl" href="https://www.apple.com/cl/shop/product/MK122CI/A/cable-de-extensi%C3%B3n-para-el-adaptador-de-corriente" />
            <link rel="alternate" hreflang="fr-ca" href="https://www.apple.com/xf/shop/product/MK122LL/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="zh-hans-cn" href="https://www.apple.com.cn/shop/product/MK122CH/A" />
            <link rel="alternate" hreflang="en-hk" href="https://www.apple.com/hk/shop/product/MK122B/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="cs-cz" href="https://www.apple.com/cz/shop/product/MK122Z/A/prodlu%C5%BEovac%C3%AD-kabel-nap%C3%A1jec%C3%ADho-adapt%C3%A9ru" />
            <link rel="alternate" hreflang="ja-jp" href="https://www.apple.com/jp/shop/product/MK122J/A/%E9%9B%BB%E6%BA%90%E3%82%A2%E3%83%80%E3%83%97%E3%82%BF%E5%BB%B6%E9%95%B7%E3%82%B1%E3%83%BC%E3%83%96%E3%83%AB" />
            <link rel="alternate" hreflang="fr-ch" href="https://www.apple.com/ch-fr/shop/product/MK122SM/A/c%C3%A2ble-extension-adaptateur-secteur" />
            <link rel="alternate" hreflang="de-de" href="https://www.apple.com/de/shop/product/MK122D/A/power-adapter-netzteil-verl%C3%A4ngerungskabel" />
            <link rel="alternate" hreflang="es-es" href="https://www.apple.com/es/shop/product/MK122Z/A/cable-alargador-adaptador-corriente" />
            <link rel="alternate" hreflang="pt-br" href="https://www.apple.com/br/shop/product/MK122BZ/A/cabo-de-extens%C3%A3o-para-adaptador-de-energia" />
            <link rel="alternate" hreflang="es-mx" href="https://www.apple.com/mx/shop/product/MK122LL/A/cable-de-extensi%C3%B3n-para-el-adaptador-de-corriente" />
            <link rel="alternate" hreflang="it-it" href="https://www.apple.com/it/shop/product/MK122CI/A/prolunga-per-alimentatore" />
            <link rel="alternate" hreflang="pt-pt" href="https://www.apple.com/pt/shop/product/MK122Z/A/cabo-de-extens%C3%A3o-para-adaptador-de-corrente" />
            <link rel="alternate" hreflang="en-nz" href="https://www.apple.com/nz/shop/product/MK122X/A/power-adapter-extension-cable" />
            <link rel="alternate" hreflang="sv-se" href="https://www.apple.com/se/shop/product/MK122Z/A/f%C3%B6rl%C3%A4ngningskabel-f%C3%B6r-str%C3%B6madapter" />
          <link rel="image_src" href="https://store.storeimages.cdn-apple.com/4668/as-images.apple.com/is/MK122_GEO_EMEA?wid=400&amp;hei=400&amp;fmt=jpeg&amp;qlt=90&amp;.v=1694554348237" />

            <link data-srs rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/static-resources/rs-globalelements-2.6.0-2a5e7/dist/ac-globalnav.css" media="screen, print"  />



        <link data-srs rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/static-resources/rs-external-1.54.1-77a94/rel/tr/external.css" media="screen, print"  />
        <link data-srs rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/static-resources/rs-vendor-1.17.1-38d61/dist/[email protected]/dist/common.css" media="screen, print"  />
        <link data-srs rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/static-resources/rs-pdp-1.19.5-81256/dist/product-details.css" media="screen, print"  />

        <link data-srs rel="stylesheet" href="https://www.apple.com/wss/fonts?families=SF+Pro,v3:200,300,400,500,600|SF+Pro+Icons,v3|Apple+Monochrome+Emoji,v3|Apple+Monochrome+Emoji+Ind,v2|Graphik,v1"  />

   



<link rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/shop/Catalog/global/css/dd/buy-flow/pdp.css" media="screen, print" />
<link rel="stylesheet" href="https://store.storeimages.cdn-apple.com/4668/store.apple.com/shop/Catalog/global/css/web/fee/pdp/as-pdp.css" media="screen, print" />

    </head>

Ben yine de sorunun kurduğumuz bir eklentiden kaynaklandığını düşünüyorum ama daha kapsamlı test için local'de XAMPP ile bir test yapacağız.
 
Son düzenleme:
Çözüm
Efenim sorunu çözdüm. Peki nasıl çözdüm adım adım ilerleyelim:
  • Öncelikle sorun Techopat'ta başladı. Ben de bu yüzden soruna bizim geliştirici Mikail'in eklentileri sebep oluyor sanıyordum zira onun eklentileri hem Techolay.net'te hem de İngilizce sitemiz olan Geekberry.net'te mevcut.
  • Geekberry.net'te bütün eklentileri kapatmama rağmen sorun devam ediyordu. Bu durumda sorun eklenti kaynaklı değildi.
  • Bu sorun genelde UTF-8 eksikliğinden kaynaklandığından veri tabanlarını tekrar kontrol ettim ama veri tabanları zaten XenForo tarafından otomatik olarak utf8mb4_general_ci olarak ayarlanıyor. Kaldı ki veri tabanında da bir değişiklik olmadı.
  • XenForo'nun Demo sitesine girdim, sorun yoktu. XenForo.com'da da sorun yok.
  • PC'ye XAMPP kurup sıfır XenForo 2.2.13 kurdum, sorun bu temiz kurulumda da karşıma çıktı!
  • Yeni sürümde sorun vardır deyip 2.2.12 ile denedim, yine çözülmedi!
En sonunda XenForo Demo sitesindeki admin paneline ve XAMPP paneline bakmaya başladım. XenForo ekibi de sorun sunucu kaynaklı dediği için sunucudaki bir şey bu soruna sebep olmalıydı. cURL veya OpenSSL düşük ihtimaldi. Dikkatimi çeken şey şu oldu: Technopat, Techolay, Geekberry ve XAMPP; hepsi PHP 8.2 kullanıyordu! XAMPP içinde PHP sürüm düşürme nasıl yapılır diye baktım, uzun bir işlemdi, vazgeçtim. Hemen Geekberry cPanel'ini açtım ve PHP 8.2 (8.2.12) sürümünü 8.1 (8.1.26) yaptım ve sorun çözüldü!

Evet, sorunun sebebi PHP 8.2 imiş.

Şimdi tabii net olarak hatanın PHP mi XenForo kaynaklı mı olduğunu bilmiyoruz ama XenForo ekibine durumu ileteceğim, yazdıkları kodda hata varsa onlar, yoksa da PHP ekibi sorunu çözecek.

Böylece Techolay.net'te sorduğum ilk soruyu yine ben çözmüş oldum :p
Elinize sağlık hocam. Üye olup çözümü burada da verirseniz geliştiriciler için daha faydalı olabilir 🙏


Teşekkürler oraya da ekledim.

Yazılan şeylerden hiçbir şey anlamadım ama elinize sağlık :)
Rica ederim.

Tekrar selam,
Buradan iletilen 2 sorunun çözümünü kodda düzelttim. Ve nelerin nasıl değişmesi gerektiği ile ilgili olarak yazının devamında bilgi olarak paylaştım.
Sorunlar:
1) Türkçe karakter içeren başlıkların bağlantıları doğru olarak görülmüyor.
Ör:
başlık: XenForo URL Türkçe karakter sorunu.
URL: XenForo-URL-tuerkce-karakter-sorunu. 852.

2) Türkçe karakter içeren bağlantılarda "urlToUtf8 hatası" veya "bir sunucu hatası oluştu" şeklinde uyarı alınıyor.
Ör: https://www.apple.com/tr/shop/product/MK122TU/A/güç-adaptörü-uzatma-kablosu

Yine de yüklemeniz, mesajımda belirttiğim üzere iyi olur.

O zaman kurulum ayarlarında bir problem olmalı. Yani bir ya da birden fazla ayarı sürekli aynı şekilde belirliyorsunuz, bu yüzden problem, farklı ortamlarda XenForo çalıştırsanız da devam ediyor.

Benim hatırladığım kadarıyla, tüm sunucu hataları XenForo yönetim panelinde kaydediliyor.

Şu aşağıdaki URL'yi ön izle yaparak, bahsettiğim hata mesajını alıp, hemen ardından paneldeki hata kayıtlarını inceler misiniz ve mümkünse benimle de paylaşır mısınız?

https://www.apple.com/tr/shop/product/MK122TU/A/güç-adaptörü-uzatma-kablosu

Eki Görüntüle 2343

Bu sorun içinde bir çözüm buldum. Yine kaynak kod üzerinde değişiklik yapmak gerekiyor.
Dosya konumu: src/XF/Str/Formatter.php:440

PHP:
public function encodeURI($uri)
{
 return preg_replace_callback("{[^0-9a-z_.!~*'();,/?:@&=+$#-]}i", function ($m) {
 return sprintf('%%%02X', ord($m[0]));
 }, $uri);
}

public function prepareAutoLinkedUrl($url, array $options = [])
 {
 // Eklenmesi gereken alan başlangıcı.
 $url = $this->encodeURI($url);
 // Eklenmesi gereken alan sonu.
 ...

Koddaki değişiklik:

Code_keJXS9qEZZ.webp


Sorunun çözümü:

1703541279716.webp


1703541294665.webp


URL yapısı (slug) ile ilgili çözüm:

Dosya konumu: src/XF/Mvc/Router.php:515

PHP:
public function turkishSlugConverter($text){
 $turkisLetter = ["Ğ","Ü","Ş","İ","Ö","Ç","ğ","ü","ş","ı","ö","ç"," "];
 $englishLetter = ["G","U","S","I","O","C","g","u","s","i","o","c","-"];

 return str_replace($turkisLetter, $englishLetter, strip_tags(trim($text)));
}

public function prepareStringForUrl($string, $romanizeOverride = null)
{
 // Eklenen kod başlangıcı.
 $string = strval($string);
 $string = $this->turkishSlugConverter($string);
 // Eklenen kod sonu.
 ...

Kodda değişiklik:

1703541554834.webp


1703541453491.webp


Bir değişiklik yapılması gereken yer daha var mış. Bu kod türkçe karakterli girilen bağlantıların embed kutularını oluşturmayı sağlıyor. Eklenmediği taktirde yine hata alınmaya devam edecektir.

Dosya konumu: src/XF/Http/MetadataFether.php:35

PHP:
public function encodeURI($uri)
{
 return preg_replace_callback("{[^0-9a-z_.!~*'();,/?:@&=+$#-]}i", function ($m) {
 return sprintf('%%%02X', ord($m[0]));
 }, $uri);
}

public function fetch($requestUrl, &$error = null, $startTime = null, $timeLimit = null)
 {
 // Eklenmesi gereken kod başlangıcı
 $requestUrl = $this->encodeURI($requestUrl);
 // Eklenmesi gereken kod bitişi
 $requestUrl = $this->getValidRequestUrl($requestUrl, $startTime, $timeLimit);

1703542518708.webp
 
Son düzenleme:
Bir değişiklik yapılması gereken yer daha var mış. Bu kod türkçe karakterli girilen bağlantıların embed kutularını oluşturmayı sağlıyor. Eklenmediği taktirde yine hata alınmaya devam edecektir.
Bunun için bir yama yayınladılar hocam hatam yoksa. Hatta size verdiğim link bu yamayı içeriyor.

Umarım bunları 2.2.14 sürümüne entegre ederler 🙏
 
URL yapısı (slug) ile ilgili çözüm:
Bunun için bir yama yayınladılar hocam hatam yoksa. Hatta size verdiğim link bu yamayı içeriyor.

Umarım bunları 2.2.14 sürümüne entegre ederler 🙏
@ramsan45'in sağladığı kodları ufak bir eklentiye çevirdim. Recep Bey uygulamak isterse, böylece kaynak kodlarını değiştirmesine gerek kalmaz. Yalnızca "unfurl" problemi ile ilgili kodu eklemedim, PHP sürümünü düşürerek çözüm sağlandığı için gerek duymadım.

Zaten ileride resmi güncelleme yapılır.

PHP kodlamayalı ve XenForo eklentisi yazmayalı uzun bir zaman oldu, umarım bir problem yoktur.

Bilgisi olan arkadaşların kendi ortamlarında test etmesini rica ediyorum.
 
@ramsan45'in sağladığı kodları ufak bir eklentiye çevirdim. Recep Bey uygulamak isterse, böylece kaynak kodlarını değiştirmesine gerek kalmaz. Yalnızca "unfurl" problemi ile ilgili kodu eklemedim, PHP sürümünü düşürerek çözüm sağlandığı için gerek duymadım.

Zaten ileride resmi güncelleme yapılır.

PHP kodlamayalı ve XenForo eklentisi yazmayalı uzun bir zaman oldu, umarım bir problem yoktur.

Bilgisi olan arkadaşların kendi ortamlarında test etmesini rica ediyorum.

Elinize sağlık. XenForo'yu hiç kullanmamıştım. Fena bir şey değilmiş. Gayet kullanılabilir
 
Son düzenleyen: Moderatör:
@ramsan45'in sağladığı kodları ufak bir eklentiye çevirdim. Recep Bey uygulamak isterse, böylece kaynak kodlarını değiştirmesine gerek kalmaz. Yalnızca "unfurl" problemi ile ilgili kodu eklemedim, PHP sürümünü düşürerek çözüm sağlandığı için gerek duymadım.

Zaten ileride resmi güncelleme yapılır.

PHP kodlamayalı ve XenForo eklentisi yazmayalı uzun bir zaman oldu, umarım bir problem yoktur.

Bilgisi olan arkadaşların kendi ortamlarında test etmesini rica ediyorum.
Eline sağlık ama çok yakında 2.2.14 geleceği için çok da şart değil, bekleyelim.

Güncelleme: XenForo 2.2.14 ile çözülen sorun 2.2.15 ile geri geldi.
 
Son düzenleme: