[Web Master ve Wordpress Bilgi Paylaşım Blogu | Etkisizeleman.com]
Functions.php için faydalı kodlar | Web Master - Wordpress ve Seo Blogu |
Anasayfa / WORDPRESS / Functions.php için faydalı kodlar

Functions.php için faydalı kodlar

Functions.php için faydalı kodlar
Functions.php için faydalı kodlar

Functions.php için faydalı kodlar ile wordpress sisteminize yarar sağlayan birkaç işlem yapabilirsiniz. Bu işlemleri yapabilmek için sadece functions.php dosyasına kod eklemek yeterli olacaktır.

Öncelikle functions.php dosyasını tanıyalım. Bu dosya WordPress tema klasörleri ile birlikte sunucumuza yüklenen ayar dosyasıdır. Dosyanın asıl amacı tema geliştiricilerini tanıtmak, tema işlevlerini ve özelliklerini almasını sağlayan dosyadır. 

WordPress eklentilerinin de düzenleme yaptığı bu dosyada wordpress’e komut vermiş olursunuz. Eklediğiniz bu ufak kodlar ile eklenti sunucu dosya yükünden kurtularak direk olarak çalışmasını sağlayabilirsiniz.

Functions.php Dosyasına Kod nasıl eklenir ?

Bilmeyen arkadaşlarımız daha önce yazmış olduğumuz Functions.php Dosyasına Kod Eklemek adlı makalemizi inceleyebilir.

1.Yeniden Boyutlandırılan görselleri net hale getirmek

Bu kod parçacığı web sitemizde yeniden boyutlandırma yapılan tüm resimlerin kaybettikleri netlik oranlarını geri getirmeye yaramaktadır.

Özellikle resim sıkıştırma eklentileri kullanan arkadaşlarımız görüntülerinde bulanıklaşma yaşamaktadır. Bu kod parçacığını functions.php dosyasına yapıştırarak görüntüleri netleştirebilir.

// Etkisizeleman.com resimleri netleştir
function
ajx_sharpen_resized_files( $resized_file ) {
$image
= wp_load_image( $resized_file );
if ( !is_resource( $image ) )
return new WP_Error( 'error_loading_image', $image, $file );
$size
= @getimagesize( $resized_file );
if ( !$size )
return new WP_Error('invalid_image', __('Could not read image size'), $file);
list
($orig_w, $orig_h, $orig_type) = $size;
switch ( $orig_type ) {
case IMAGETYPE_JPEG:
$matrix
= array(
array
(-1, -1, -1),
array
(-1, 16, -1),
array
(-1, -1, -1),
);
$divisor
= array_sum(array_map('array_sum', $matrix));
$offset
= ;
imageconvolution
($image, $matrix, $divisor, $offset);
imagejpeg
($image, $resized_file,apply_filters( 'jpeg_quality', 90, 'edit_image' ));
break;
case IMAGETYPE_PNG:
return $resized_file;
case IMAGETYPE_GIF:
return $resized_file;
}
return $resized_file;
}
add_filter
('image_make_intermediate_size', 'ajx_sharpen_resized_files',900);

2. Makalelerin Özet Uzunluğunu Değiştirmek

Daha fazla oku yada Read More butonundan önce wordpress’in otomatik olarak yazdığı kısa özet çok uzun gözüküyor ve sitenin görüntüsünü bozuyor ise aşağıdaki kod yardımıyla bu sorunu aşabilirsiniz.

Kod kelime olarak sayım yapmaktadır. Kelime haznesini ne kadar tutmak isterseniz “50” olan yeri değiştiriniz.

3.Wordpress Versiyon Bilgisini Kaldırmak

WordPress sürümünüzün açık olması saldırı yapacak kişilere açık davetiye çıkarmaktır. Sürümü bilen hacker sürümdeki açıklar hakkında bilgi toplayabilir ve web sitesini kolayca alaşağı edebilir. Bu sorunu ortadan kaldırmak için aşağıdaki kodu kullanabilirsiniz.

4.Wordpress Güncellemelerini Sadece Admin’in Görmesini Sağlamak

Özellikle blog sistemi kullanarak yazar barındıran veya wordpress sistemleri üzerinden web tasarım yapan arkadaşlar için oldukça yararlı bir kod parçasıdır. Bu kod parçası sayesinde admin panelinde sitenin üzerinde gözüken güncelleme bildirimlerini Admin dışında hiçbir kullanıcı göremeyecektir.

5. WordPress Teşekkür Yazısını Kaldırmak

WordPress admin panelinde göz yoran şeyleri sevmiyorsanız. Bunlardan biriside canınızı sıkacak olan “WordPress ile Oluşturduğunuz İçin Teşekkürler” yazısınıdır. Bu yazıyı kaldırmak için aşağıdaki kod parçasını kullanabilirsiniz.

Tamamen kaldırmak için echo 'Etkisizeleman.com Web Master Destek Platformu'; kısmını boş bırakmalısınız. Değiştirmek için kendi bilgilerinizi yazabilirsiniz.

6.Admin Paneli Giriş Logusunu Değiştirme

Admin Panele giriş yaparken göze batan WordPress logosunu kaldırarak kendi logonuzu koyabilirsiniz. Genellikle yazar kullanan ve wordpress site satışı yapan kişiler bu kodu tercih etmektedir.

7. Önizleme sayısına sınır koyma

Makale yazarken çoğumuz yazı nasıl olmuş diye önizleme butonunu kullanmışızdır. Geriye dönük tüm detayları wordpress veritabanınıza kaydetmektedir. Bu gereksiz yükü ortadan kaldırmak için Veritabanına kayıt altına alınan önizleme sayısını sınırlayacağız.

8. WordPress’in kendisine attığı pingleri kapatmak

Site içi linklemeyi seo açısından hepimiz yapıyoruzdur. Bu yöntemin sebep olduğu geri pinglemeyi ortadan kaldırmak için aşağıdaki kodu kullanabilirsiniz.

9.Kullanmadığınız WordPress Bileşenlerini Kaldırmak

Çoğu webmaster arkadaşımızın kullanmadığı wordpress standartlarında gelen bileşenler mevcuttur. Bu bileşenler yüzünden Görünüm>Bileşenler modülünden Sidebarlara özellik eklemeye çalışırken gözlerimiz yoruluyor. WordPress’in orjinalinde gelen bu gereksiz widgetleri ortadan kaldırmak için aşağıdaki kodu kullanabilirsiniz.

10. Admin hesabından otomatik çıkış süresini artırmak

Admin panelindeyken wordpress bir süre sonra sizi otomatik olarak çıkış yaptırır. Tekrar şifre girmenizi ister. Bu süreyi 1 yıllığına uzatarak size kolaylık sağlayacak kod parçasını functions.php dosyasına ekleyebilirsiniz.

11. Yorumlarda yazar site linkini kaldırmak

Yorum atanların bazıları sırf backlink almak için yorum atmaktadır. Nofollow linkler size zarar vermese de dofollow linkler seo açısından size zarar verebilir. Bu tür olaylara mahal vermemek için yorum atanların kullanıcı adlarının arkaplanında yer alan linkleri aşağıdaki kod yardımıyla kaldırabilirsiniz.

12.Yorumlarda web site doldurmayı kaldırmak

Yorum yapan kullanıcıların web sitesi ekleme zorunluluğunu ortadan kaldırmak için aşağıdaki kodu kullanabilirsiniz.

function remove_comment_fields($fields) {
unset($fields['url']);
return $fields;
}
add_filter('comment_form_default_fields','remove_comment_fields');

13. Read More yazısını değiştirmek

Blog yazılarında yazının özetinden sonra gelen Read More butonunu değiştirerek Devamını Oku yapmayı çok zor bir işlem olarak görseniz de aslında çok basit bir işlemdir. Aşağıdaki kod yardımıyla bu işlemi yapabilirsiniz.

14. Site içi aramayı kapatmak

Ziyaretçilerin site içinde arama yapmasını engelleyerek her sayfayı tek tek dolaşmasını istiyorsanız aşağıdaki kodu kullanmalısınız. Bazı durumlarda bu olay ziyaretçileri canından bezdirip siteden uzaklaşmasına sebep olabilir.

15. Standart Gravatar Resmini Değiştirme

Gravatar kullanan arkadaşların gravatar’ın uyuz olduğumuz resminden sıkılmışlığı vardır. Bunu değiştirmek aslında çok kolay aşağıdaki kod parçasına avatar linkinin yolunu söyleyerek istediğiniz avatarı kullanabilirsiniz.

Not: Kodu ekledikten sonra Admin Panel>Ayarlar>Tartışma sekmesinden yeni avatarı seçip kaydet demeyi unutmayınız.

16.Bakım modu

Web sitesini bakıma soktuğunuzda eklenti kullanmanıza gerek yoktur. Functions.php dosyasına aşağıdaki kodu ekleyerek web sitenizi bakıma soktuğunuzu ziyaretçilerinize duyurabilirsiniz.

// Etkisizeleman.com Bakım modu açık
// Admin girişi yaptığınızda size bakım modu gözükmez ama kullanıcılara gözükür.
function wp_maintenance_mode(){
if(!current_user_can('edit_themes') || !is_user_logged_in()){
wp_die('Bakım yapıyoruz. Yaklaşık olarak 1 gün sonra hizmetinizdeyiz.', 'Bakım yapıyoruz. Yaklaşık olarak 1 gün sonra hizmetinizdeyiz.', array('response' => '503'));
}
}
add_action('get_header', 'wp_maintenance_mode');

17.Rss içerisinde özel resim göstermek

Ziyaretçilerine rss hizmeti sunan web siteleri aşağıdaki kod yardımıyla rss’ye bağlı olarak görsel hizmetide sunabilirler.

function rss_post_thumbnail($content) {function rss_post_thumbnail($content) { global $post; if(has_post_thumbnail($post->ID)) { $content = get_the_post_thumbnail($post->ID) . $content; } return $content;}add_filter('the_excerpt_rss', 'rss_post_thumbnail');add_filter('the_content_feed', 'rss_post_thumbnail');

18.Arama Sonuçlarında Özel Sayfaların Listelenmesini Engellemek

Bağlantı vermediğiniz sayfaların site içi arama sonuçlarında çıktığını hepimiz biliyoruz. Bu durumdan rahatsız olan arkadaşlarımız için bu sonuçlarda özel sayfalarınızın gözükmesini istemiyorsanız aşağıdaki kodu kullanmalısınız.

function filter_search($query) {function filter_search($query) { if ($query->is_search) { $query->set('post_type', 'page'); } return $query;}add_filter('pre_get_posts', 'filter_search');

19.Arama sonucunda tek bir makale çıkarsa otomatik yönlendirme

Bir Önceki Makale  Wordpress Contact Form 7 SMTP ayarları

Ziyaretçileriniz arama yaptığı kelimede tek bir makaleye ulaştıklarında otomatik olarak tıklamalarına gerek kalmadan o linke yönlendirilmelerini aşağıdaki kod ile sağlayabilirsiniz.

add_action('template_redirect', 'redirect_single_post');
function redirect_single_post() {
if (is_search()) {
global $wp_query;
if ($wp_query->post_count == 1 && $wp_query->max_num_pages == 1) {
wp_redirect( get_permalink( $wp_query->posts['0']->ID ) );
exit;
}
}
}

20.Yorumlara uzunluk sınırı koymak

Sağol gibi ufak yorumlar almak istemeyen arkadaşlarımızın kullanabileceği güzel bir yöntem olan uzunluk sınırı aşağıdaki kodlar yardımıyla gerçekleştirilebilir. Bu kod sayesinde yazılacak yorumun en az 20 harf olmasını sağlayabilirsiniz.

add_filter( 'preprocess_comment', 'minimal_comment_length' );add_filter( 'preprocess_comment', 'minimal_comment_length' );function minimal_comment_length( $commentdata ) { $minimalCommentLength = 20; if ( strlen( trim( $commentdata['comment_content'] ) ) < $minimalCommentLength )        { wp_die( 'All comments must be at least ' . $minimalCommentLength . ' characters long.' );        } return $commentdata;}

21.Admin Panelden Yöneticilere Bildirim Göndermek,

Birden fazla admin hesabı ile yönetilen web sitelerinde adminlere toplu bildirim göndermek için aşağıdaki kodu functions.php dosyasına ekleyerek admin panelinden bildirim gönderebilirsiniz. Göndereceğiniz bildirim Admin paneline giriş sağlayan yöneticelere en üstte gösterilir.

Not: Bildirimi [note]Bildirim buraya[/note] olarak göndermek zorundasınız. Aksi halde gözükmez.

// Admin Note
function adminnote($atts, $content = NULL){
if(current_user_can(‘edit_themes’) || is_user_logged_in()){
return ‘</pre>
<div style="margin-bottom: 22px; font-family: Consolas, Monaco, ‘Courier New’, Courier, monospace; font-size: 12px; font-weight: inherit; overflow-x: auto; white-space: -o-pre-wrap; width: 99%; word-wrap: break-word; background: #f3f3f7; border: 1px solid #dedee3; padding: 11px; line-height: 1.3em;"><b>Admin Notice</b>
‘ . $content . ‘</div>
<pre>
‘;
}
}
add_shortcode(‘note’, ‘adminnote’);

22.Wordpress Hafızasını (Memory Limit) Arttırmak

Genellikle beyaz ekran hatasına sebep olan Hafıza yetersizliğini aşağıdaki kod yardımıyla çözebilirsiniz.

define('WP_MEMORY_LIMIT', '64M');

23. Text Widgetine Php Kodu Eklemek

Bileşenlerde bulunan Text Widgetine Html kodu ve yazı yazmamıza izin veriyor wordpress. Php kodu kullanmak isterseniz aşağıdaki kod işinizi görecektir.

function php_text($text) {
if (strpos($text, '<' . '?') !== false) {
ob_start();
eval('?' . '>' . $text);
$text = ob_get_contents();
ob_end_clean();
}
return $text;
}
add_filter('widget_text', 'php_text', 99);

24.Sayfanın üstünde yer alan admin barı sayfanın altına almak

Bazı arkadaşlarımız admin barın göründüğü yerden sıkıldıysa sayfanın altına alabilirler. Aşağıdaki kodu functions.php dosyasına yapıştırmanız yeterli olacaktır.

 function fb_move_admin_bar() {
echo '
<style type="text/css">
body {
margin-top: -28px;
padding-bottom: 28px;
}
body.admin-bar #wphead {
padding-top: 0;
}
body.admin-bar #footer {
padding-bottom: 28px;
}
#wpadminbar {
top: auto !important;
bottom: 0;
}
#wpadminbar .quicklinks .menupop ul {
bottom: 28px;
}
</style>';
}
// on backend area
add_action( 'admin_head', 'fb_move_admin_bar' );
// on frontend area
add_action( 'wp_head', 'fb_move_admin_bar' );

25.Yazar hakkında sayfasını hakkımızda sayfasına yönlendirmek

Her yazarın kendi hakkında sayfası vardır. Burada paylaştığı makaleler ve kendi hakkında kısa bilgisi yer almaktadır. Bu sayfaya tıklayanları otomatik web sitesinin hakkımızda sayfasına yönlendirerek kullanıcıların fazla bilgiye ulaşmasını engelleyebiliriz.

add_filter( 'author_link', 'my_author_link' );
function my_author_link() {
return home_url( 'hakkimizda' );
}

Functions.php için faydalı kodlar listemize burada son veriyoruz. Blogumuzu takip ederek çok daha fazlasına ulaşabilirsiniz.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir