我使用Gavick的无响应Joomla模板。 对于移动设备,我开始使用Jtouch。 模板中有一个错误,创建了重复的页面。 Html是:
<div id="gkMainbodyWrap">
<div id="gkComponent">
<gavern:desktop>
<div class="item-page">
// here is page code
</gavern:desktop>
<gavern:mobile>
<div class="item-page">
// ... here is the page content again !!! ...
</gavern:mobile>
我试图从模板php文件中找到要删除的内容, 停止这种重复。
以下是php的相关部分:
<div id="gkMainbody" class="gkMain">
<div id="gkMainbodyWrap">
<?php if($this->isFrontpage()) : ?>
<?php if($this->getParam('mainbody_frontpage', 'only_component') == 'only_component') : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php elseif($this->getParam('mainbody_frontpage', 'only_component') == 'mainbody_before_component') : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php else : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php endif; ?>
<?php else : ?>
<?php if($this->getParam('mainbody_subpage', 'only_component') == 'only_component') : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php elseif($this->getParam('mainbody_subpage', 'only_component') == 'mainbody_before_component') : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php else : ?>
<div id="gkComponent">
<jdoc:include type="component" />
</div>
<?php endif; ?>
<?php endif; ?>
</div>
</div>
也许我是白痴,但所有这些如果 - 其他似乎都在做同样的事情。
非常感谢任何有关如何删除创建重复代码的帮助,
帮助陷入困境:)
答案 0 :(得分:0)
你不是一个白痴,而是那个写if
的人......那是另一个故事。
让我为你重写gkMainbodyWrap
:
嗯 ...
<div id="gkMainbody" class="gkMain">
<div id="gkMainbodyWrap">
<div id="gkComponent">
<jdoc:include type="component" />
</div>
</div>
</div>
<gavern:mobile>
和<gavern:desktop>
标签可能是由其模板框架/代码库处理的,可能意味着充当某种类型的切换机制,如基本类型progressive enhancement(又名Adaptive web design)。所以,JTouch可能会干扰Gavick代码。
最后我看起来JTouch是一个移动自适应/反应解决方案而不是responsive,而那些gavern
标签看起来像是在尝试自适应块标记,是否有可能是模板同时没有回应实际上是自适应的吗?