05 Haziran 2009

Statik Sayfaya Yazı İçeriğini Yazdırma

WordPress Yorum Ekle

Bir soruda WordPress kurulu bir sitede belirli bir yazının içeriğini html sayfasına ya da bir php dosyasına nasıl yazdırabileceğimiz sorulmuştu. İstenen sadece ID'si bilinen bir yazının içeriğinin sayfaya eklenmesiydi. WordPress PHP tabanlı bir sistem olduğundan HTML sayfasına bir yazıyı doğrudan yazdırmak mümkün değil. Çözüm olarak iframe kullanmaktan başka çare bulunmamaktadır.
Öncelikle iframe içerisine çağırmak için, istenilen yazıyı çekip, ekrana basan bir .php dosyası oluşturmalıyız. Notepad++ programını kullarak uzantısı php olan örneğin yazi.php isminde, 'UTF-8 BOM olmadan' dil kodlamasına sahip bir metin dosyası oluşturup, içerisine aşağıdaki kodları yazın. Kodlar içerisinde gerekliyse "wp/wp-blog-header.php" yolunu ve $yazi_id = 2; kodundaki yazı ID'sini size uygun olarak değiştirin.

  1. <?php
  2. define('WP_USE_THEMES', false);
  3. require('wp271/wp-blog-header.php');
  4. $yazi_id = 2;
  5. $post = get_post($yazi_id);
  6. echo $post->post_content;
  7. ?>

Bu kod ID'si 2 olan yazıyı çekip, içeriğini yazdırmış oldu. Eğer yazının başlığını vs. yazdırmak isterseniz de get_post fonksiyonuyla ilgili olan sayfayı inceleyebilirsiniz. Artık bu dosyayı html sayfanıza iframe html etiketini kullanarak örneğin aşağıdaki gibi bir kodla ekleyebilirsiniz.

  1. <iframe src="yazi.php" width="400" height="450">

Bu yazının kısa bağlantısı http://www.yakupgovler.com/?p=868.

Yazılarımı RSS aboneliği ile takip edebilir, yeni yazılarıma kolaylıkla ulaşabilirsiniz. Bunun için ise RSS adresimi kullanabilirsiniz.


“Statik Sayfaya Yazı İçeriğini Yazdırma” yazısı için 3 Yorum

Bu yazıya yapılan yorumları dilerseniz, ( RSS 2.0 ) beslemesini kullanarak takibe alabilirsiniz.

  1. Yazıları Bir PHP Dosyasında Gösterme · Yakup Gövler'in Not Defteri dedi ki:

    [...] yazımda ID'sini bildiğiniz bir yazının içeriğini WordPress'in dışında bir dosyada nasıl [...]

  2. Mehmet dedi ki:

    Teşekkürler Yakup bey..

  3. awakado dedi ki:

    Soruma tam yanıt aldım ve işime yaradı, ilgin ve verdiğin bilgiler için teşekkürler Yakup 😉