国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

Magento模塊示例發(fā)送郵件

joy968 / 3047人閱讀

摘要:今天寫(xiě)一個(gè)模塊,主要的功能是實(shí)現(xiàn)前臺(tái)用戶利用表單給管理員發(fā)送郵件的一個(gè)功能,功能很簡(jiǎn)單,但在這個(gè)模塊中,可以了解到一些有關(guān)的一些細(xì)節(jié),比如,如何獲取系統(tǒng)標(biāo)簽,如何使用默認(rèn)的提示信息,如何使用服務(wù)等等。

今天寫(xiě)一個(gè)magento模塊,主要的功能是實(shí)現(xiàn)前臺(tái)用戶利用表單給管理員發(fā)送郵件的一個(gè)功能,功能很簡(jiǎn)單,但在這個(gè)模塊中,可以了解到一些有關(guān)magento的一些細(xì)節(jié),比如,如何獲取系統(tǒng)標(biāo)簽id,如何使用magento默認(rèn)的提示信息,如何使用smtp服務(wù)等等。
新建模塊Inchoo
目錄結(jié)構(gòu)如下:

Inchoo
 |--_SimpleContact
          |----controllers
                |--IndexController.php
          |----etc
                |--config.xml

首先需要讓magento識(shí)別寫(xiě)的擴(kuò)展:
app/etc/modules/Inchoo_SimpleContact.xml



    
        
            true
            local
        
        

其次再在模塊的配置文件config.xml中添加:



    
        
            0.1.0
        
       
    
        
            
                standard
                
                    Inchoo_SimpleContact
                    simplecontact
                
            
        
        

在控制中IndexController.php代碼如下,在代碼中解釋器含義:

loadLayout();
        //使用mganeto默認(rèn)的提示信息,需要在控制器添加$this->_initLayoutMessages("core/session");
        $this->_initLayoutMessages("core/session");
        //在控制器中創(chuàng)建一個(gè)block
        $block = $this->getLayout()->createBlock(
                "Mage_Core_Block_Template",
                "inchoo.simple_contact",
                array(
                        "template" => "inchoo/simple_contact.phtml"
                )
        );
        $this->getLayout()->getBlock("content")->append($block);
        //$this->getLayout()->getBlock("right")->insert($block, "catalog.compare.sidebar", true);

        $this->_initLayoutMessages("core/session");
        $this->renderLayout();
    }
    //發(fā)送郵件
    public function sendemailAction()
    {
            $params = $this->getRequest()->getParams();
            //print_r($params);
            //這里獲取后臺(tái)設(shè)置的smtp的host和port
            //$my_smtp_host = Mage::getStoreConfig("system/smtp/host");
            //$my_smtp_port = Mage::getStoreConfig("system/smtp/port");
            //以下代碼,需要提前安裝好smtp的一個(gè)擴(kuò)展插件SMTPPro            $general_email=Mage::getStoreConfig("trans_email/ident_general/email");
            $sales_email = Mage::getStoreConfig("trans_email/ident_sales/email");
            $support_email = Mage::getStoreConfig("trans_email/ident_support/email");
            //smtppro
            $smtppro_host = Mage::getStoreConfig("smtppro/general/smtp_host");
            $smtppro_port = Mage::getStoreConfig("smtppro/general/smtp_port");
            $smtppro_username = Mage::getStoreConfig("smtppro/general/smtp_username");
            $smtppro_password = Mage::getStoreConfig("smtppro/general/smtp_password");
            $email=Mage::getStoreConfig("contacts/email/recipient_email");

             $config = array(
                    "port" => $smtppro_port,
                     "auth" => "login",
                     "username" => $smtppro_username,
                     "password" => $smtppro_password
            );
            $transport = new Zend_Mail_Transport_Smtp($smtppro_host, $config);
            Zend_Mail::setDefaultTransport($transport);
            
            $mail =  new Zend_Mail("utf-8");
            print_r($transport);
            //exit();
            $mail->setBodyText($params["comment"]);
//             $mail->setFrom($config["username"]);
//             $mail->addTo($params["email"], $params["name"]);
            $mail->setFrom($params["email"]);
            $mail->setSubject("test");
            $mail->addTo($email);
           
            try {
                $mail->send();
                $this->_redirect("*/*");
                Mage::getSingleton("core/session")->addSuccess("Your request has been sent!");
            }
            catch(Exception $ex) {
                print_r($ex->getMessage());
                Mage::getSingleton("core/session")->addError("Unable to send!");
                $this->_redirect( $this->getBaseUrl());
               
            }
        }
        
}

備注:代碼中提到的SMTP Pro插件,可以在Magento Connect上下載源文件,然后安裝到自己的項(xiàng)目中即可,安裝成功后,可以看到在systerm->Configuration左側(cè)看到ASCHRODER EXTENSIONS/SMTP Pro,點(diǎn)擊看到如下界面:

提示:如果安裝好后,打開(kāi)報(bào)錯(cuò),應(yīng)先清理緩存,然后logout注銷(xiāo),重新登錄后臺(tái)即可。
控制器中有

$my_smtp_host = Mage::getStoreConfig("system/smtp/host");
$my_smtp_port = Mage::getStoreConfig("system/smtp/port");

這里是獲取magento自己的input值,如圖所示:

同理可得port的input值。
前臺(tái)頁(yè)面代碼如下:

路徑如下:
app/design/frontend/rwd/default/template/inchoo/simple_contact.phtml

simple_contact.phtml內(nèi)容如下:

" method="post">

Inchoo_SimpleContact module sample



  •  

* Required Fields

頁(yè)面效果如圖:

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/21343.html

相關(guān)文章

  • 一個(gè)簡(jiǎn)單的Magento1.9模塊示例

    摘要:本次要做的就是,撰寫(xiě)一個(gè)模塊,讓該模塊跑完整個(gè)的流程。創(chuàng)建模型,需要啟用模型,啟用資源模型,在資源模型中添加實(shí)體,再為資源模型設(shè)置讀寫(xiě)適配器。 很多時(shí)候,不知道Magento模塊到底該怎么寫(xiě),比如ThinkPHP,YII框架,它是直接將控制器Controller中的所取得相關(guān)數(shù)據(jù)直接傳遞到視圖層View,而Magento雖然也是MVC三層,但是在中間多了布局對(duì)象Layout與區(qū)塊Blo...

    Pikachu 評(píng)論0 收藏0
  • [譯]Magento2 高級(jí)路由

    摘要:以上是的的目錄路由器配置。考慮重寫(xiě)模塊以上文件文件使用的操作字符串。例如,如果你想回到第一個(gè)模塊在這個(gè)系列和添加前端端點(diǎn),所有你需要做的就是添加以下配置和以下控制器文件。默認(rèn)操作字符串段我們從先進(jìn)的路由移動(dòng)之前,有一些最后要提。 今天,我們要介紹的幾個(gè)Magento的路由系統(tǒng)的高級(jí)功能,并討論一些看似急性銳邊的歷史。雖然所有在這篇文章中提供的技術(shù)可能不是最好的方式來(lái)實(shí)現(xiàn)自己的目標(biāo),作為...

    PumpkinDylan 評(píng)論0 收藏0
  • magento 2模塊開(kāi)發(fā)實(shí)例helloworld模塊

    1、在app/etc/config.php中添加自定義的模塊(magento1聲明模塊是在app/etc/modules): Silk_Helloworld =>1, 值為1,開(kāi)啟模塊,類(lèi)似true,0關(guān)閉模塊2、創(chuàng)建module.xml:app/code/Silk/Helloworld/etc/module.xml 3、創(chuàng)建前段控制器:app/code/Silk/Hellowo...

    DirtyMind 評(píng)論0 收藏0
  • Magento2.x 如何創(chuàng)建一個(gè)Module?

    摘要:今天記錄下如何創(chuàng)建一個(gè),直接進(jìn)入正題。創(chuàng)建好我們的和之后,接下來(lái)就需要?jiǎng)?chuàng)建一系列的文件,我們依次來(lái)說(shuō)每個(gè)文件如何創(chuàng)建。 Magento2.x版本已經(jīng)發(fā)布一段時(shí)間了,到現(xiàn)在為止已經(jīng)到2.2了,最新版本可以關(guān)注Magento在github上的更新。今天記錄下Magento2.1如何創(chuàng)建一個(gè)module,直接進(jìn)入正題。 安裝Magento2后,進(jìn)入項(xiàng)目的根目錄后,進(jìn)入/app目錄,只有app...

    bbbbbb 評(píng)論0 收藏0
  • Magento如何重寫(xiě)控制器?

    摘要:重寫(xiě)控制器重寫(xiě)前端控制器對(duì)于以重寫(xiě)的為例。首先,對(duì)控制器的復(fù)寫(xiě),需要分清是對(duì)還是的復(fù)寫(xiě) Magento重寫(xiě)控制器 重寫(xiě)--前端控制器 對(duì)于以重寫(xiě) Mage_Checkout_CartController的indexAction()為例。找到Mage/Checkout/CartController.php代碼中的indexAction: public function indexActi...

    tracy 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<