Сен
6
Joomla PDF Дисплей проблема в IE7 Фикс
6 сентября 2008 |
Если вы с помощью Joomla! 1,5 и испытаны на IE7, можно найти PDF проблемой, когда какой-либо PDF файл не может корректно отображать в IE7. Обычный симптом заключается в том, что всплывающее окно остается пустым.
Есть 2 этапа:
1. Creata новый файл с именем browser_detection.php и загрузить его на свой Joomla! сайт.
2. Изменить icon.php в 2 места, а затем загрузите его на свой Joomla! сайт.
ШАГ 1
Создать PHP-файл с именем browser_detection.php. Вы можете это сделать в любом текстовом редакторе или Dreamweaver. Копировать, вставлять и сохранять следующую в свой новый файл:
<? PHP / * Сценарист Имя: Простой 'если' PHP Обозреватель обнаружения Автор: Надежда Харальд, Интернет-сайт: http://TechPatterns.com/ Сценарий Источник URI: http://TechPatterns.com/downloads/php_browser_detection.php Версия 2.0.2 Copyright (C) 29 июня 2007 Модифицированные 22 апреля 2008 года Джон Czerwinski Добавлена версия IE 7 обнаружения Данная программа является свободным программным обеспечением; вы можете распространять его и / или модифицировать его в соответствии с Условия GNU General Public License, опубликованной Free Software Фонд; либо версии 3, либо (по вашему выбору) любой более поздней версии. Эта программа распространяется в надежде, что она будет полезной, но БЕЗ НИКАКИХ ГАРАНТИЙ, даже без подразумеваемых гарантий КОММЕРЧЕСКОЙ ЦЕННОСТИ или ПРИГОДНОСТИ FOR A PARTICULAR PURPOSE. См. GNU General Public License для более подробной информации. Получить полный текст GPL здесь: http://www.gnu.org/licenses/gpl.txt Кодирование конвенций: http://cvs.sourceforge.net/viewcvs.py/phpbb/phpBB2/docs/codingstandards.htm?rev=1.3 * / / * тем имеет важное значение, потому что опера должна проверяться во-первых, и IE4 тестирование на т.е. до общего одинаковым для Konqueror, то Safari, затем геккон, поскольку сафари Навигатор User Agent идентификаторов с "геккон" в строке. отметить, что $ dom_browser установлен для всех современных браузерах дом, это дает вам умолчанию использовать, к сожалению, мы не понял из способов сделать это с фактическим метод тестирования, который будет гораздо лучше и надежными. Обратите внимание: вы должны вызвать функцию, чтобы получить доступ к переменным, вы называете его так: browser_detection ( 'браузер'); Затем вам код, который вы хотите использовать переменные с после этого. * / Функция browser_detection ($ which_test) ( / / Инициализация переменных $ браузер =''; $ dom_browser =''; / / Установлен в нижнем регистре, чтобы избежать ошибок, проверьте, чтобы в случае HTTP_USER_AGENT установлен $ navigator_user_agent = (isset ($ _SERVER [ 'HTTP_USER_AGENT']))? strtolower ($ _SERVER [ 'HTTP_USER_AGENT']):''; / / Запустить через главный браузер возможности, назначить их на главный браузер переменная $ если (stristr ($ navigator_user_agent, "Опера")) ( $ браузер = 'опера'; $ dom_browser = TRUE; ) / * Тест для IE 7 добавил 22 апреля 2008 Джон Czerwinski * / ELSEIF (stristr ($ navigator_user_agent ", MSIE 7")) ( $ браузер = 'msie7'; $ dom_browser = FALSE; ) ELSEIF (stristr ($ navigator_user_agent, "MSIE 4")) ( $ браузер = 'MSIE4'; $ dom_browser = FALSE; ) ELSEIF (stristr ($ navigator_user_agent, "MSIE")) ( $ браузер = 'MSIE'; $ dom_browser = TRUE; ) ELSEIF ((stristr ($ navigator_user_agent, "Konqueror")) | | (stristr ($ navigator_user_agent, "Safari"))) ( $ = браузера "Safari"; $ dom_browser = TRUE; ) ELSEIF (stristr ($ navigator_user_agent, "Gecko")) ( $ браузер = 'Mozilla'; $ dom_browser = TRUE; ) ELSEIF (stristr ($ navigator_user_agent, "Mozilla / 4")) ( $ браузер = 'NS4'; $ dom_browser = FALSE; ) еще ( $ dom_browser = FALSE; $ браузера = FALSE; ) / / Возвращает результат теста вы хотите если ($ which_test == 'браузер') ( вернуть $ браузера; ) ELSEIF ($ which_test == 'дом') ( вернуть $ dom_browser; / / Примечание: $ dom_browser это булево значение, верно / неверно, поэтому вы можете протестировать, если / / Это справедливо или нет. ) ) / * Вы бы назвал его так: $ user_browser = browser_detection ( 'браузер'); если ($ user_browser == 'опера') ( делать что-то; ) или так: если (browser_detection ( 'дом')) ( выполнить код дом браузеры ) еще ( выполнить код, не DOM браузеры ) и так далее ....... * / ?>
Загрузка browser_detection.php к папке библиотеки / Joomla / Utilities / на вашем сайте.
ШАГ 2
Найдите файл icon.php в папке компоненты / com_content / помощники /. Примечание: Сделайте копию этого файла, чтобы вы могли восстановить его, если необходимо.
Под
require_once ( "Библиотеки / Joomla / Utilities / browser_detection.php");
Замените эту строку кода по разделу 58
$ attribs [ 'onclick'] = "window.open (this.href, 'win2','".$ статус ."'); вернуться ложным";
со следующим кодом:
$ user_browser = browser_detection ( 'браузер'); если ($ user_browser == 'msie7') ( $ attribs [ 'целевой'] = '_blank'; () Другое $ attribs [ 'onclick'] = "window.open (this.href, 'win2','".$ статус ."'); вернуться ложной "; )
Сохраните файл и загрузите его на компоненты / com_content / помощники /.
Примечание: Кэш браузера, возможно, необходимо будет очистить, прежде чем вы можете посмотреть PDF работает.
Аналогичные сообщения
- Joomla вручную Включить SEF URL
- Joomla - Ссылка фрагмент статьи Заголовок Вся статья
- Устанавливать и запускать Joomla на Ubuntu
- Joomla Получить пароль администратора
- Сделать Joomla локальный Email работы
- Joomla нагрузок Позиция модуля в рамках Контент
- Правильный способ использования Joomla getNumRows
- Joomla добавления пользовательских групп
- Удалить Mootools С Joomla Header
- Joomla! - Сделать Новости модуль дисплея Дата
- Дорога к использованию Joomla loadAssoc
- Joomla - Использование loadObjectList и foreach получить список
Комментарии
7 Комментариев пока





























Большое спасибо за это. Я надеюсь, что моя проблема решена. Нужно время, чтобы они опробовали ее.
У меня он работает, но несколько вопросов:
1. Мне пришлось положить browser_detection функционировать в рамках icon.php - это не автоматически найти загруженный файл.
2. Фрагмент кода, который заменил "window.open" строки в icon.php тесты для браузера типа "msie7". Эта величина никогда не установленных browser_detection функции. Изменено "msie7" на "MSIE", и все это работало.
Спасибо за большое исправить.
Спасибо! Роб. за большой вклад. :)
Может ли кто-нибудь помочь мне получить эту работу за компонент? Мне нужно PDF кнопки на моем компоненте я написал. Я совершенно новые разработки в Joomla. Ее вполне актуальной. Я пишу портал для местных авиакомпаний ее интеграции в Oracle основано графиков системы.
Прежде всего благодарю вас заранее. Я использую версию Joomla 1.5.8. Кажется, что моя icon.php код не совпадает с Вашей записки о исправить. Возможно ли, что у вас есть лиса на пустую коробку PDF с использованием Joomla 1.5.8?
GRACIAS POR El Trabajo realizado, PERO CREO QUE EN ESTA Адрес этой Más Кларо Y resumido
http://docs.joomla.org/PDF_Display_Fix_in_IE7
Привет, Morreto
Найдите следующую строку в icon.php, он должен быть там, даже если вы используете последнюю версию:
$ attribs [ 'onclick'] = "window.open (this.href, 'win2','".$ статус ."'); вернуться ложным";