안타깝게도 2020년인 지금도 인터넷 익스플로러(IE) 호환성을 고려해야하는 상황이 한국에는 있다. 특정 IE 버전으로 호환성 보기를 하기 위해서는 IE 호환성 보기용 meta 태그를 html 페이지에 추가하면 된다[1]. 미디어위키에 meta 태그를 추가하는 방법은 여러가지가 있다 그 중 BeforePageDisplay라는 Hook을 이용하여 페이지의 HTML이 생성될 때 meta 태그를 추가하는 방법이 가장 보편적이다[2]. 하지만 인터넷 익스플로러(IE)의 경우 비표준 meta 태그 형태라서 이 기능을 이용하는 것은 적합하지 않다. 진짜 온갖 방법을 써봤는데 먹히지가 않는다.
아래처럼 IE 호환성 보기용 meta 태그를 넣으면
$out->addMeta( 'http:X-UA-Compatible', 'IE=edge' );
브라우저에서 최종 렌더링된 html 값은 아래처럼 나타나는데 실제로는 최신 버전으로 렌더링하라는 명령인 edge는 동작하지 않는다. 혹시나 싶어서 다른 버전으로는 동작하는지 싶어서 content 값을 바꿔보니 IE7까지는 동작했다.
<meta http-equiv="X-UA-Compatible" content="IE=edge">
그러므로 이곳저곳에서 방법을 찾고 시도해본 결과 잘 되는 것을 찾았다. includes 폴더에 있는 OutputPage.php를 수정하니 제대로 작동하는 것을 확인했다[3].
meta 태그를 OutputPage.php에 추가할 수 있는 위치는 다양하게 있겠지만 나의 경우 title 바로 뒤에 meta 태그를 추가했다. 소스 코드는 다음과 같다[4].
$pieces[] = Html::element('meta', array('http-equiv' => 'X-UA-Compatible' ,'content' => 'IE=edge'))."\n";
참고자료
[1] "X-UA-Compatible, IE=edge, 호환성 보기", 흉내쟁이, webdir.tistory.com/38, 2012-11-26.
[2] "Adding <meta> tag as the first <meta> tag in <head> in all pages", www.mediawiki.org/wiki/Topic:Q8cpt4ilact1oqj2, 2011-10-15.
[3] "Output.php 설명", www.mediawiki.org/wiki/Wikia_code/includes/OutputPage.php, MediaWiki, 2020-09-25.
[4] "IE11 with MW 1.22.0 + WYSIWYG extension: numbered and bulleted list empties document with save", www.mediawiki.org/wiki/Topic:Rl4p2gma1zhozumn, MediaWiki, 2019-03-14.
'CMS(Content Management System) > 미디어위키(MediaWiki)' 카테고리의 다른 글
[미디어위키] 세션 관련 오류 발생시 해결 방법 (0) | 2023.04.16 |
---|---|
[미디어위키] 로그인 상태를 항상 유지하도록 설정하기 (0) | 2023.04.15 |
[미디어위키] 세션 유지 시간 늘리기 (0) | 2023.04.14 |
[미디어위키] 데이터베이스 SQLite 설정 값 예시 (0) | 2023.03.28 |
[미디어위키] 도커 환경에서 설정 파일 복사하는 방법 (0) | 2023.03.27 |
댓글