

Wordpress Anasayfadaki Yazı Sayısı Ayarlama
-
öncelikle temanın index.php dosyası.
şimdi kodda görüceğiniz üzere iki adet if kontrolü var biri magazine'se diğeri blog'sa.
beni ilgilendiren kısmı blog kısmı. ve gördüğüm kadarıyla o kısımda wordpressin kendi fonksiyonu kullanılıyor.
admin panelinden ayarlar>okuma bölümünden yazı sayısını değiştirmeme ragmen etki etmiyor.
ekrana 30-40 tane yazı basıyor. Sizce neden dir ?
<?php if ( is_home() ) { query_posts( 'posts_per_page=10' ); } ?>
<?php if (have_posts()) : while (have_posts()) : the_post(); ?>
başına şunu ekledim ama bunuda yemedi
-
functions.php içerisinde pre_get_posts actionu ara. ara. Bununla yazı sayısını sınıflamış olabilir.. Şuna benzer bir kod olabilir:
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 5 ); return; } //eğer film ile ilgilli arşiv sayfası ise if ( is_post_type_archive( 'film' ) ) { //50 sayfa görünsün. $query->set( 'posts_per_page', 50 ); return; } } -
shock56 bunu yazdı
functions.php içerisinde pre_get_posts actionu ara. ara. Bununla yazı sayısını sınıflamış olabilir.. Şuna benzer bir kod olabilir:
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 5 ); return; } //eğer film ile ilgilli arşiv sayfası ise if ( is_post_type_archive( 'film' ) ) { //50 sayfa görünsün. $query->set( 'posts_per_page', 50 ); return; } }maalesef yok . hatta custom post limits eklentisi kurdum. o da yemedi :|
-
<p><?php echo string_limit_words(get_the_excerpt(), 34); ?></p><a href='<?php the_permalink(); ?>' title='<?php the_title(); ?>' class="readmore"><?php _e('Devamını Oku', 'Avenue'); ?> <span class="block-arrows">»</span></a>
bu koddaki 34 sayısını arttırıp dener misin
-
majestiquo bunu yazdı
function string_limit_words($string, $word_limit)
{
$words = explode(' ', $string, ($word_limit + 1));
if(count($words) > $word_limit) {
array_pop($words);
}
return implode(' ', $words);
}
o sadece kelime kırpmaya yarıyor
-
FCN bunu yazdıshock56 bunu yazdı
functions.php içerisinde pre_get_posts actionu ara. ara. Bununla yazı sayısını sınıflamış olabilir.. Şuna benzer bir kod olabilir:
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 5 ); return; } //eğer film ile ilgilli arşiv sayfası ise if ( is_post_type_archive( 'film' ) ) { //50 sayfa görünsün. $query->set( 'posts_per_page', 50 ); return; } }maalesef yok . hatta custom post limits eklentisi kurdum. o da yemedi :|
O zaman kendi sorgunu kendin oluşturmalısın. $wpdb kullanarak oluşturabilirsin.
-
shock56 bunu yazdıFCN bunu yazdıshock56 bunu yazdı
functions.php içerisinde pre_get_posts actionu ara. ara. Bununla yazı sayısını sınıflamış olabilir.. Şuna benzer bir kod olabilir:
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 5 ); return; } //eğer film ile ilgilli arşiv sayfası ise if ( is_post_type_archive( 'film' ) ) { //50 sayfa görünsün. $query->set( 'posts_per_page', 50 ); return; } }maalesef yok . hatta custom post limits eklentisi kurdum. o da yemedi :|
O zaman kendi sorgunu kendin oluşturmalısın. $wpdb kullanarak oluşturabilirsin.
spesifik bişi aramıyorum ki db den. wp nin kendi fonksiyonu varken neden ekstra sorgu yazim :| sıkıntım sadece yanlış çalışması. ben 10 tane istiyorsam o 40 tane getiriyo
-
FCN bunu yazdıshock56 bunu yazdıFCN bunu yazdıshock56 bunu yazdı
functions.php içerisinde pre_get_posts actionu ara. ara. Bununla yazı sayısını sınıflamış olabilir.. Şuna benzer bir kod olabilir:
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { if ( is_admin() || ! $query->is_main_query() ) return; //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 5 ); return; } //eğer film ile ilgilli arşiv sayfası ise if ( is_post_type_archive( 'film' ) ) { //50 sayfa görünsün. $query->set( 'posts_per_page', 50 ); return; } }maalesef yok . hatta custom post limits eklentisi kurdum. o da yemedi :|
O zaman kendi sorgunu kendin oluşturmalısın. $wpdb kullanarak oluşturabilirsin.
spesifik bişi aramıyorum ki db den. wp nin kendi fonksiyonu varken neden ekstra sorgu yazim :| sıkıntım sadece yanlış çalışması. ben 10 tane istiyorsam o 40 tane getiriyo
Doğru söylüyorsun. O zaman şöyle yapalım madem ki yukarıda verdiğim kod temanda yok o zaman temanın functions.php bölümüne yapıştır. Şunu yapıştırman yeterli
add_action( 'pre_get_posts', 'sayfaSinirlamasi', 1 ); function sayfaSinirlamasi( $query ) { //eğer ana sayfa ise if ( is_home() ) { //yalnızca 5 sayfa görünsün. $query->set( 'posts_per_page', 1 );//buradaki 1 yazı sayısı. return; } }shock56 tarafından 18/Şub/14 19:42 tarihinde düzenlenmiştir -
benzer bişi daha denemiştim yemedi bunuda.
buda temanın kendi sayfalama fonksiyonu
-
Dostum kullanıdığın tema bu galiba.
http://wp-avenue.themesector.com/
eğer doğru ise burada hangi bölümdeki yazıların kontrolünü yapıyoruz. Gösterirsen ona göre bir de bakalım.
Yoksa eğer temayı göster onun üzerinde düşünelim.
-
shock56 bunu yazdı
Dostum kullanıdığın tema bu galiba.
http://wp-avenue.themesector.com/
eğer doğru ise burada hangi bölümdeki yazıların kontrolünü yapıyoruz. Gösterirsen ona göre bir de bakalım.
Yoksa eğer temayı göster onun üzerinde düşünelim.
http://wp-avenue.themesector.com/blog/ bu kısımdaki recent post bölümü