2012年5月12日カテゴリー:未分類

EC-CUBE:メルマガのバックナンバーをMYページから閲覧

配信したすべてのメルマガをMYページで表示する。
管理画面上で削除したメルマガは表示されない。

1 メルマガ一覧を表示するかしないかをmtb_constantsテーブルに登録する。
——————————————-
id:MAILMAGA_SHOW
name:on
rank:1249(←適宜)
remarks:メルマガ一覧ページの表示 on/表示する off/表示しない
——————————————-
★システム設定>パラメーター設定を開き、「この内容で登録する」をクリック。

2 ページングに、jQuery Paginateを利用する。
http://th3silverlining.com/2010/04/15/pajination-a-jquery-pagination-plugin/

(1)上記アドレスより、jquery.pajinate.jsをダウンロードし、
■html/js/jquery.pajinateフォルダに置く。

(2)スタイルシートを(1)と同じフォルダに置く。
■html/js/jquery.pajinate/styles.css
[php]
div#paging_container .ellipse{
float: left;
}

div#paging_container .page_navigation {
padding-bottom: 10px;
}

div#paging_container .page_navigation a {
padding:3px 5px;
margin:2px;
color:white;
text-decoration:none;
float: left;
font-family: Tahoma;
font-size: 12px;
background-color:#DB5C04;
}
div#paging_container .active_page{
background-color:white !important;
color:black !important;
}
div.page_navigation {
margin-bottom:30px;
}
div#paging_container ul#title {
clear:both;
}
div#paging_container ul#title li {
background-color:#EFEFEF;
border: 1px solid #CCC;
border-bottom:none;
}
div#paging_container .date {
float:left;
width:20%;
text-align:center;
padding:5px;
border-right:#CCC 1px solid;
}
div#paging_container .backnumber {
float:right;
width:76%;
padding:5px;
}
div#paging_container ul#title .backnumber {
text-align:center;
}
div#paging_container ul.content {
border:#CCC 1px solid;
border-bottom:none;
}
div#paging_container ul.content li {
border-bottom:#CCC 1px solid;
}
[/php]

(3)■data/Smarty/templates/default/site_frame.tpl 追加
[php]

[/php]

2 メルマガ一覧ページとバックナンバープレビューページを新規作成

(1)■html/mypage/mailmaga.php
[php]
init();
$objPage->process();
?>
[/php]

(2)■html/mypage/mailmaga_view.php
[php]
init();
$objPage->process();
?>
[/php]

(3)■data/class_extends/page_extends/mypage/LC_Page_Mypage_Mailmaga_Ex.php
[php]

[/php]

(4)■data/class_extends/page_extends/mypage/LC_Page_Mypage_Mailmaga_view_Ex.php
[php]

[/php]

(5)■data/class/pages/mypage/LC_Page_Mypage_Mailmaga.php
[php]
tpl_subtitle = ‘メルマガ一覧’;
$this->tpl_mypageno = ‘mailmaga’;
$this->tpl_pager = ‘pager.tpl’;
}

/**
* Page のプロセス.
*
* @return void
*/
function process() {
parent::process();
}

/**
* Page のアクション.
*
* @return void
*/
function action() {

//データ取得
$objQuery =SC_Query_Ex::getSingletonInstance();
$this->arrRet = array();

$arrRet = $objQuery->select(“*”, “dtb_send_history”, “del_flg = 0 order by start_date DESC”);

//データベースからデータの取得ができたか
if(isset($arrRet)){
$this->arrRet = $arrRet;
}
}

/**
* デストラクタ.
*
* @return void
*/
function destroy() {
parent::destroy();
}

}
?>
[/php]

(6)■data/class/pages/mypage/LC_Page_Mypage_Mailmaga_view.php
[php]
tpl_subtitle = ‘バックナンバープレビュー’;
$this->tpl_mainpage = ‘mypage/mailmaga_view.tpl’;
}

/**
* Page のプロセス.
*
* @return void
*/
function process() {
$this->action();
$this->sendResponse();
}

/**
* Page のアクション.
*
* @return void
*/
function action() {

$objMailHelper = new SC_Helper_Mail_Ex();

switch ($this->getMode()) {
case ‘template’:
if (SC_Utils_Ex::sfIsInt($_GET[‘template_id’])){
$arrMail = $objMailHelper->sfGetMailmagaTemplate($_GET[‘template_id’]);
$this->mail = $arrMail[0];
}
break;
case ‘history’;
if (SC_Utils_Ex::sfIsInt($_GET[‘send_id’])){
$arrMail = $objMailHelper->sfGetSendHistory($_GET[‘send_id’]);
$this->mail = $arrMail[0];
}
break;
case ‘presend’;
$this->mail[‘body’] = $_POST[‘body’];
default:
}

$this->setTemplate($this->tpl_mainpage);
}

/**
* デストラクタ.
*
* @return void
*/
function destroy() {
parent::destroy();
}
}
?>
[/php]

(7)■data/Smarty/templates/default/mypage/mailmaga.tpl
「ポップアップウィンドウを中央に表示する」を適用している。
https://itoben.com/style/168.html
[php]





  • 配信日
バックナンバー

  • メルマガバックナンバーはありません。

    [/php]

    (8)■data/Smarty/templates/default/mypage/mailmaga_view.tpl
    [php]

    [/php]

    3 ナビメニューに追加する
    ■data/Smarty/templates/default/mypage/navi.tpl 2カ所に追加
    [php]

  • ” class=” selected“>
    メルマガ一覧

  • [/php]

    4 データベースにページを登録

    (1) メルマガ一覧
    ———————————-
    テーブル:dtb_pagelayout
    device_type_id:10
    page_id:30 ←既存page_idの続き
    page_name:MYページ/メルマガ一覧
    url:mypage/mailmaga.php
    filename:mypage/mailmaga
    header_chk:1
    footer_chk:1
    edit_flg:2
    author:NULL
    description:NULL
    keyword:NULL
    update_url:NULL
    create_date:作成日
    update_date:作成日
    ———————————-

    (2) バックナンバープレビュー
    ———————————-
    テーブル:dtb_pagelayout
    device_type_id:10
    page_id:31 ←既存page_idの続き
    page_name:MYページ/バックナンバープレビュー
    url:mypage/mailmaga_view.php
    filename:mypage/mailmaga_view
    header_chk:1
    footer_chk:1
    edit_flg:2
    author:NULL
    description:NULL
    keyword:NULL
    update_url:NULL
    create_date:作成日
    update_date:作成日
    ———————————-

    5 メルマガ一覧ページにブロックを配置