javascript — всплывающее окно новостной рассылки Magento (модальное окно), запускаемое на каждой странице. Должно появиться только на главной странице

У меня была постоянная проблема, когда мое модальное всплывающее окно информационного бюллетеня срабатывает на каждой странице сайта. Это очень навязчиво, и мне бы хотелось, чтобы оно появлялось только при посещении пользователем домашней страницы. Я работаю на EE Magento вер. 1.13.1.0

Код, который я пробовал, приведен ниже и помещен в footer.phtml:

<?php if(Mage::getSingleton('cms/page')->getPageId() == '2' && Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms') : ?>

<div id="newsletter_sign_up" style="display:none;" >

<div style="padding:20px;" >
<form action="<?php echo($this->getUrl('newsletter/subscriber/new')) ?>" method="post" >
<div class="fieldset">

<h1 style="color: #28ced7; text-align: left; font-family: Arial, Helvetica, sans-serif; font-size: 28px;">verbiage goes here</h1>

<h2 class="legend" style="text-align:left; font-family: Arial, Helvetica, sans-serif; font-size: 13px;">verbiage goes here</h2>
<!--end-->
<ul class="form-list">
<li class="fields">
<div class="customer-name">
<div class="field name-firstname">
<label class="required" for="firstname" style="text-align:left;"><em>*</em>First Name</label>
<div class="input-box">
<input type="text" class="input-text required-entry" maxlength="255" title="First Name" value="" name="firstname" id="firstname" autocomplete="off"/>
</div>
</div>
<div class="field name-lastname">
<label class="required" for="lastname" style="text-align:left;"><em>*</em>Last Name</label>
<div class="input-box">
<input type="text" class="input-text required-entry" maxlength="255" title="Last Name" value="" name="lastname" id="lastname" autocomplete="off"/>
</div>
</div>
</div>
</li>
<li>
<label class="required" for="email_address"  style="text-align:left;"><em>*</em>Email Address</label>
<div class="input-box">

<input type="text" class="input-text validate-email required-entry" title="Email Address" value="" id="email_address" name="email" autocomplete="off"/>

<input class="pop_newsletter_source" name="source" type="hidden" value="3" />

</div>
</li>
</ul>
</div>
<div class="buttons-set form-buttons">
<button onclick="pop_newsletter.submit(); return false;" title="Submit" class="button" type="submit" autocomplete="off" style="position: relative; right: 140px;"><span><span>Submit</span></span></button>
</div>
<p class="required">* Required Fields</p>

<h2 style="text-align: left; font-size: 10px;">Email Privacy Statement:</h2>
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 10px; text-align: left;">more verbiage</p>
<!--//end-->
</form>
</div>

</div>

<?php endif; ?>

Я проверил, чтобы убедиться, что идентификатор страницы равен 2.

<?php echo "<pre>"; print_r(Mage::getSingleton('cms/page')->getPageId()); echo "</pre>"; ?>

Кроме того, я нашел этот фрагмент кода здесь в стеке, но безрезультатно, он также не работает правильно.

<?php if(Mage::getSingleton('cms/page')->getIdentifier() == 'home' && Mage::app()->getFrontController()->getRequest()->getRouteName() == 'cms') : ?>

Если мне поможет публикация JS, я тоже так сделаю. Любая помощь будет принята с благодарностью. Спасибо.

1

Решение

Ваш код помещен в верхний или нижний колонтитул и кэшируется на каждой странице?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]