neye göre translateX kullandınız? formu bu şekilde kaydırıp kaydırmadığınız önemli çünkü, ona göre mi yapı kurdunuz translate kullandınız yoksa öylesine deniyor musunuz?
Bunun için senin kontrollerin önemli. Diyelim ki normalde eriştiğin linkin şöyle olsun
siteadi.com/blog.php?id=1&url=test-url
Ve sen .htacccess ile bunu şu hale getirdin
RewriteEngine On
RewriteRule ^([0-9]+)-([0-9a-zA-Z-_]+)$ blog.php?id=$1&url=$2 [QSA]
Artık bu linke şöyle erişiyor olabilmen lazım
siteadi.com/1-test-url
ve blog.php dosyanda ise id ve url i $_GET ile alıp ona göre kontrol yapıyor olman lazım.
// blog.php
$id = $_GET['id'];
$url = $_GET['url'];
// db işlemleri...
Şimdi sen bu mantıkta hem id'yi hem url'i kontrol ediyorsun. Ancak yapmak istediğin id'yi ortadan kaldırmak ise öncelikle link yapın şöyle olmalı.
siteadi.com/blog.php?url=test-url
buna görede .htaccess dosyanı şöyle düzenlemelisin
RewriteEngine On
RewriteRule ^([0-9a-zA-Z-_]+)$ blog.php?url=$2 [QSA]
Ve artık şöyle erişiyor olabilmen lazım.
siteadi.com/test-url
Bu mantıktada blog.php dosyan şöyle olmalı
// blog.php
$url = $_GET['url'];
// db işlemleri -> sadece urle göre konrol edip konu bilgilerini çek
öncelikle sorunu sorarken taslak metni silmeyi unutma, biraz daha akıllı davranalım bu konuda lütfen.
soruna gelecek olursak hiçbir şey anlamadım. sticky dersinden mi bahsediyorsun acaba?
https://www.youtube.com/watch?v=JINiSfGhiS4
picture ve source etiketleri ile logonu ekleyip media ile koyu modu kontrol ederek açık renkli logonu yükleyebilirsin.
<picture>
<source
srcset="koyu-loog.png"
media="(prefers-color-scheme: dark)">
<img src="acik-logo.png">
</picture>
sayfa açılış hızını artırmak için kullanabileceğiniz bir yöntem.
ayrıca ek olarak html çıktınızıda sıkıştırırsanız gereksiz boşlukları ve karakterleri kaldırırsanız sayfa açılışınız büyük ölçüde artış gösterir özellikle çok fazla içeriğin yüklendiği dökümanlarda çok işe yarar.
Hayır, soruyu soranla muhattabız şu an :)
Buranın soru-cevap platformu olduğunu hatırlatmama bilmiyorum gerek var mı? Anlamamakta ısrar ediyorsanız burada bulunmak zorunda değilsiniz.
şuradaki gibi yaparsanız db'nizi daha iyi olacaktır
https://prototurk.com/makaleler/mysql-de-ozel-karakterler-nasil-kayit-edilir
en hızlı ve basit çözümü php'de bulunan Transliterator sınıfı olabilir. Örnek kullanımı ise;
echo Transliterator::create('Any-Latin; Latin-ASCII')->transliterate('國語'); // çıktı: guo yu
echo Transliterator::create('Any-Latin; Latin-ASCII')->transliterate('фильм'); // çıktı: fil'm
echo Transliterator::create('Any-Latin; Latin-ASCII')->transliterate('Καλημέρα'); // çıktı: Kalemera
echo Transliterator::create('Any-Latin; Latin-ASCII')->transliterate('سلمون عليكم'); // çıktı: slmwn ʿlykm
bunu yaptıktan sonra herhangi bir seo fonksiyonundan geçirmen yeterli.
ya da belki şu paketi kurup kullanabilirsin: https://github.com/ausi/slug-generator
cronjob oluşturarak belli sürelerde bir php dosyasını çalıştırarak içinde işlemler yapman mümkün, ya da socket gibi teknolojileri kullanarak arkaplanda güncelleme geldiğinde işlem yaptırabilirsin ancak doğrudan php ile yaptırmak mümkün olsa bile çok sağlıklı olmayacaktır.