Orijinalini görmek için tıklayınız : have_post() kodu
olkunmustafa
11-05-2012, 12:14
"while (have_posts()) : the_post();"
Yukarıdaki kodda while döngüsü tam olarak neyi döndürdüğü anlayamadım.Yani burda have_posts() neyin döngüsü yani tam olarak ne analma geliyor ????
single.php, page.php, tag.php gibi dosyalarda kullanlır. örneğin;
single.php'de önce bakar, eğer yazı varsa yazıyı dönderir, yoksa döngünün devamında ne yazmışsan onu basar (404 hatası gibi).
?p=34 linki mesela, tekil yazıdır. 34 id'li yazıya bakar.
olkunmustafa
11-05-2012, 14:22
single.php, page.php, tag.php gibi dosyalarda kullanlır. örneğin;
single.php'de önce bakar, eğer yazı varsa yazıyı dönderir, yoksa döngünün devamında ne yazmışsan onu basar (404 hatası gibi).
?p=34 linki mesela, tekil yazıdır. 34 id'li yazıya bakar.
Ben işin özünü anlamak için birşey daha sorayım diyelim ki ben aynı içeriği 10 kere sayfa da göstericem.Yani döngü aynı postu o kere yazdırana kadar devam etsin.Yani klasik olarak while döngüleri gibi çalışsın.
<?php
$isim = "mustafa"
$i=0
while (i<10)
{
echo mustafa;
i++;} ?>
Mesela burada kabaca musatafayı 10 kere yazdırdım.Kodlar yanlışlık olabilir hızlıca yazdım.Yani ne demek istediğimi anlattım umarım....
şöyle birşey olabilir diye tahmin ediyorum, daha önce hiç denemedim. (single.php kodları hayalidir, kendine göre düzenlemen gerekir)
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
//bundan sonrasını bir fonksiyon içe alalım.
<?php function yazimiz() { ?>
<div class="post" id="post-<?php the_ID(); ?>">
<div class="post-info">
<img src="<?php bloginfo('template_directory') ?>/images/authors/<?php the_author_ID()?>.jpg" alt="<?php the_author() ?>" alt="<?php the_author() ?>" title="<?php the_author() ?>" />
<em><?php the_time('F jS, Y') ?></em>
<span class="post-tag"><?php the_tags('', ' . ', ''); ?></span>
</div>
<div class="entry">
<h2><?php the_title(); ?></h2>
<?php the_content(); ?>
</div>
<?php } ?> //fonksiyon bitiş
//şimdi bir for döngüsü oluşturalım. yazimiz() fonksiyonunu 10 kere döndürelim.
<?php
for ( $say=1 ; $say < 10; $say++ )
{
$say = yazimiz();
echo $say;
}
?>
olkunmustafa
11-05-2012, 15:23
Öncelikle çok teşekkür ederim.
<img src="<?php bloginfo('template_directory') ?>/images/authors/<?php the_author_ID()?>.jpg" şurda neyin resmini aldığınızı anlayamadım.Yazara ait yazıların resmini mi???
Yazarın resmi. Gerek yok ona. dediğim gibi kodlar hayali. Yine de açıklayım, yazara ait bir resmi almanın bir yolu bu. Örneğin admin kullanıcısının id'si 1 ise, images/authors/ klasörü içine 1.jpg resmi atarsan onu çekiyor :)
vBulletin v4.2.1, Copyright ©2000-2024, Jelsoft Enterprises Ltd.