Belkide yüzlerce site daha doğrusu şöyle diyim youtube,dailymotin gibi çok büyük video siteleri haricindeki bir çok web sitesi JW Player alt yapısını kullanıyor..Bakmayın farklı göründüğüne tema özelliği sayesinde ayrıca premium eklentisi sayesinde istediğiniz playerı ortaya çıkartabiliyorsunuz..Gerisi zaten PHP ve algoritmalar..
Jwplayerı bu sayfadan indirdikten sonra jwplayer dosyalarını sizlere tanıtıyım..

Bize yukarıdaki uygulamalardan gerekli olanlar jwplayer.js,player.swf,swfobject.js dosyaları olacaktır sadece..Bu dosyalar haricindeki diğer dosyalarla bir işimiz yok..
Jwplayer iki farklı sistemle videoları gösterebilmeyi sağlıyor..Birincisi Javascript kodlarıyla bir dive içeriği basma,diğeri ise eski bildiğimiz embed kodları..
Eski kodlarla belki bir çoğumuz kullanmışızdır ama yeni kodlarla sorun daha fazla yaşandığı için ben yeni kodları kullanmayı tercih ediyorum.
Öncelikle tema klasörümüzün içine player adında bir klasör oluşturalım ve gerekli dosyalarımızı yani yukarıda belirttiğim üç dosyayı oraya atalım..
Ardından sırasıyla bize gerekicek kodları wordpress’e uyarlıyalım.
[code]<script type=’text/javascript’ src='<?php bloginfo(‘template_url’); ?>/player/jwplayer.js’>
</script>[/code]
Template url mantığıyla tema klasörümüzün dizinine ulaşıyoruz.Ardından jwplayer.js adresimizi script olarak tanımlıyoruz..
[code]<div id=’mediaplayer’></div>[/code]
Ve ayarlar için kullandığımız bizim için önemli olan bölümü ise javascript bölümü.
[code]<script type="text/javascript">
jwplayer(‘mediaplayer’).setup({
‘flashplayer’: ‘< ?php bloginfo(‘template_url’); ?>/player/player.swf’,
‘id’: ‘playerID’,
‘skin’: ‘< ?php bloginfo(‘template_url’); ?>/player/tema.zip’,
‘width’: ‘550’,
‘height’: ‘360’,
‘file’: ‘< ?php bloginfo(‘template_url’); ?>/player/file.mp4′,
‘controlbar’: ‘bottom’
});
</script>[/code]
Buradan ayarları kendimize göre yapabiliyoruz..Width değeriyle genişliğini height değeri ile de yüksekliğini ayarlayabiliriz..Yada diğer tüm ayarları için buradan kendinize bir jwplayer ayarlayabilirsiniz.
Önemli olan burada bizim için file,flashplayer ve skin değerleri oluyor aslında..
Flashvar ve skin değerleri sabit olup herhangi bir değişkene uğramayacaktır..
Skin yani temalarımızı buradan indirebiliriz.Buradan indirdiğimiz zipli dosyaları playerın bulunduğu dizine atıp skin değerinde o dosyaya göre düzenleme yapmamız gerekiyor..Yani black.zip adında bir dosya indirdiğimiz de;
[code] ‘skin’: ‘< ?php bloginfo(‘template_url’); ?>/player/tema.zip’,[/code]
değerini
[code] ‘skin’: ‘< ?php bloginfo(‘template_url’); ?>/player/black.zip’,[/code]
Olarak değiştirmemiz gerekiyor..
Flashplayer değeri ise dosyalarımızın bulunduğu klasördeki player.swf mizin adresi oluyor..
Bundan sonraki kısımda ise wordpress fonksiyonlarıyla ele alalım ve şöyle bir algoritma düşünelim..
Algoritmamız ve Amacımız:
Şimdi youtube videoları eklediğimiz zaman biz embed yerine sadece youtube videosunun adresini yazalım ama aynı zamanda direk olarak mp4 adresi tanımladığımız video da izlensin..Üstüne öyle bir alan oluşturulım ki embed kodlarını da ekleyelim..
Eğer bu özelliklerden hiçbirisi yoksa temam da hiçbir şey gözükmeden sadece yazının içeriği gözüksün..Yani sadece video göstermek istediğim yazılara ait bir özellik olsun..
Öncelikle iki tane özel alana ihtiyaç duyacağız..Birisi video birisi embedvideo özel alanları diyelim..Bu özel alanlardan video değerine ya youtube değeri yada direk mp4 adresi , embedvideo değerine ise embed olarak girilmiş videoyu girelim..
Kodlarımızı yazarsak
[code]< ?php
$video = get_post_meta($post->ID,’video’, true);
$embedvideo = get_post_meta($post->ID,’embedvideo’, true);
if($video != "") { ?>
< ?php echo $video; ?>
< ?php } elseif($video == "" && $embedvideo != "") { ?>
< ?php echo $embedvideo; ?>
< ?php }else{ ?>
< ?php } ?>[/code]
Yani if kodlarıyla şöyle bir döngü oluşturduk..Ben eğer video özel alanına veri girdiysem onu göster..Yok girmediysem embedvideo alanına girmiş olabilirim ona bak..Yok onda da girmemişsem boşver..
Bu kodları ekrana bastığını göreceksiniz zaten..Şimdi bu kodları jwplayerla harmanlarsak bizim normal video değerimize embed kodu girileceğinden herhangi bir özellik yazmadan bu şekilde sadece embed kodlarını basmasını sağlayabiliriz..Ama jwplayer için gerekli kodları video değerine yazmamız gerekiyor.
[code]< ?php
$video = get_post_meta($post->ID,’video’, true);
$embedvideo = get_post_meta($post->ID,’embedvideo’, true);
if($video != "") { ?>
<script type=’text/javascript’ src='<?php bloginfo(‘template_url’); ?>/player/jwplayer.js’></script>
<div id=’mediaplayer’></div>
<script type="text/javascript">
jwplayer(‘mediaplayer’).setup({
‘flashplayer’: ‘< ?php bloginfo(‘template_url’); ?>/player/player.swf’,
‘id’: ‘playerID’,
‘width’: ‘550’,
‘height’: ‘360’,
‘file’: ‘< ?php echo $video; ?>’,
‘controlbar’: ‘bottom’
});
</script>
< ?php } elseif($video == "" && $embedvideo != "") { ?>
< ?php echo $embedvideo; ?>
< ?php }else{ ?>
< ?php } ?>[/code]
Yani bu şekilde bizim file gereksinimizi video özel alanından karşılıyoruz..
Bu sayede single.php ye eklediğimiz bu kodlar sayesinde videolarımızı kolaylıkla gösterebiliriz..Nereye ekliycez bu kodları diye soruyorsanız content kodundan hemen sonra eklerseniz yazınızın altında hemen önce eklerseniz yazınızın üstünde gösterecektir.
Önemli Not: Youtube videolarını gösterebilmeniz için yani kendi playerınızda youtube videolarını izletmek için bu dosyayı indirip (farklı kaydet yapabilirsiniz) player.swf ile aynı klasöre yani player klasörüne atın..
Ardından video değerine mp4 adresi girer gibi yani aşağıdaki şekilde youtube linkini girin..
[code]<iframe width="500" height="375" src="http://www.youtube.com/embed/YSkTL73Lm0w?fs=1&feature=oembed" frameborder="0" allowfullscreen></iframe>[/code]

Sorularınızı bu başlık altında yorum olarak bildirebilirsiniz..
Saygılarımla.

4 YORUMLAR

  1. Ellerinize sağlık, bir solukta tamamını okudum; Word Press'i sevmeyen(kullanmayı beceremeyen desek daha doğru olur) birisi olarak bu tür modifikasyonlar hem benim için hemde sayfa ziyaretçileri için mükemmel bir çalışma oluyor. Gerçekten sevmeye başladım, umarım entegre etmeyi becerebilirim 🙂

Bir Cevap Yazın