Wordpress kullanan çoğu kişi Tercihler > Yazma bölümüne girmiştir ve orada E-posta ile yazma diye bir şey görmüştür. Ne olduğunu anlamayanlar e-posta adreslerinin şifrelerini bile girmiş olabilir. Ben bu e-posta ile yazma nedir nasıl çalışır diye merak ediyordum ve bugün araştırdım. Türkçe olarak hiç kaynak bulamadım, İngilizce kaynaklarda sınırlı.
Şimdi sizlerle nasıl e-posta yollayarak blog yazılır onu paylaşacağım. Ne gerek var e-posta ile blog yazmaya diyebilirsiniz. Buna ben de katılıyorum
Ama bu cep telefonumuzdan da blogumuza yazı yollamaya yarayabilir. Her an her yerden blog yazabilmek aslında güzel bir şey
Wordpress Blog Sisteminde E-posta İle Yazı Yazma
Wordpress
Aslında bu kadar kolay değil. Eğer çalıştıysa ne mutlu size! Wordpress 2.2.2′de bu olay bu kadar kolay çalışmıyor. Düzeltilmesi gereken hata var. Hata Posted content: kısmında içeriğin gözükmemesi. Bunu da şöyle aşıyoruz;
wp-inculdes/class-pop3.php dosyasını açın
(369. satır) $line = fgets($fp,$buffer);
ile
(377. satır) $count++;
arasındaki kodları silin. Sonra bu iki satır arasına şu kodları yapıştırın;
if (preg_match(”/^\s+\S+/”, $line) && $count > 0) { $MsgArray[$count-1] .= $line; continue; }
if ((ereg(”^\.\r\n”,$line)) || (empty($line))) { break; }
if (ereg(”^\.\.”, $line)) { $MsgArray[$count] = substr($line, 1); }
else { $MsgArray[$count] = $line; }
Bunu yaptıktan sonra eğer gönderdiğiniz e-postanın Content-Transfer-Encoding’i 7bit ise artık content kısmında yazı çıkacak. Ama uzun yazılarda bu böyle değildir. En azından Gmail’den yollanan maillerde öyle degil.
Ben oluşturduğum POP3 maile blog yazısı yollarken GMail’i kullandım. Hem cep telefonumdan hem de webden e-posta yolladım. Uzun yazılarda yani 1-2 kelimeden fazla olan yazılarda Content-Transfer-Encoding: base64 olarak geliyordu. Yani yazılar base64 kullanılarak şifrelenmiş olarak geliyor. Şimdi bunu aşmalıyız. Nasıl mı ? Bunu decode ederek
Bunu da şöyle yapıyoruz :
wp-mail.php dosyasındaki 127. satırdaki bu kodu bulun
$content[1] ? $content = $content[1] : $content = $content[0];
hemen altına bu kodu ekleyin
if ($content_transfer_encoding = “base64″) { $content = base64_decode($content); }
Şifrelenmiş yazıyı çözme işini de yaptık ve artık herşey tamam. Artık e-posta ile blogumuza yazı yazabileceğiz. Fakat her mail attıktan sonra yazımızın blogumuza eklenmesi için wp-mail.php sayfasına girmemiz gerekiyor. Bunu da otomatik olarak yapan bir eklenti varmış: Wp-Cron Belgelerde wp-cron’u kurun ve o kendi kendine çalışsın diyor fakat eklenti biraz sorunlu.. Eğer çalışmazsa onun yerine iframe ile wp-mail’i sürekli kontrol ettirebilirsiniz. Yani şu kodu sayfanızın bir köşesine yerleştirerek;
<iframe src=”http://<blog adresiniz>/wp-mail.php” name=”mailiframe” width=”0″ height=”0″ frameborder=”0″ scrolling=”no” title=”"></iframe>
Yazıyı buraya kadar okuyan varsa teşekkürler, yazım boşa gitmedi demektir.. Aslında tamamını okuyacak pek kişi yok ama ben merak ettim nasıl yapıldığını ve Türkçe kaynak olmadığı yazdım. Mutluyum ![]()
Kaynaklar
Yazacağım tüm yazıları RSS beslemesi ile takip edebilirsiniz
E-posta abonesi olarak yazacağım yazıların e-posta adresinize otomatik olarak gelmesini sağlayabilirsiniz.
Yazıyı başkalarıyla paylaşabilirsiniz;
Arşiv sayfasından tüm yazılarımı görebilirsiniz.
Yazıya yorum yapabilir, yapılan yorumları RSS 2.0 beslemesiyle takip edebilirsiniz veya sitenizden geri izleme yapabilirsiniz.
Web teknolojilerini takip etmeyi çok seven, genellikle en sevdiği programlama dili olan php ve onun kankası MySQL hakkında yazılar yazan, internet sitelerinde neXus veya nXs olarak tanınan Hüseyin Berberoğlu adlı kişinin web günlüğündesiniz… ayrıntı..
oyyla.com
Ağustos 29th, 2007 at 11:22
e-posta göndererek blogunuzu güncel tutun
e-posta göndererek blogunuzu güncel tutun.. çok faydalı bir eklenti bence ve neXus kaynakları türkçe ye çevirip bizim için detaylı bir biçimde anlatmış hatalara çözümler göstermiş.. size sadece kullanmak kalıyor..
kubio
Ağustos 30th, 2007 at 18:13
öyle bir sekme göremedim bende mi bir sorun var ? :s
Hüseyin Berberoğlu
Ağustos 30th, 2007 at 22:00
wordpress yönetim paneline girince yönet’in altında Yazma var. olması gerek
askin
Ekim 20th, 2007 at 20:03
Tesekkurler yazi icin. Ama yazinizda verdiginiz eklenti yi wordpress ten aktif etmeme ragmen otomatik eklemeyi basaramadim.
saygilar,
Hüseyin Berberoğlu
Ekim 21st, 2007 at 21:15
wp-cron’dan bahsediyorsanız o eklentinin çalışmasında problem olduğunu yazmıştım.. verdiğim iframe kodu ile sürekli kontrol işi yapılabilir
mustafa
Ekim 27th, 2007 at 20:22
emeğinize sağlık deneyeceğim,
mustafa
Ekim 27th, 2007 at 21:51
uyarladım karakter hatası dışında oldu,
mu 1.2.5 kullanıyorum; 127 . satırda belirttiğiniz kodlar yok, kodları hızlıca komple taradım bulamadım….
resmi siteye bakmıştım, ingilizcem olmadığı için yapamamıştım, benim için yazınız büyük bir kaynak oldu, tekrar teşekkür ederim…
mustafa
Ekim 27th, 2007 at 21:58
Bir şeyi atladım kusura bakmayın; üstte verdiğiniz kodları kopyalayınca ” işaretleri kodda hata veriyor, aşağıya düzelttiğim şeklini verdim, ihtimal aşağıdakilerde kayıtta bozulabilir, deneyecek olan arkadaşlar dikkat etsinler, bilinen bir şeysede kusura bakmayın… Saygılar…
if (preg_match(”/^\s+\S+/”, $line) && $count > 0) { $MsgArray[$count-1] .= $line; continue; }
if ((ereg(”^\.\r\n”,$line)) || (empty($line))) { break; }
if (ereg(”^\.\.”, $line)) { $MsgArray[$count] = substr($line, 1); }
else { $MsgArray[$count] = $line; }
DASTAN
Kasım 3rd, 2007 at 13:52
Merhaba. uzun zamandır bende bunu arıyordum nasıl yapılır diye. Şöyle ki benim avuçiçi bilgisayarımı kullanarak yapmak istediğim şey tam anlamıyla bu fakat belirttiğiniz tüm herşeyi yaptım lakin hala bir iki kelime haricinde görünmüyor. Başlık tam olarak çıkıyor ama içerikte bir sıkıntı var çözemedim. Yukarıda dediğiniz herşeyi yaptım.
base64_decode ile ilgili de aynı zamanda gmail den göndermek olabilir diye düzenledim. PDA’dan ise gmail den ya da kendi bloguma ait mailinden gönderdiğim maillerde sıkıntı yaşıyorum.
Green Card
Mart 4th, 2008 at 23:35
güzel bir site, konuları da güzel seçiyorsunuz, umarım devamı gelir
selman
Nisan 21st, 2008 at 19:54
burda anlatılanları uyguladım ama çalışmadı..yardımcı olur musunuz ?
Hüseyin Berberoğlu
Nisan 22nd, 2008 at 16:46
@selman, nerede takıldığını veya karşılaştığın problemi yazarsan belki yardımcı olabilirim.
mırc
Temmuz 31st, 2008 at 22:48
gercekten cok guzel emek harcayanlara tskler