20+ En Çok Aranan WordPress Döngü Hackleri
Yayınlanan: 2017-12-20Döngü, WordPress'teki ana işlemdir, bu nedenle hemen hemen her tema dosyasında bulunur. Esasen, platform tarafından bir temanın şablon dosyaları aracılığıyla gönderileri görüntülemek için kullanılan bir PHP kodudur. Başka bir deyişle, çok büyük. Aslında bu kritik çünkü site bir döngü olmadan çalışmayacaktır.
Bu inanılmaz derecede güçlü özellikler setini değiştirmek, WordPress sitenizin yeteneklerini geliştirebilir. Örneğin, gönderilerin ana sayfada gösterilme şeklini değiştirebilir ve belirli parametreleri kullanarak bunları sıralayabilirsiniz. Döngünün değiştirilmesi en kolay şey olduğu göz önüne alındığında, oldukça etkileyici ve yaratıcı tüyolar elde edilebilir.
Eklenti yüklemeye gerek kalmadan bunu gerçekleştirmek için hemen kullanmanız gereken 20'den fazla döngü hilesini gösterelim.
#1. İlk Gönderiden Sonra Reklamı Yerleştirin
Bir blogcu olarak, reklamların para kazanmanın en iyi yollarından biri olduğunu çok iyi bilirsiniz. Ziyaretçilerden çok ihtiyaç duyulan bu tıklamaları almak kesinlikle zor bir iştir ve birçok blogcu yüksek tıklama oranlarından hoşlanmaz. Reklamları ilk gönderiden sonra yerleştirmek, onları artırmanın iyi bir yolu olabilir, bu yüzden bu basit düzeltmeyi deneyin.
Döngünüzü aşağıdaki ile değiştirin. Dikkat edin, reklamın kodunu oraya yapıştırmanız gerekir:
[php]
<?php if (have_posts()) : ?>
<?php $sayım = 0; ?>
<?php while (have_posts()) : the_post(); ?>
<?php $sayım++; ?>
<?php if ($count == 2) : ?>
//Bu satıra bir reklamın kodunu girin
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
<?php başka : ?>
<h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
<?php the_excerpt(); ?>
<?php endif; ?>
<?php bitiş zamanı; ?>
<?php endif; ?>
[/php]
#2. Eski Ama Popüler 1 Yaşındaki Gönderileri Görüntüle
Blogunuzdaki bazı gönderiler, bir yıl önce oluşturulmuş olmasına rağmen, okuyucularınız arasında hala popüler olabilir. Örneğin, bir nasıl yapılır makalesi veya başka türden her zaman yeşil kalan içerik olabilir. Bu gönderilerin popüler kalmasını sağlamak için bu kullanışlı tüyoyu uygulayabilirsiniz.
Bu kodu single.php dosyasına ekleyin:
[php]
<?php
$current_day = tarih('j');
$son_year = tarih('Y')-1;
query_posts('day='.$current_day.'&year='.$last_year);
if (have_posts()):
while (have_posts()) : the_post();
başlık();
the_alıntı();
son zaman;
endif;
?>
[/php]
#3. Döngüde Son Beş Yapışkan Mesajı Görüntüle
Varsayılan işlev, bir gönderiyi ön sayfaya yapıştırmaya izin verir. Aşağıdaki hack, beş yapışkan gönderi yerleştiriyor.
Birçok blogcu, bir girişin diğerlerinin üzerinde görüntülenmesine izin verdiği için yapışkan gönderileri öne çıkan gönderiler olarak düşünür. Kendi “Editörün Seçtikleri” kategorinizi oluşturmak istiyorsanız, tam da bunun için bir hile var. Aşağıdaki kodun çalışması için temanın herhangi bir yerine eklenmelidir. Dördüncü satırdaki numarayı değiştirerek daha az gönderi göstermek için numarayı da değiştirebilirsiniz.
[php]
<?php
$yapışkan = get_option('sticky_posts');
rsort($yapışkan);
$yapışkan = dizi_dilim( $yapışkan, 0, 5);
query_posts( array( 'post__in' => $yapışkan, 'caller_get_posts' => 1 ) );
if (have_posts()):
while (have_posts()) : the_post();
başlık();
the_alıntı();
son zaman;
endif;
?>
[/php]
#4. Belirli Bir Kategoriden Gönderileri Listeleme
Aşağıdaki hack ile aynı kategorideki gönderileri ayırt edin.
Herhangi bir nedenle aynı kategoriyi paylaşan gönderileri ayırt etmeniz gerekiyorsa (örneğin, deneme yazarları için nasıl yapılır makaleleri), döngü dosyasına aşağıdaki kodu ekleyin.
[php]
<?php foreach((get_the_category()) $kategori olarak) {
$thecat = $category->cat_ID . ' ';
query_posts('child_of='.$thecat);
if (have_posts()) : while (have_posts()) : the_post();
//Klasik WP döngüsü
bitiş; endif;
?>
[/php]
#5. Gelecekteki Gönderilerin Listesini Sağlayın
Okuyucuların yaklaşan gönderiler hakkında bilgi sahibi olmasını sağlamak, onların ilgisini çekebilir ve onları okumak için blogunuza dönmelerini sağlayabilir. Bu size harika bir fikir gibi geliyorsa, WordPress sitenizde gelecek yayınların kısa bir listesini sağlamak için aşağıdaki kodu kullanın.
[php]
<?php query_posts('showposts=10&post_status=gelecek'); ?>
<?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?>
<h2><?php the_title(); ?></h2>
<span class="datetime"><?php the_time('j. F Y'); ?></span></p>
<?php bitiş zamanı;
başka: ?><p>Gelecekte planlanmış bir etkinlik yok.</p>
<?php endif; ?>
[/php]
#6. Belirli Bir Tarihte Yüklenen Gönderileri Alın
Feed'inizde bazı gönderileri bulmakta sık sık zorlanıyorsanız, bunları bir döngü kullanarak arayabilirsiniz. Aramayı gerçekten kolaylaştıran aşağıdaki kodu ekleyerek mümkündür. Spesifik olarak, sizin belirlediğiniz iki tarih arasında kaydedilen girdileri alır.
[php]
<?php
function filtre_nerede($nerede = ”) {
$where .= " VE post_date >= '2012-08-19' VE post_date <= '2012-08-11'";
$nerede döndür;
}
add_filter('posts_where', 'filter_where');
query_posts($query_string);
while (have_posts()):
posta();
içerik();
son zaman;
?>
[/php]
#7. Bir Görüntü Döngüsü Görüntüle
İnsanların çoğu görselleri takdir ettiğinden, bir WordPress web sitesinin başlangıç sayfasındaki resim galerisi iyi bir fikirdir. Gönderileriniz bir ana görsel içeriyorsa, aşağıdaki kod onları bir döngü içinde sergilemek üzere alacaktır.
Functions.php dosyasına aşağıdaki kodu ekleyin:
[php]
function catch_that_image() {
küresel $yazı, $yazılar;
$ilk_img = ”;
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=['"]([^'"]+)['"].*>/i', $post->post_content, $matches);
$first_img = $eşleşir [1] [0];
if(empty($first_img)){ //Varsayılan bir resim belirler
$first_img = "/images/default.jpg";
}
$first_img döndür;
}
[/php]
#8. Bir Son Kullanma Tarihi Ayarlayarak Gönderileri Otomatik Olarak Kaldır
Blogunuzdaki okuyucu sayısını artırmak için bir yarışma düzenlediğinizi varsayalım. Yarışma bittiğinde, sonuçları ve en önemlisi, cevapları veya ipuçlarını ve ipuçlarını yayınlarsınız. Elbette, okuyucular için sonsuza kadar erişilebilir olmamalı çünkü gelecekte başka bir yarışma düzenleyebilirsiniz, değil mi?
Gönderileri unuttuğunuzda bile kaldırmanın iyi bir yolu, bir son kullanma tarihi belirleyerek planlamaktır. Aşağıdaki döngü mevcut döngünüzün yerini alır ve tam da bunu yapar.
Sona erme süresini değiştirmek için aa/gg/yyyy 00:00:00 biçimini kullanmayı unutmayın.
[php]
<?php
if (have_posts()):
while (have_posts()) : the_post(); ?>
$expirationtime = get_post_custom_values('expiration');
if (is_array($expirationtime)) {
$expirestring = implode($expirationtime);
}
$saniyearası = strtotime($expirestring)-time();
if ( $saniye arasında > 0 ) {
// Örneğin…
başlık();
the_alıntı();
}
son zaman;
endif;
?>
[/php]
#9. Geri İzlemelerden Ayrı Yorumlar
Blogunuzdaki popüler bir girişe diğer birçok siteden bağlantı verilecektir. Okuyucuların yorumlar bölümündeki tartışmayı rahatça takip edebilmelerini sağlamak için yorumları ve geri izlemeleri ayırmalısınız.
Tek yapmanız gereken yorumlar.php'yi açmak ve aşağıdakileri aramak:
[php]
foreach ($yorum olarak $yorum) : ?>
// Yorumlar burada görüntülenir
uç foreach;
[/php]
Buldun mu? Harika, şimdi yeni bir kodla değiştirin:
[php]
<ul class="yorum listesi">
<?php //Yalnızca yorumları görüntüler
foreach ($yorum olarak $yorum) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type == 'yorum') { ?>
<li>//Yorum kodu buraya gelir</li>
<?php }
uç foreach;
</ul>
<ul>
<?php //Yalnızca geri izlemeleri görüntüler
foreach ($yorum olarak $yorum) : ?>
<?php $comment_type = get_comment_type(); ?>
<?php if($comment_type != 'yorum') { ?>
<li><?php comment_author_link() ?></li>
<?php }
uç foreach;

</ul>
[/php]
#10. İlgili Gönderileri Göster
İlgili gönderileri görüntülemek, okuyucuyu artırmanın iyi bir yoludur. Bunu başarmak için tek yapmanız gereken single.php dosyasına özel bir kod yapıştırmak.
[php]
<?php
$yedek = $gönder; // geçerli nesneyi yedekle
$tags = ks29so_get_post_tags($post->ID);
$tagID'ler = dizi();
if ($etiketler) {
$tagcount = sayım($etiketler);
for ($i = 0; $i < $tagcount; $i++) {
$tagIDs[$i] = $tags[$i]->term_id;
}
$args=dizi(
'tag__in' => $tagID'ler,
'post__not_in' => dizi($post->ID),
'gösteriler'=>5,
'caller_get_posts'=>1
);
$my_query = new WP_Query($args);
if( $my_query->have_posts() ) {
while ($my_query->have_posts()) : $my_query->the_post(); ?>
<h3><a href="<?php the_permalink() ?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3>
<?php bitiş zamanı;
} başka { ?>
<h2>İlgili yayın bulunamadı!</h2>
<?php }
}
$post = $yedek; // geri kopyala
ks29so_reset_query(); // orijinal sorguyu tekrar kullanmak için
?>
[/php]
#11. Belirli Gönderilerin Ana Sayfada Nasıl Görüntülendiğini Belirleyin
WordPress temalarının büyük çoğunluğu, tüm gönderileri başlangıç sayfasında aynı şekilde gösterir. Ancak beğenmediyseniz, değiştirebilir ve hangilerinin tam olarak görüntülenmesi gerektiğini ve hangilerinin yalnızca alıntıların yeterli olduğunu belirleyebilirsiniz.
index.php dosyasını bulun ve orada döngü arayın. Aşağıdaki kod onun yerine geçer:
[php]
<?php if (have_posts()) :
while (have_posts()) : the_post();
$customField = get_post_custom_values("dolu");
if (isset($customField[0])) {
//Özel alan ayarlandı, tam bir gönderi görüntüle
başlık();
içerik();
} Başka {
// Özel alan seti yok, bir alıntı gösterelim
başlık();
the_alıntı();
son zaman;
endif;
?>
[/php]
#12. Tanıtım İçeriğini Ana Sayfadaki Gönderilerin Üzerinde Görüntüleyin
Promosyon içeriği eklemek için aşağıdaki kodu index.php dosyasına ekleyin.
[php]
<div class="içerik döngüsü">
[/php]
#13. Bir Sayfadaki Tüm Blog Yazarlarını Listeleme
Tüm yazarların listesini görüntülemek için bu kodu döngünün herhangi bir yerine yapıştırmanız yeterlidir.
[php]
<ul>
<?php ks29so_list_authors('exclude_admin=0&optioncount=1&show_fullname=1&hide_empty=1'); ?>
</ul>
[/php]
#14. Konuk Yazarın Adını Göstermek için Özel Alanı Kullanın
Blogunuzda konuk yazarlar kullanıyorsanız, büyük olasılıkla onlar için ayrı bir sayfa oluşturmazsınız. Bunun yerine neden sadece isimlerini göstermiyorsunuz?
Bunu yapmak için bu kodu single.php'ye ekleyin:
[php]
<?php $yazar = get_post_meta($post->ID, "misafir-yazar", true);
if ($yazar != "") {
yankı $yazar;
} Başka {
yazar();
} ?>
[/php]
#15. Bir Resmi Yayınlamak İçin Zorunlu Bir Gereksinim Yapın
Görsel içeren gönderiler, genellikle görselsiz gönderilerden daha fazla izlenir. Zorunlu hale getirmek için function.php dosyanızı açın.
[php]
add_action('save_post', 'wpds_check_thumbnail');
add_action('admin_notices', 'wpds_thumbnail_error');
function wpds_check_thumbnail( $post_id ) {
// herhangi bir özel gönderi türüne geç
if( get_post_type($post_id) != 'gönder' )
dönüş;
if ( ! has_post_thumbnail( $post_id ) ) {
// kullanıcılara bir yönetici mesajı göstermek için bir geçici olay ayarla
set_transient("has_post_thumbnail", "hayır");
// sonsuz döngüye girmemesi için bu işlevi kancadan çıkarın
remove_action('save_post', 'wpds_check_thumbnail');
// gönderiyi güncelle, taslak olarak ayarla
ks29so_update_post(array('ID' => $post_id, 'post_status' => 'taslak'));
add_action('save_post', 'wpds_check_thumbnail');
} Başka {
delete_transient("has_post_thumbnail");
}
}
function wpds_thumbnail_error() {
// geçici durumun ayarlanıp ayarlanmadığını kontrol edin ve hata mesajını görüntüleyin
if ( get_transient( "has_post_thumbnail" ) == "hayır" ) {
echo "<div id='message' class='error'><p><strong>Bunu yayınlamadan önce bir Öne Çıkan Görsel eklemelisiniz. Panik yapmayın, gönderiniz kaydedildi.</strong></p>< /div>";
delete_transient("has_post_thumbnail");
}
}
[/php]
#16. Kayıttan Sonra Belirli Bir Sayfaya Yönlendirin
Functions.php dosyasını açın ve aşağıdaki kodu ekleyin.
[php]
function __my_registration_redirect(){
eve dön_url('/sayfam');
}
add_filter( 'kayıt_yönlendirme', '__my_registration_yönlendirme');
#17. Gönderiye Reklam Ekle
Reklamları istediğiniz herhangi bir yerde bir gönderiye sarmak için function.php dosyanızdaki bu kodu kullanın.
Hile
işlev googleadsense($içerik){
$adsensecode = 'Reklam Kodlarınız Burada';
$pattern = '<!-googlead->';
$içerik = str_replace($desen, $adsensecode, $içerik);
$içerik döndür;
}
add_filter('the_content', 'googleadsense');
[/php]
#18. Reklamları Görüntülemek için Kısa Kodları Kullanın
Reklam eklemek istediğiniz yeri seçin ve aşağıdaki kodu function.php'ye yapıştırın.
[php]
işlev gösterileri() {
dönüş '
REKLAM KODU BURADA
';
}
add_shortcode('adsense', 'gösteriler');
[/php]
#19. En Çok Yorumlanan Gönderileri Görüntüle
En çok yorum alan gönderileri göstermek için function.php dosyasına aşağıdaki kodu ekleyin.
[php]
function wpb_most_commented_posts() {
ob_start();?>
<ul class="en çok yorum yapılan">
<?php
$sorgu = yeni
WP_Query('orderby=comment_count&posts_per_page=10');
while($query->have_posts()) : $query->the_post(); ?>
<li><a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>"><?php the_title(); ?></a> <span class="wpb-comment-count"><?php comments_popup_link('Yorum Yok;', '1 Yorum', 'Yorum Yüzdesi'); ?></span></li>
<?php bitiş zamanı; ?>
</ul>
<?php// Çıktı arabelleğe almayı kapat
$çıktı = ob_get_clean();
$ çıktısını döndür; }
add_shortcode('wpb_most_commented', 'wpb_most_commented_posts');
add_filter('widget_text', 'do_shortcode');
[/php]
#20. Öne Çıkan Resim Desteğini Etkinleştir
WordPress temalarının büyük çoğunluğu öne çıkan görselleri destekler, ancak sizinki desteklemiyorsa bunu function.php dosyasına ekleyerek etkinleştirebilirsiniz.
[php]
add_theme_support('küçük resim sonrası');
[/php]
#21. Son Yorumları Göster
En son beş yorumu görüntülemek için bu kodu döngünün herhangi bir yerinde kullanın.
[php]
<?php
$query = "SEÇ * $wpdb->comments WHERE comment_approved= '1'
SİPARİŞ TARİHİ yorum_tarihi DESC LIMIT 0 ,5";
$yorum = $wpdb->get_results($sorgu);
if ($yorum) {
yankı '<ul>';
foreach ($yorum olarak $yorum) {
$url = '<a href="'. get_permalink($comment->comment_post_ID).'#comment-'.$comment->comment_ID .'" title="'.$comment->comment_author .' | '.get_the_title($comment->comment_post_ID).'">';
yankı '<li>';
echo '<div class="img">';
yankı $url;
echo get_avatar( $comment->comment_author_email, $img_w);
yankı '</a></div>';
echo '<div class="txt">Par: ';
yankı $url;
echo $yorum->yorum_yazar;
yankı '</a></div>';
yankı '</li>';
}
yankı '</ul>';
}
?>
[/php]
Hack'e hazır mısınız?
Bu kullanışlı ince ayarları kullanın ve WordPress sitenizin işlevselliğini geliştirin!