İçinde Sayı Olan Etiketleri Nasıl Gizlerim?
5
●481
- 28-07-2013, 03:46:07Etiketleri the_tags() fonksiyonu ile mi gösteriyorsunuz?
Eğer öyleyse, bu fonksiyon ile istediğinizi yapamazsınız.
http://codex.wordpress.org/Function_...e/get_the_tags adresinde anlatılan fonksiyonu kullanarak etiketleri gösterirseniz, araya bir if cümlesi ekleyip, eğer içinde sayı varsa gösterme diyebilirsiniz. - 28-07-2013, 04:48:09Üyeliği durdurulduthe_tags() ile gösterebiliyorum ancak sayıları göstermemek için kullanacağım if cümlesini bilmiyorum.yakuphan adlı üyeden alıntı: mesajı görüntüle
- 28-07-2013, 09:46:51Aşağıdaki kodları öncelikle temanızın functions.php dosyasına ekleyin.
function yakuphoca_etiket_listele( $before = null, $sep = ', ', $after = '' ) { if ( null === $before ) $before = __('Tags: '); $id = 0; $taxonomy = 'post_tag'; $terms = get_the_terms( $id, $taxonomy ); if ( is_wp_error( $terms ) ) return $terms; if ( empty( $terms ) ) return false; foreach ( $terms as $term ) { $link = get_term_link( $term, $taxonomy ); if (!preg_match('#[0-9]#',$term->name)){ if ( is_wp_error( $link ) ) return $link; $term_links[] = '<a href="' . esc_url( $link ) . '" rel="tag">' . $term->name . '</a>'; } } $term_links = apply_filters( "term_links-$taxonomy", $term_links ); echo $before . join( $sep, $term_links ) . $after; }Single.php ya da yazının etiketlerini hangi dosyada gösteriyorsanız o dosyayı açıp, the_tags fonksiyonu yerine yakuphoca_etiket_listele yazın. Yani eğer dosyada
the_tags('yazının etiketleri'); yazıyorsa bunu
yakuphoca_etiket_listele('yazının etiketleri'); şekline dönüştürün yani sadece the_tags ifadesini değiştirin. Kod etiket isminin herhangi bir yerinde bir rakam varsa o etiketi listeye dahil etmeyecektir. - 07-08-2013, 08:51:13Kodlar için teşekkürler yanlız şöyle bir problem çıktı. Eğer o konu içersinde sayısız ayet yoksa hata veriyor:
Warning: join() [function.join]: Invalid arguments passed in /home/content/52/10007652/html/*******.php on line 31
Bunun için bir şey yapabilir miyiz yoksa hata vermek yerine göstermesin? - 07-08-2013, 11:38:52aşağıdaki iki satır yerineyusufaslan44 adlı üyeden alıntı: mesajı görüntüle
$term_links = apply_filters( "term_links-$taxonomy", $term_links ); echo $before . join( $sep, $term_links ) . $after;if ($term_links) { $term_links = apply_filters( "term_links-$taxonomy", $term_links ); echo $before . join( $sep, $term_links ) . $after; }Eğer sayı olmayan etiket kalırsa yazdır, yoksa zaten bir şey göstermeyecek.