Второй не менее важной новостью стало наконец решение задачи с встраиванием выпадающего меню в HTML-страницы. В дизайне 2013 года появилось выпадающее многоуровневое меню, но к сожалению тогда не удалось встроить его из отдельного файла, что бы можно было его по мере надобности апдэйтить. В частности апдэйт очень требовался в отношении списка музыкантов - музыканты прибывают в состав Т.О. NEANE Records, выдывают из состава. А переписывать из-за этого сотни и даже тысячи в перспективе страниц совсем не хочется.
Год назад, при запуске нового дизайна я пытался тогда решить эту проблему с помощью оператора PHP include и Игоря Колесникова - тех.админа компании Зенон, где тогда был хостинг.
Несмотря на то, что тариф "Свободный" на Зеноне отрабатывал только статичный HTML и CSS, в документации к тарифному плану было указано, что оператор include работать в составе HTML-страницы может, в том случае, если его аргумент так же статичная HTML-страница. И был приведен пример синтаксиса. Мы тогда - год назад - так и сделали, но ничего не заработало. И Колесников стал (с умным видом, как всегда) объяснять, что адрес подгружаемой HTML-страницы надо указывать типа физический (почтовый индекс, на деревню дедушке) - вот как на сервере расположен файл, а не через кем-то когда-то назначенный прямой домен - "ему надо конкретно указать, где этот файл расположен" (Зенон, пятый сервер от окна, ...) При этом смотрел на меня как на полного идиота, ничего не понимающего в этих делах. А я и правда понять не мог - нафига указывать "конкретно", когда потом при возможной смене хостера придется переписывать две тысячи статичных HTML- файлов? Он даже обещал прислать пример этой конкретики. Конечно, не прислал. А дело было в том, что по умолчанию настройки сервера не разрешают отработку PHP-включений в составе HTML-страниц. Это надо разрешить специальной строкой в файле .htaccess . Мне конечно удивительно, что Колесников об этом не знал. Но то, что он так и не поинтересовался на работе этим вопросом - почему у них не отрабатываются заявленные функции - вот это уже другой, хотя - более понятный, вопрос. Сейчас я уже не могу протестировать работу этой фичи на Зеноне. Но на Блюхосте оно тоже сначала не заработало, пришлось перерыть еще немного интернета. И решение нашлось. Кстати, оно - не единственное.
А попутно я поправил и совместимость выпадающего меню для IE - до сего дня там выпадало только из первого пункта. Теперь в IE (на тех страницах, где успел исправить - заменить меню на вставленное через include) меню выпадает полноценно. Оказывается ему одного скрипта было мало - надо в HEAD-разделе прописывать столько идентичных скриптов, сколько выпадающих структур в файле существует. Разумеется все они ориентированы на разные переменные. И соответственно надо менять их название во всех обособленных выпадающих конструкциях. Но это как раз совпало с общей заменой элемента меню на встраиваемый из единого источника, так что работы почти не прибавило. Главным было - разобраться.
Комментариев нет:
Отправить комментарий