一部のサイトでは、ユーザーエージェントに基づいて、含める実際のテンプレートを決定する「フロント」テンプレートを作成するアプローチを使用しました。
もちろん、このアプローチでは、2つの別個のテンプレートを作成する必要があります。1つはサイトのフルデスクトップバージョン用で、もう1つはモバイルバージョン用です。もちろん、css、画像、JavaScriptをそれらの間で共有することもできます。
最近はゼロから始めて、レスポンシブデザインでjthemansの答えを探します。
しかし、大きな予算がなく、解決策をすばやく考え出す必要がある場合は、distinct-template-approachの方が速くなります。
とにかく、ここに私が言及した単純な「フロント」テンプレートがあります:
<%@ page session="false" %>
<%@ taglib prefix="cms" uri="http://www.opencms.org/taglib/cms" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<c:choose>
<c:when test="${ fn:contains(header['User-Agent'], 'Android') or
fn:contains(header['User-Agent'], 'iPhone') or
fn:contains(header['User-Agent'], 'iPod')
}">
<cms:include page="/templateMobile.jsp" />
</c:when>
<c:otherwise>
<cms:include page="/templateFull.jsp" />
</c:otherwise>
</c:choose>