SEO'ya uygun link hazırlama

0
Onaylı Üye
Üye
Katılım
10 Kasım 2003
Mesajlar
0
Tepki puanı
3
Konum
istanbul
Bana lazım oldu biraz önce, belki başkalarınında işine yarar diye gönderdim..

PHP:
function kucult($text){
$search = array ('@Ğ@',
'@Ü@',
'@Ş@',
'@I@',
'@İ@',
'@Ö@',
'@Ç@');

$replace = array ('ğ',
'ü', 
'ş', 
'ı', 
'i',
'ö',
'ç'); 
$text = preg_replace($search, $replace, $text); 
$text = strtolower($text);
return($text);
}

function seo_cevir($str)
{
	$str = kucult($str);

	$turkce[0] = '/ö/';
	$turkce[1] = '/ç/';
	$turkce[2] = '/ş/';
	$turkce[3] = '/ğ/';
	$turkce[4] = '/ü/';
	$turkce[5] = '/ı/';
	$turkce[6] = '/é/';
	$turkce[7] = '/à/';
	$turkce[8] = '/ã/';
	$turkce[9] = '/â/';
	$turkce[10] = '/ù/';
	$turkce[11] = '/û/';
	$turkce[12] = '/ì/';
	$turkce[13] = '/î/';
	$turkce[14] = '/ò/';
	$turkce[15] = '/õ/';
	$turkce[16] = '/ô/';
	$turkce[17] = '/ß/';
	$turkce[18] = '/è/';
	$turkce[19] = '/ê/';
	
	$turkceCevir[0] = 'o';
	$turkceCevir[1] = 'c';
	$turkceCevir[2] = 's';
	$turkceCevir[3] = 'g';
	$turkceCevir[4] = 'u';
	$turkceCevir[5] = 'i';
	$turkceCevir[6] = 'e';
	$turkceCevir[7] = 'a';
	$turkceCevir[8] = 'a';
	$turkceCevir[9] = 'a';
	$turkceCevir[10] = 'u';
	$turkceCevir[11] = 'u';
	$turkceCevir[12] = 'i';
	$turkceCevir[13] = 'i';
	$turkceCevir[14] = 'o';
	$turkceCevir[15] = 'o';
	$turkceCevir[16] = 'o';
	$turkceCevir[17] = 's';
	$turkceCevir[18] = 'e';
	$turkceCevir[19] = 'e';
	
	$str = preg_replace ( $turkce, $turkceCevir, $str );
	$str = preg_replace('/[^a-z0-9 *]/i', '', $str);
	$str = str_replace(' ', '-', $str);
	return $str;
}

// Kullanımı
echo(seo_cevir("Deneme ÖÇŞİĞÜ öçşığü àãâé ÀÃÂ èê"));
 
0
Onaylı Üye
Üye
Katılım
31 Ekim 2005
Mesajlar
0
en sonunda buldum teşekkürler işime yaradı
 
0
Onaylı Üye
Üye
Katılım
10 Kasım 2003
Mesajlar
0
Tepki puanı
3
Konum
istanbul
fonksiyonu
PHP:
echo(seo_cevir("Deneme ÖÇŞİĞÜ öçşığü àãâé ÀÃÂ èê"));
şeklinde kullandığınız zaman.. deneme-ocsigu-ocsigu-aaae-aaa-ee şekline çeviriyor, bunu kodunuzun içerisinde istediğiniz gibi kullabilirsiniz
deneme-ocsigu-ocsigu-aaae-aaa-ee.html şeklinde url rewrite kullanarak linkler oluşturabilirsiniz.
 
0
Onaylı Üye
Üye
Katılım
13 Ocak 2006
Mesajlar
59
fonksiyonu
PHP:
echo(seo_cevir("Deneme ÖÇŞİĞÜ öçşığü àãâé ÀÃÂ èê"));
şeklinde kullandığınız zaman.. deneme-ocsigu-ocsigu-aaae-aaa-ee şekline çeviriyor, bunu kodunuzun içerisinde istediğiniz gibi kullabilirsiniz
deneme-ocsigu-ocsigu-aaae-aaa-ee.html şeklinde url rewrite kullanarak linkler oluşturabilirsiniz.

htaccess e mi ekleyeceğiz? Hiç anlamadım gerçekten. Çok basit bi şekilde adım adım anlatırsanız memnun olurum.
 
0
Onaylı Üye
Üye
Katılım
10 Kasım 2003
Mesajlar
0
Tepki puanı
3
Konum
istanbul
htaccess e mi ekleyeceğiz? Hiç anlamadım gerçekten. Çok basit bi şekilde adım adım anlatırsanız memnun olurum.

bu hazır bir kod değil, sadece 1 fonksiyon. htaccess de kullanabilmek için link oluşturmaya yarıyor.
 
0
Onaylı Üye
Üye
Katılım
13 Ocak 2006
Mesajlar
59
hiç sormadım boşverin. anlayan anlıyor demekki birilerinin de işine yarıyor (muş)
 
0
Onaylı Üye
Üye
Katılım
26 Eylül 2006
Mesajlar
554
youtube'dan video alan bir scripti geliştiriyorum fakat video adı ve tanıtımında türkçe karakterler bozuk
Eylem - Mız Mız (Süper Kalite) Miz miz
Eylem - Mız mız Y
bunu uyarlıyabilirmiyim php bilgim pek yok geliştirmeye çalışıyorum ama tam olarak nasıl uyarlıyacağımı bulamadım

PHP:
$video = implode("", $video);
preg_match_all('/\<title\>(.*?)\<\/title\>(.*?)\<description\>(.*?)\<\/description\>(.*?)\<thumbnail_url\>(.*?)\<\/thumbnail_url\>/s', $video, $matches);
$title = $matches[1][0];
$description = $matches[3][0];
$thumbnail2 = $matches[5][0];
$length = strlen($thumbnail2);
$thumbnail1 = substr($thumbnail2, 0, $strlen - 5)."1.jpg";
$thumbnail3 = substr($thumbnail2, 0, $strlen - 5)."3.jpg";

$videopage = file("http://www.youtube.com/watch?v=".$_GET[video]);
$videopage = implode("", $videopage);
preg_match_all('/\<div class=\"vWatchEntry  \"\>(.*?)\<a href=\"\/watch\?v=(.*?)&mode=related&search=\" name=\"(.*?)\"\>\<img class=\"(.*?)\" src=\"(.*?)\" \/\>\<\/a\>(.*?)print_quicklist_video\(\'(.*?)\',document\.getElementById\(\'(.*?)\'\)\.innerHTML(.*?)\<div class=\"title\" onclick=\"_hbLink\(\'RelatedVideo\',\'ExploreMore\'\);\"\>\<b\>\<a href=\"\/watch\?v=(.*?)&mode=related&search=\" id=\"(.*?)\"\>(.*?)\<\/a\>\<\/b\>\<br\/\>(.*?)\<\/div\> \<!-- end vWatchEntry --\>/s', $videopage, $matches);
$Related = $matches;

<?php echo $title; ?> <?php echo $description; ?> şeklinde çağırıyorum..
 
0
Onaylı Üye
Üye
Katılım
17 Şubat 2007
Mesajlar
350
youtube'dan video alan bir scripti geliştiriyorum fakat video adı ve tanıtımında türkçe karakterler bozuk
bunu uyarlıyabilirmiyim php bilgim pek yok geliştirmeye çalışıyorum ama tam olarak nasıl uyarlıyacağımı bulamadım

PHP:
$video = implode("", $video);
preg_match_all('/\<title\>(.*?)\<\/title\>(.*?)\<description\>(.*?)\<\/description\>(.*?)\<thumbnail_url\>(.*?)\<\/thumbnail_url\>/s', $video, $matches);
$title = $matches[1][0];
$description = $matches[3][0];
$thumbnail2 = $matches[5][0];
$length = strlen($thumbnail2);
$thumbnail1 = substr($thumbnail2, 0, $strlen - 5)."1.jpg";
$thumbnail3 = substr($thumbnail2, 0, $strlen - 5)."3.jpg";

$videopage = file("http://www.youtube.com/watch?v=".$_GET[video]);
$videopage = implode("", $videopage);
preg_match_all('/\<div class=\"vWatchEntry  \"\>(.*?)\<a href=\"\/watch\?v=(.*?)&mode=related&search=\" name=\"(.*?)\"\>\<img class=\"(.*?)\" src=\"(.*?)\" \/\>\<\/a\>(.*?)print_quicklist_video\(\'(.*?)\',document\.getElementById\(\'(.*?)\'\)\.innerHTML(.*?)\<div class=\"title\" onclick=\"_hbLink\(\'RelatedVideo\',\'ExploreMore\'\);\"\>\<b\>\<a href=\"\/watch\?v=(.*?)&mode=related&search=\" id=\"(.*?)\"\>(.*?)\<\/a\>\<\/b\>\<br\/\>(.*?)\<\/div\> \<!-- end vWatchEntry --\>/s', $videopage, $matches);
$Related = $matches;

<?php echo $title; ?> <?php echo $description; ?> şeklinde çağırıyorum..


Kod:
<?
$sonuc = "Eylem - Mız Mız (Süper Kalite) Miz miz";
$baslik = str_replace("ı","ı",$sonuc);
$baslik = str_replace("ü","ü",$sonuc);
?>

<?=$baslik;?>

seklinde bir kod dizisi olusturursan sana yardımcı olur eminim. fikir olarak kullanabilirsin. yol gösterme amaçlı
 
0
Onaylı Üye
Üye
Katılım
26 Eylül 2006
Mesajlar
554
$video = implode("", $video);
preg_match_all('/\<title\>(.*?)\<\/title\>(.*?)\<description\>(.*?)\<\/description\>(.*?)\<thumbnail_url\>(.*?)\<\/thumbnail_url\>/s', $video, $matches);
$title = $matches[1][0];
$description = $matches[3][0];
$baslik = str_replace("ı","ı",$description);

kalın yeri ekledim ve <?php echo $baslik; ?> diye çağırdım fakat düzelmedi yine bozuk hali $baslik = str_replace("M","S",$description); yazdım mesela buda çalışmadı nerde hatam ?
 
0
Onaylı Üye
Üye
Katılım
18 Ekim 2003
Mesajlar
549
Tepki puanı
0
Konum
Antalya
$video = implode("", $video);
preg_match_all('/\<title\>(.*?)\<\/title\>(.*?)\<description\>(.*?)\<\/description\>(.*?)\<thumbnail_url\>(.*?)\<\/thumbnail_url\>/s', $video, $matches);
$title = $matches[1][0];
$description = $matches[3][0];
$baslik = str_replace("ı","ı",$description);

kalın yeri ekledim ve <?php echo $baslik; ?> diye çağırdım fakat düzelmedi yine bozuk hali $baslik = str_replace("M","S",$description); yazdım mesela buda çalışmadı nerde hatam ?

PHP de iconv gibi fonksiyonlara bakarsan sanırım işine yarar seyler bulursun..

veya söyle yap, yukarıdaki kodu kaydederken UTF-8 ile kaydet.. senin söylediğin hata UTF-8 encodingli bir dosyayı baska bir encoding ile acmaya çalışmandan kaynaklanıyor..

Ekdeki dosyaya Türkçe karakterler ekledim ve UTF-8 ile kaydettim...
UTF-8 i desteklemeyen bir editörle acarsan nasıl bozuk olduğunu görebilirsin
(diğer eklentilere bakıver)

Umarım işine yarar..

Kolay gelsin...
 
0
Onaylı Üye
Üye
Katılım
26 Eylül 2006
Mesajlar
554
$video = implode("", $video);
preg_match_all('/\<title\>(.*?)\<\/title\>(.*?)\<description\>(.*?)\<\/description\>(.*?)\<thumbnail_url\>(.*?)\<\/thumbnail_url\>/s', $video, $matches);
$title = $matches[1][0];
$description = $matches[3][0];
$baslik = str_replace("ı","ı",$description);

kalın yeri ekledim ve <?php echo $baslik; ?> diye çağırdım fakat düzelmedi yine bozuk hali $baslik = str_replace("M","S",$description); yazdım mesela buda çalışmadı nerde hatam ?

benden kaynaklanan bir hata yüzünden olmuyormuş şimdi halletim :) hatta bir siteden bulduğum kodla şöyle yaptım daha güzel oldu (kullanmak istiyen olursa )
PHP:
$ara   = array ('ı','Å?','ü','ç','ö','Ä?','ÅŸ','Ç','İ','ÄŸ','Åž','Ö','Ü','ı','Å?','ç','ö','Ä?','ÅŸ','Ç','İ','ÄŸ','Åž','Ö','Ü','ü','ÄŸ'); 
$degis = array ('ı','ş','ü','ç','ö','ğ','ş','Ç','i','ğ','Ş','Ö','Ü','ı', 'ş', 'ç', 'ö', 'ğ', 'ş', 'Ç', 'i', 'ğ', 'Ş', 'Ö', 'Ü', 'ü', 'ğ');
$tanim  = str_replace($ara, $degis, $description);
teşekkürler Mepring
 
0
Onaylı Üye
Üye
Katılım
17 Şubat 2007
Mesajlar
350
benden kaynaklanan bir hata yüzünden olmuyormuş şimdi halletim :) hatta bir siteden bulduğum kodla şöyle yaptım daha güzel oldu (kullanmak istiyen olursa )
PHP:
$ara   = array ('ı','Å?','ü','ç','ö','Ä?','ÅŸ','Ç','İ','ÄŸ','Åž','Ö','Ü','ı','Å?','ç','ö','Ä?','ÅŸ','Ç','İ','ÄŸ','Åž','Ö','Ü','ü','ÄŸ'); 
$degis = array ('ı','ş','ü','ç','ö','ğ','ş','Ç','i','ğ','Ş','Ö','Ü','ı', 'ş', 'ç', 'ö', 'ğ', 'ş', 'Ç', 'i', 'ğ', 'Ş', 'Ö', 'Ü', 'ü', 'ğ');
$tanim  = str_replace($ara, $degis, $description);
teşekkürler Mepring

ne kadar yardimci olabildiysem ne mutlu bana.. iyi çalışmalar
 
0
Onaylı Üye
Üye
Katılım
18 Ekim 2003
Mesajlar
549
Tepki puanı
0
Konum
Antalya
0
Onaylı Üye
Üye
Katılım
18 Ekim 2003
Mesajlar
549
Tepki puanı
0
Konum
Antalya
aslında ne demek istediğini anlamadığımdam tam yorum yapamadım verdiğim yukardaki kod çalışıyor ben o kodu kullanmadan ( $baslik = str_replace("ı","ı",$description); ) nasıl hallederim diye soruyorum ?

çoğu scriptte str_replace diye birşey yok fakat türkçe karakterler sorunsuz çalışıyor

bende senin ne dediğini anladım ama sanırım ben anlatamadım. ı bu karakter UTF-8 ile encoding ile kaydedilmiş bir dökümandan UTF-8 encoding ile kaydedilmemiş bir dökümanla bilgi çektiğin için sorun yaşıyorsun..

http://en.wikipedia.org/wiki/Character_encoding
http://forum.ceviz.net/sitemap/t-28162.html
http://www.ceviz.net/ajax-uygulamalarinda-turkce-karakter-sorunu_a601.html
http://www.google.com.tr/search?hl=tr&q=karakter+kodlaması&btnG=Ara&meta=

bunları incelersen çok daha detaylı bilgiye ulaşabilirsin....
 
Geri
Üst