Создание и запись файла в WordPress с использованием PHP - PullRequest
0 голосов
/ 14 сентября 2011

Я хотел бы создать файл для кэширования моих поисков (координаты и т. Д.). Я не знаю почему, но я не могу создавать и писать в WordPress. Я использую этот код для попытки:

<?php

 $filename = 'sitevisitors.txt';

 if (file_exists($filename)) 
 {
    $count = file(TEMPLATEPATH . 'sitevisitors.txt'); 
    $count[0] ++;
    $fp = fopen(TEMPLATEPATH . "sitevisitors.txt", "w");
    fputs ($fp, "$count[0]");
    fclose ($fp);
    echo $count[0];
 } 

 else 
 {
    $fh = fopen(TEMPLATEPATH . "sitevisitors.txt", "w");
    if($fh==false)
        die("unable to create file");
    fputs ($fh, 1);
    fclose ($fh);
    $count = file(TEMPLATEPATH . 'sitevisitors.txt'); 
    echo $count[0];
 }

 ?> 

Я не получаю никакого сообщения об ошибке, но файл "sitevisitors.txt" не создается и не обновляется, и не появляется на моем сервере. Что я делаю неправильно? Путь должен быть в порядке. Мой сервер подтверждает, что у меня есть полные права. Этот код прекрасно работает вне WordPress ...

Любые предложения приветствуются!

Ура, Марина

1 Ответ

1 голос
/ 14 сентября 2011

Константа TEMPLATEPATH не имеет косой черты в конце, вы должны использовать ее как:

$fh = fopen(TEMPLATEPATH . "/sitevisitors.txt", "w");

обратите внимание на косую черту перед именем файла

...