Ошибка Javascript и php

Я использую url

У меня есть javascript (jquery) файл с именем custom.js, в котором я использую:

(function ($) { $(document).ready(function () { $('.days').countdown({ until: directorDate, layout: '{dn} {dl}', timezone: +7 }); $('#weather').openWeather({ city: 'directorCity //The city is in a string.It used to be 'New York,US' placeTarget: '.weather-place', iconTarget: '.weather-icon', customIcons: 'dark/files/img/icons/weather/' }); }); })(jQuery); 

В моем заголовке я использую:

 <script>var directorDate = new Date(<?php $date = get_option('director_date');?> <?php if( $date) : ?> <?php echo $date; ?> <?php endif; ?>); var directorCity = <?php $city = get_option('director_city');?> <?php if( $city) : ?> <?php echo $city; ?> <?php endif; ?></script> 

В основном происходит то, что заголовок получает данные из файла themeoptions.php (форма в wordpress admin для ввода пользователем данных. Я не показывал его, потому что структура как director_city, так и director_date там же) и то custom.js получает данные из заголовка.

Теперь обратный отсчет работает, однако город не отображается. Почему это так?

Попробуйте в php заменить эту строку:

 var directorCity = <?php $city = get_option('director_city');?> <?php if( $city) : ?> <?php echo $city; ?> <?php endif; ?> 

с:

 var directorCity = <?php $city = get_option('director_city');?> <?php if( $city) : ?> <?php echo "'".$city."';"; ?> <?php endif; ?> 

Попробуйте, и если он не работает, отправьте результат html из этого php-файла.

Эта строка выглядит некорректно: city: 'directorCity //The city is in a string.It used to be 'New York,US' . Он читает всю эту строку как строку (и, вероятно, бросает ошибку на N после второй одинарной кавычки?).

Похоже, вы после имени города directoryCity , хранящегося в directoryCity , поэтому попробуйте изменить эту строку на city: directoryCity,

Если это не сработает, можете ли вы проверить наличие ошибок в консоли javascript и, если хотите, опубликовать их?