Я не совсем уверен, если это может решить вашу проблему, также я не знаю о WordPress. Однако, возможно, вы можете попробовать использовать встроенные функции WordPress, возможно, в этом случае вы можете попробовать wp_remote_get или найти похожие функции для использования вместо file_get_content()
. Потому что, может быть, по соображениям безопасности или разрешения, вам не разрешено получать содержимое с некоторых URL, не уверен.
Вы можете проверить его с помощью chmod($url, 0000);
, чтобы увидеть, разрешено ли вам изменять разрешение файла. Затем, если это была проблема с разрешением, вы можете просто добавить chmod()
в ваш скрипт:
//Wordpress function for URL to the file location
$url = get_stylesheet_directory_uri() . '/calendar.json';
chmod($url, 0777);
//$data = file_get_contents($url);
$data = wp_remote_get($url);
$content = json_decode($data);
chmod($url, 0755);
echo $content->title;
echo $content->start;
Ваши PHP-коды в порядке. Может быть, var_dump($url);
, чтобы убедиться, что все в порядке.
Кроме того, вы можете попробовать изменить
events: $url;
до
events: <?php echo $url; ?>