Как известно, HTTP — широко распространённый протокол клиент-серверной структуры передачи данных, изначально предназначенный для передачи гипертекстовых документов, то есть документов, которые...
Ситуация: база товаров на сайте интернет-магазина ведётся вручную, в том числе актуализация цен. Но со временем база товаров разрослась, и обновление цен «поштучно» через редактирование карточки...
В версии 7.6.0 Amiro.CMS появился новый модуль «SEO шаблоны», предназначенный для создания шаблонов заголовка страницы, ключевых слов, описаний, названий и произвольных текстов для любых...
Весьма распространенная ситуация: интернет-магазин продает товар, цена которого привязана к валюте страны-производителя или к мировой резервной валюте. Конечно, пересчитывать курсовую стоимость...
С 2007 года начали использовать Амиро.CMS под редакцией «Бизнес».Построили интернет-магазин на этой платформе. На данный момент продолжаем пользоваться этой системой и развивать наш...
Я использую Amiro.CMS с 2009 года когда на ней был создан сайт Subaru-m.ru вместо старого пятистраничного морально устаревшего, созданного в 2004 году.Пробовал разные CMS системы естественно все...
Просмотр документов прямо на сайте, используя Google Docs
Модуль «Файловый архив» часто используется для хранения файлов, имеющих «офисное» происхождение: прайс-листов Excel, документов Word и Adobe Acrobat, презентаций PowerPoint. Хотелось бы иметь возможность открывать и просматривать файлы без скачивания на диск и без запуска Word или Excel - прямо в окне сайта.
Замечательно, но наша задача, чтобы файлы можно было просматривать прямо на сайте, сделанном на Amiro.CMS.
Google Docs Viewer имеет «выносной» код, который можно разместить на таком сайте. Выглядит он следующим образом:
Вас уже насторожило обильное количество спецсимволов %3A, %2F, %3D, %26 в ссылке на документ?
Правильно, дело в том, что параметр ##linktag## по умолчанию формирует значение url в виде ftpgetfile.php?id=XXX, где XXX-id документа в модуле «Файловый архив». Следовательно, нам необходимо, чтобы Amiro.CMS формировала url нужным нам образом.
Настройка шаблонов модуля «Файловый архив»
Необходимый нам формат cсылки достигается следующей функцией: ##setvar @ linktag = urlencode(url)##.
Открываем шаблон модуля «Файловый архив» files.tpl, находим группу сетов Item details sets, и модифицируем сеты item_details и item_row;subitem_row;urgent_item_row следующим образом:
Указанная конструкция – с ссылкой «Посмотреть» и div’ом необходима, чтобы окно вьюера открывалось, только когда посетитель сайта кликнет по ссылке «Посмотреть».
Обратите внимание, что загрузка документа происходит только после открытия вьювера по клику, что существенно облегчает загрузку страницы с большим количеством файлов.
Результат будет выглядеть следующим образом:
а по клику – раскрывается окно вьюера:
Использование в произвольных местах (в любом HTML)
Понятно, что указанный код <iframe> можно «внести» в заготовки Менеджера сайта и использовать для файлов, ссылки на скачивание которых устанавливаются через Визуальный редактор «в ручном» режиме, через кнопку «Вставить/изменить гиперссылку».
Пример реализации в менеджере сайта (для статичной страницы:)
Хорошая новость. Теперь нет необходимости переводить в спецсимволы значение параметра ##linktag##. Гугль Вьюер научился понимать «родной» урл вида http://www.site.ru/ftpgetfile.php?id=16.
Т.е. когда id оказывается на выселках (за & от урла Amiro, то Гугль его отрезает как СВОЙ (а не исходного урла) параметр и показывает исходники амировского модуля - код PHP в чистом виде - ха-ха:
(Думаю, Гугль и другие исходники CMS также успешно расшифрует, если ему невначай подсунуть... - я не хотел об этом открыто сообщать)
Как сформирует этот урл Amiro - нет никаких средств воздействия (замены) ##linktag##. По моим беглым наблюдениям параметры module и id возникают в разном порядке, и Гугль когда получает id после своей обрезки, когда нет (если он на выселках). Короче: если id окажется в урле Amiro после & (после module), то Гугль не найдет искомого документа.
Замечательные примеры статьи выше этого не учитывают, как и магическим образом из примеров кода исчезает использование переменной ##linktag##, а на примере "живого" файла example.doc (а не PHP-id-подстановки) - проблем нет - это да.
Я обслуживаю сайт на купленной версии Визитки. Функциональность данной статьи у меня заработала при такой замене в files.tpl:
Одна беда, над которой надо еще подумать - как эту функциональность деактивировать у неподдерживаемых этим Гуглем файлов JPG и XLS - надеюсь, ##alt## мне в помощь. (А потом - допилить в это место показ JPG - уж все-таки.)
Спасибо Форуму, что я нашел там правильные мысли, но тамошние сообщения за годовалой давностью заморожены, и уже не добавить туда вскрытые истины, а новички так и останутся с не совсем корректными ответами.
Дмитрий Евдокимов: Т.е. когда id оказывается на выселках (за & от урла Amiro, то Гугль его отрезает как СВОЙ (а не исходного урла) параметр
Замечание существенное, спасибо - учтем. Замечу только, что по-умолчанию система все же ставит id на первое место и он не теряется. А второй параметр в данном случае является незначительным.
Дмитрий Евдокимов: и показывает исходники амировского модуля - код PHP в чистом виде - ха-ха:
Не хочу Вас расстраивать, но это не исходники PHP . Это HTML страницы с информацией о том, что скрипт возвращающий файл не получил корректные данные. Почему гугл отображает исходный код страницы, вопрос скорее к гуглу.
@Андрей: Замечу только, что по-умолчанию система все же ставит id на первое место
Я в своей системе (версия 5,14,8,20) бился с этим - иногда система ставила иначе, и все рушилось. Закономерностей не выяснял - приделал свой костыль.
А Гугл - Корпорация добра (или зла? - не помню). Но такой функционал (просмотр документов) - да вашей бы системе! А то Яндекс-браузер for iPad не очень дружит с таким вьювером.
Дмитрий Евдокимов: Т.е. когда id оказывается на выселках (за & от урла Amiro, то Гугль его отрезает как СВОЙ (а не исходного урла)
Не уверен, что это так. Надо просто посмотреть логи веб-сервера, чтобы понять, какой же именно документ Google запрашивает.
Даже если и так (в чем я сомневаюсь), зная о такой проблеме, и владея mod_rewrite, можно добиться желаемого, передавая вьюверу удобные ему УРЛы, но делая рерайт на корректный внутренний УРЛ с контентом файла. Как это скажется на индексации таких файлов - не скажу (потому что будут "дубли" файла по стандартному и новому формату).
Дмитрий Юзжалин: Не уверен, что это так. Надо просто посмотреть логи веб-сервера, чтобы понять, какой же именно документ Google запрашивает.
В мобильной версии Google предлагает собственную ссылку скачать то, что ему досталось - там и было продиагностировано, что ему не достается id с номером.
Дмитрий Юзжалин: зная о такой проблеме, и владея mod_rewrite, можно добиться желаемого, передавая вьюверу удобные ему УРЛы, но делая рерайт на корректный внутренний УРЛ с контентом файла.
Я еще с год назад просил Amiro на форуме дать больше управления содержимым ##linktag##, чтобы можно было красиво и единообразно переписать ЧПУ на /files/id, например. И добиваться желаемого с mod_rewrite, вручную парся и переписывая ##linktag## или еще более вручную формируя ссылки для Google, вбивая id ручками - имхо, слишком большой костыль - у меня в Файловом модуле бОльшая часть сайта.
На нашем веб-сайте мы используем файлы cookie для возможности авторизации на сайте, поддержки того или иного функционала для обеспечения корректной работы сайта. Cookie-файлы, которые мы сохраняем через веб-сайт, не содержат данных, на основании которых можно определить вашу личность. Вы можете продолжить пользоваться сайтом или отключить использование файлов cookie в браузере