Talimatları dediğiniz şekilde yaptım bu şekilde hata çıktı.

Warning: fopen(cache/0dde500da8a15b37857c8e1a65032394.cache) [function.fopen]: failed to open stream: No such file or directory in

Warning: fwrite() expects parameter 1 to be resource, boolean given in

Warning: fclose() expects parameter 1 to be resource, boolean given in



Misafir adlı üyeden alıntı: mesajı görüntüle
WordPress'in kasma problemleriyle herkes gibi benimde başım dertteydi. Ta ki buna bir çözüm bulmalıyım diyene kadar!

Kendim düne kadar başka bi hali ile kullanıyordum fakat @dev nickli kullanıcının yardımıyla da ufak sorunu da ortadan kaldırdık. Dilediğiniz gibi kullanıp geliştirebilirsiniz.

Yapmanız gerkenleri adım adım yazıyorum.

1. aşama
  1. wp-admin
  2. wp-content
  3. wp-includes

klasörlerinin bulunduğu dizine "cache" adında bir klasör oluşturup chmod değerini 777 olarak verin.

2. aşama
Yukarıdaki adımları gerçekleştirden sonra tema dizinine gidiyoruz. O dizinde bulunan single.php dosyasını açıp aşağıdaki kodu <?php get_header()?> kodunun hemen üstüne ekleyin.

<?php
$url = md5($_SERVER['REQUEST_URI']).".cache";
$adres = "cache/".$url;
$zaman = 15 * 24 * 60 * 60;
if (file_exists($adres)) {
if(time() - $zaman < filemtime($adres)) {
readfile($adres);
exit;
}else {
unlink($adres);
} }
ob_start(); 
?>
daha sonra en altta bulunan <?php get_footer()?> kodunun hemen altına da aşağıdaki kodu ekleyip dosyayı kapatabilirsiniz.

<?php
$dosya = fopen($adres, 'w+'); 
fwrite($dosya, ob_get_contents()); 
fclose($dosya); 
ob_end_flush();  
?>
tüm bu adımları yaptığınızda cache aktif olmuş olmalı. bunu kontrol etmek için sayfayı yenileyebilirsiniz. Ama aktif olup olmadığından tam emin olmak için anadizinde bulunan "cache" klasörünün içine bakabilirsiniz.

Şimdi gelelim cache temizleme işine.
  1. wp-admin
  2. wp-content
  3. wp-includes
  4. cache

klasörlerinin bulunduğu dizine cachesil.php adında bir dosya oluşturup aşağıdaki kodu içerisine yerleştirip kaydedin.

cachesil.php
<?php
function sayibul($klasor) {
	$dizi = array(); // dizi oluştur
	$open = opendir($klasor); // klasör aç

		while($q=readdir($open)) {
			if ($q != "." && $q != "..") {
				$dizi[] = $q;
			}
		}

	$sayi = count($dizi); // dosya sayısı
	closedir($open);  // klasörü kapat 
	
	return $sayi; // sayıyı çıktı olarak al
}
?>
<!DOCTYPE html>
<html lang="tr">
<head>
<meta charset="utf-8" />
<title>oksimoron wordpress cache sistemi</title>
<style type="text/css">
body{background-color:#fff;}
ul{display:block}
li{font-family:"Lucida Grande";font-size:15px;color:#333;}
.silindi {}
</style>
</head>
<body>
<div style="font-size:17px;font-family:Arial;color:#333;">İşlem: <span style="font-weight:bold;color:red;"><a href="<?php $uzanti = $_SERVER['REQUEST_URI']; echo $uzanti; ?>?temizle=tamam">Cache Sil</a></span> // Toplam: <span style="font-weight:bold;color:green;"><?php echo sayibul("cache"); ?></span> cache edilmiş sayfa bulundu.</div>
<hr />
<?php

@set_time_limit(0);
$sildim = $_GET["temizle"];
if($sildim == "tamam") {
	
        $oku = opendir("cache");
        
        while ($sonuc = readdir($oku))
        {
            $sonuck = explode(".",$sonuc);
            $sonuck = end($sonuck);
            
                if($sonuck == "cache"){
            
                    unlink("cache/".$sonuc);

            }

                }
									echo '<p style="font-size:24px;color:green;font-weight:bold;">Cache başarıyla boşaltıldı! <span style="color:#333;"><a href="#" onclick="history.back();">Geri dön!</a></span></p>';

}
?>
</body>
</html>
Son olarak https://www.r10.net/cachesil.php şeklinde tarayıcıya yazdığınızda karşısınızda cachelenmiş sayfa sayısı verilecektir. Tek seferde cache temizlemek içinde "Cache Sil" butonuna tıklamanız yeterli olacaktır.

Not: Bu konu hiç bir şey vaadetmez. Denersiniz, hoşunuza gider ve işinize yararsa kullanırsınız. Beğenmezseniz kullanmazsınız. Ben denedim. Kullanıyorum ve memnunum. Herkes faydalansın diye paylaşıyorum. Birbirimizi üzmenin manası yok.

Not2: cache klasörüne chmod 777 değerini vermeyi unutmayın.

Not3: single.php'deki bu işlemler diğer dosyalar içinde kullanılabilir. (örnek: index.php, category.php, tag.php gibi)

Not4: Kullanıp da faydasını gören arkadaşlar konu altına yazarlarsa sevinirim ki en azından kullanmakta tereddüt eden arkadaşlar için bir fikir oluşur.