WordPress Türkiye Forumları » Kurulum ve Kullanım

Kategorideki yazı başlıklarını sıralama

(14 posts)
  • 9 ay önce cha tarafından başlatıldı
  • eylultoprak tarafından son cevap
  • Bu konu destek sorusu değil

Etiketler:


  1. cha
    Üye

    Öncelikle bunu forumda aradım ve istediğim sonucu bulamadım. bir tane buldum onun da çözümü bana uymadı. belki yardım eden birileri çıkar.

    Mesela istediğim kategoriye tıklıyorum, o kategorideki yazılar geliyor direk okuyoruz. Ama ben istiyorum ki kategoriye tıklayınca önce bana o kategorideki o aya ait konu başlıklarını getirsin. o başlıklara basarak okuyayım yazıları. tabi aya göre sıralama yaptırmak lazım. Ama önce bir başlık sıralama işinin nasıl yapılacağını bulalım da. Umarım anlatabilmişimdir.

    Tarih: 9 ay #
  2. Dostum, temanın ana indeks sayfasının düzenlenmesi gerekiyor. Şöyle ki sen bir kategoriye tıkladığın zaman temanın ana indeks sayfasına "cat" isimli bir değişken ile kategorinin id'si yollanıyor. Ana indeks sayfasındaki while döngüsündeki posts() fonksiyonu içerisinde bu id alınıp sadece o kategorideki yazılar alınıp, listeleniyor. İşte senin yapman gereken, bu listeleme sırasında şöyle bir karşılaştırma yapıp eğer cat değişkeni tanımlanmamışsa özeti yaz tanımlanmışsa yazma dedirtmen ya da en baştan bir listeleme yapman gerekiyor.
    Temanın ana indeks sayfasındaki if (have_posts()) ile başlayıp < ?php endwhile; ?> koduna kadar olan bölümünü buraya aktarabilirsen yardımcı olabilirim. Ancak öğleden sonra eve gittiğimde bakabilirim.
    Çözüm çok kolay.

    Tarih: 9 ay #
  3. sortable , tablolar içindeki verileri sıralamada kullanılan js ve ya jquery ile yazılmış kodlar mevcut. Dün sabah default temada denedim çalışıyor.

    * Sizin dediğiniz categoriye göre arşiv araması yaparken sadece o ay içinde girdiğim yazılar gözüksün demişsiniz:

    < a href="<?php echo get_option('home'); ?>/?m=<?php the_time('Ym'); ?>&cat=1">1.Kategori şu yıl ve aydaki mesajlar< /a>

    * arşiv sayfasından Ym :kategori farketmeksizin yazdığınız en son yazının tarih ve ayına göre listeleme yapar. cat=1 kategorinin numarasını yazdığınız kategori içersinde arama yapar.

    - Eğer bunu loop içersinde yazıya tarih atarken kullanılan bölüme link olarak verirseniz çözüm şu şekilde olacaktır.

    < a href="<?php echo get_option('home'); ?>/?m=<?php the_time('Ym'); ?>&cat=<?php the_category_ID(); ?>">Bu Kategori altında bu ay içinde girilen yazılar< /a>

    * category_ID etiketi wpson versiyonunda çalışıp çalışmadığını bilmiyorum.


    * ya da kestirme yol bir adet arşiv eklentisi kurunuz. Her derde deva....

    Tarih: 9 ay #
  4. cha
    Üye

    index.php bu şekilde:

    <?php
    get_header();
    ?>



    <?php get_sidebar(); ?>

    <?php if (have_posts()) : while (have_posts()) : the_post(); ?>
    ">
    <span class="postcattitle"><?php wp_title(); ?></span>



    <?php the_time('M', '', ''); ?>

    <?php the_time('d', '', ''); ?>


    <h1 class="posttitle">" rel="bookmark">
    <?php the_title(); ?>
    </h1>

    <?php if(function_exists('the_ratings')) { the_ratings(); } ?>


    <?php the_content(__('more...')); ?>

    <?php the_tags('ilgili etiketler: ', ', ' , ''); ?>

    <?php if(function_exists('wp_print')) { print_link(); } ?>



    <?php comments_template(); // Get wp-comments.php template ?>

    <?php endwhile; else: ?>
    <p class="sorrydialog">
    <?php _e('Sorry, no posts matched your criteria.'); ?>
    </p>
    <?php endif; ?>

    <!--<?php posts_nav_link('  ', __('« Previous Page'), __('Next Page »')); ?>-->



    <?php get_footer(); ?>

    Tarih: 9 ay #
  5. Öncelikle indeks dosyanız bayağı farklı.
    Bu arada farkettim ki bazı temalarda arşivler diye bir dosya varsa, kategorinin yazıları bu dosya sayesinde gösteriliyor. Eğer temanızda böyle bir dosya varsa bunu açın ve büyük ihtimal en alttaki post_title'ın yazdırıldığı kod dışındaki, post bilgilerinin gösterilmesini sağlayan bilgileri silin. Eğer böyle bir dosya yoksa bu durumda indeks dosyanızdaki
    <#?php get_sidebar(); ?>
    kodunun altına
    <#?php
    if (is_category()) {
    wp_get_archives('type=postbypost');
    } else {
    ?>

    kodunu ekle. Ayrıca <#?php get_footer(); ?> kodunun hemen üstüne de
    <#?php }; ?>
    kodunu yazarak if bloğunu sona erdirin. Bu kod ile kategorinin içindeki bütün yazıların, sayfalama yapılmadan liste halinde yazılacaktır. Kendi temamda denedim oluyor.
    wp_get_archives() fonksiyonu ile ilgili ayrıntılı bilgiye buradan ulaşabilirsiniz.
    Not: # sembollerini silmeyi unutmayın. Bu arada siz mesajınızdaki kodları nasıl bozulmadan yazabildiniz?

    Tarih: 9 ay #
  6. Bakıyorum da cevabı çok kısa olan bir başlık için bu kadar uzun kod vs. dökülmüş :) Önce şuradaki yazımı okuyun.

    Editör notu: Yazınızı okudum, o yazınızda bu mesajınız gibi yetersiz, yazınızı/mesajınızı bahsettiğiniz parametreleri bilmeyenlerinde anlayabileceği şekilde yazmalısınız, mesajınızda category.php oluşturun demişsiniz, sonra ??... Bu mesajı örnek alarak yeni mesaj yazabilirsiniz.. (Link kaldırıldı) [canarkadaş]

    Konuyu daha iyi anlamanızı sağlayacaktır. Şimdi de en basit haliyle çözüme gelelim:

    Şimdi category.php adında bir dosya oluşturalım. Category.php dosyamız bize kategoriler üzerinde değişiklik yapmamızı sağlayacak.

    Ardından category.php'nin içine en basit haliyle şu kodları yerleştirelim:

    <?php $current_month = date('m'); ?>
    <?php query_posts( 'monthnum=$current_month&posts_per_page=10' ); ?>
    <?php if (have_posts()) : ?>
    <?php while (have_posts()) : the_post(); ?>
    < ul>
    < li>< a><?php the_title(); ?>< /a>< /li>
    < /ul>
    <?php endwhile; ?>
    <?php endif; ?>

    Burada öncelikle yukarıda current_month isimli bir değişken tanımladık ve hali hazırda bulunan query_posts'un monthnum parametresinde kullandık. Böylece o aya ait yazılar geldi. posts_per_page de ise sayfa başına kaç yazı düşeceğini belirledik. Eğer o değeri -1 yaparsak tüm yazılar listelenir. Kodu test etmedim ama büyük ihtimalle çalışacaktır. İyi günler dilerim :)

    Tarih: 5 ay #
  7. cincibir
    Üye

    Arkadaşlar,
    bende aynı dertten müzdaribim. Benim amacım ise Kategori Başlığına tıkladığımda gelen listede içeriğin değil sadece o kategoriye ait başlıkların listelenmesi.

    Kullandığım temada archive.php dosyasi yok. Bu nedenle yukarıda ki çözüm işimi görmedi. yada beceremedim.

    Yardımcı olabilir misiniz ?

    index dosyam :
    <#?php get_header(); ?>

    <?php if (have_posts()) : ?>

    <?php while (have_posts()) : the_post(); ?>


    <span class="titles">" rel="bookmark" title="Permanent Link to <?php the_title(); ?>"><?php the_title(); ?></span>

    <#/div>
    <#div style="clear: both;">

    <?php the_content('Read the rest of this entry »'); ?>

    <?php comments_template(); ?>

    <?php endwhile; ?>

    <p class="pagination"><?php next_posts_link('« Previous Entries') ?> <?php previous_posts_link('Next Entries »') ?></p>

    <?php else : ?>

    <h2 align="center">Bulunamadi.</h2>

    <p align="center">Arama sonucunda listelenelecek veri bulunamamistir.</p>

    <?php endif; ?>


    <#?php get_sidebar(); ?>

    </body>
    </html>

    Tarih: 2 ay #
  8. @cincibir
    Burada bulunan category.php dosyasını indirip tema dosyalarının içine atıp kategori bağlantılarına tıkla bakalım işine yarayacak mı (Bazı temalarda işe yaramıyor, bazı temalarda da görüntü hoş olmuyor)..

    Tarih: 2 ay #
  9. <?php the_content('Read the rest of this entry »'); ?> Kodu olmadan bildğim kadarı ile içerik gelmez. Bir ara denemiştim ama ne sonuç aldığımı hatırlamıyorum. Birde siz deneyin bakalım. =) Tabiki category.php dosyası lazım. Tema düzeninin bozulmaması için index.php içindeki kodları kullanabilirsiniz.

    Teşekkürler abi hoşgördük :)

    Tarih: 2 ay #
  10. <?php the_content('Read the rest of this entry »'); ?> Kodu olmadan bildğim kadarı ile içerik gelmez. Bir ara denemiştim ama ne sonuç aldığımı hatırlamıyorum. Birde siz deneyin bakalım. =)

    @EylülToprak

    Yine hoş geldin;) index.php'de bu işlemi yapınca herde aynı sonuç alınır, cinci1de de sadece index.php olduğu için işe yaramaz sanırım..

    Tarih: 2 ay #
  11. cincibir
    Üye

    indirdim dosyayi su anda. sidebar geldi. Amma velakin Listelenen basliklar ust tarafta kaldi, sidebar ise listeleme bittikten sonra sag taraftan basliyor. Yani sidebar olmasi gereken yerde degil, liste bittikten sonra basliyor. benim duzeltecegim bir sey ise tarif ederseniz yaparim.

    Tarih: 2 ay #
  12. Uğraştığınız temanızı bir yerlere yükleyin adresi buraya yazın düzeltme yapalım.

    Tarih: 2 ay #
  13. dersimvatan
    Üye

    ya bende kategorilerde ve taglara tıkalyınca yazının kısa bi bölümü cıkıyor bunun sonuna devamını oku veya ansayfadaki gibi gorunmesini saglayamazmıyız acaba ?

    Tarih: 2 ay #
  14. @dersimvatan <?php the_content('Read the rest of this entry »'); ?>

    Sizde bu kodu uygun yere koyun. Temanızın index.php dosyasına bakarak çözebilirsiniz.

    Tarih: 2 ay #

Bu konu için RSS beslemesi

Cevapla

Mesaj göndermek için giriş yapmalısınız.