0

私は Magento 1.7 とその新しいコピーで実行しています。

達成したいこと: ウェブサイトのページ読み込み時に、ニュースレター テンプレート ブロックを表示します

{{block type="newsletter/subscribe" template="newsletter/subscribe.phtml"}}

Magento のポップアップ ウィンドウとして 1 回。Cookie は一定期間 (例: 1 週間) 後に期限切れになります。

Web での回答は具体的ではないか、スクリプトに関する私の知識が広くないため、十分に詳細ではありません。

私がこれまでに試したこと:

ライトボックスの追加を試みます:

1) ライトボックスの CSS と JS を追加する

    <script type="text/javascript" src="<?php echo $this->getJsUrl('lightbox/lightbox.js'); ?>"></script>

<link rel="stylesheet" type="text/css" href="<?php echo $this->getJsUrl('lightbox/lightbox.css'); ?>" media="screen"/>

2) view.phtml にリンクを追加しました

<a href="<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('measurement')->toHtml() ?>" rel="lightbox">Size chart</a>

ライトボックスは機能していますが、静的ブロックが呼び出されていません...静的ボックスを呼び出す方法をまだ考えています..

4

1 に答える 1

0

以下の手順を使用して、静的ブロックで構成されるポップアップを正常に呼び出しました。

http://jsfiddle.net/5USUu/

したがって、基本的に次のことを行う必要があります。

  1. .js ファイルと .css ファイルを追加します - カラーボックスを使用しています
  2. 関数を定義する
  3. 関数を呼び出す

1)ヘッダーに次のスクリプトを追加します

<link rel="stylesheet" type="text/css" href="<?php echo $this->getJSUrl('pop/colorbox.css'); ?>" media="screen"/>
<link rel="stylesheet"  type="text/css" href="<?php echo $this->getJSUrl('pop/popup.css'); ?>" />
<script language="javascript" src="<?php echo $this->getJSUrl('pop/colorbox.js'); ?>"></script>

<script>
jQuery(document).ready(function (){
 if (document.cookie.indexOf('visited=true') == -1){
      var fifteenDays = 1000*60*60*24*15; 
      var expires = new Date((new Date()).valueOf() + fifteenDays);
      document.cookie = "visited=true;expires=" + expires.toUTCString(); 
      jQuery.colorbox({width:"580px", inline:true, href:"#subscribe_popup"});
      }
      jQuery(".open_popup").colorbox({width:"580px", inline:true, href:"#subscribe_popup"});
      });
</script>

2)ポップアップにリンクするこのリンクをhtmlに追加します

<a href="#" class="open_popup">Click here to open the popup</a>

3) 静的ブロック識別子を含む html を追加します

<div style='display:none'>
<div id='subscribe_popup' style='padding:10px;'> 
<!-- BEGIN #subs-container --> 
<?php echo $this->getLayout()->createBlock('cms/block')->setBlockId('subscribe')->toHtml() ?>
<div id="subs-container" class="clearfix"> </div>
</div>
</div>
<!-- END subscribe popup--> 
于 2013-05-21T11:45:12.927 に答える