Интересно почитать… Блог в котором есть много интересной информации…

15 февраля 2012

Чиним ссылку в подтверждающем письме, странности VirtueMart 1.19

Категория: программирование — Метки: — dmitriano @ 14:59

Шаблон подтверждающего письма находится в файле components/com_virtuemart/themes/vm_mynxx/templates/order_emails/confirmation_email.tpl.php, в нем есть вот такой код:

if( VM_REGISTRATION_TYPE != 'NO_REGISTRATION' ) {
    $footer_html .= "<br /><a title=\"".$VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5')."\" href=\"$order_link\">"
    . $VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5')."</a>";
}

строковая константа сидит тут:

./administrator/components/com_virtuemart/languages/common/russian.php: 'PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5' => 'Чтобы просмотреть заказ, проследуйте по ссылке ниже.',

в файле administrator/components/com_virtuemart/virtuemart.cfg.php прописано следующее:

// these path and url definitions here are based on the Joomla! Configuration
define( 'URL', 'http://theshop.ru/' );
define( 'SECUREURL', '/' );

поэтому $order_link начинается со ‘/’. Можно было бы прописать в качестве SECUREURL https://theshop.ru/, но в этом случае корзина будет работать через HTTPS, а если прописать http://theshop.ru/, то будет выкидывать из админки VirtueMart-a на HTTP.

Самый простой способ будет таким:

if( $is_email_to_shopper ) {
    $footer_html = "<br /><br />".$VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER2')."<br />";
        
    if( VM_REGISTRATION_TYPE != 'NO_REGISTRATION' ) {
    $footer_html .= "<br /><a title=\"".$VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5')."\" href=\"http://theshop.ru$order_link\">"
    . $VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5')."</a>";
    }
    $footer_html .= "<br /><br />".$VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER3')."<br />";
    $footer_html .= $VM_LANG->_('CMN_EMAIL').": <a href=\"mailto:" . $from_email."\">".$from_email."</a>";
    // New in version 1.0.5
    if( @VM_ONCHECKOUT_SHOW_LEGALINFO == '1' && !empty( $legal_info_title )) {
        $footer_html .= "<br /><br />____________________________________________<br />";
        $footer_html .= '<h5>'.$legal_info_title.'</h5>';
        $footer_html .= $legal_info_html.'<br />';
    }
} else {
    $footer_html = '<br /><br /><a title="'.$VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5').'" href="'.$order_link.'">'
        . $VM_LANG->_('PHPSHOP_CHECKOUT_EMAIL_SHOPPER_HEADER5').'</a>';
}

Админу приходит ссылка с добавкой pshop_mode=admin.

Ссылки по теме:

  1. Topic: Fix URL in Order Confirmation email  (Read 8004 times)
  2. Topic: view order link is not working in checkout email  (Read 3110 times) 
  3. URL in Virtuemart Order Confirmation Email to Customer – тут сделано ровно то же самое.
Линии 3D/Шарики 3D

Комментариев нет »

No comments yet.

RSS feed for comments on this post. TrackBack URL

Leave a comment

SlogPost.ru