2014-11-06 67 views
0

我想为我的WooCommerce电子邮件模板添加一些静态图标。但是,我正在努力获得正确的代码在模板文件中工作。请注意我不是WordPress的专家,但我知道我的模板文件和语言。将静态图像添加到WooCommerce电子邮件模板

我已将电子邮件模板移至我的主题目录,因此我可以成功覆盖它们。

我一直在使用链接到静态图像的标准WordPress的方式尝试,将在图像的位置,一个主题内是这样的:

<img src="<?php bloginfo('template_url'); ?>/woocommerce/emails/images/my-img.jpg" /> 

...这是行不通的。

我很欣赏WooCommerce这样做的方式可能略有不同。有没有任何WooCommerce专家有任何想法?我甚至想要什么?

下面是自带WooCommerce捆绑为例电子邮件模板:

<?php 
/** 
* Admin new order email 
* 
* @author WooThemes 
* @package WooCommerce/Templates/Emails/HTML 
* @version 2.0.0 
*/ 
if (! defined('ABSPATH')) { 
    exit; // Exit if accessed directly 
} 
?> 

<?php do_action('woocommerce_email_header', $email_heading); ?> 

<p><?php printf(__('You have received an order from %s. Their order is as follows:', 'woocommerce'), $order->billing_first_name . ' ' . $order->billing_last_name); ?></p> 

<?php do_action('woocommerce_email_before_order_table', $order, true, false); ?> 

<h2><a href="<?php echo admin_url('post.php?post=' . $order->id . '&action=edit'); ?>"><?php printf(__('Order #%s', 'woocommerce'), $order->get_order_number()); ?></a> (<?php printf('<time datetime="%s">%s</time>', date_i18n('c', strtotime($order->order_date)), date_i18n(wc_date_format(), strtotime($order->order_date))); ?>)</h2> 

<table cellspacing="0" cellpadding="6" style="width: 100%; border: 1px solid #eee;" border="1" bordercolor="#eee"> 
    <thead> 
     <tr> 
      <th scope="col" style="text-align:left; border: 1px solid #eee;"><?php _e('Product', 'woocommerce'); ?></th> 
      <th scope="col" style="text-align:left; border: 1px solid #eee;"><?php _e('Quantity', 'woocommerce'); ?></th> 
      <th scope="col" style="text-align:left; border: 1px solid #eee;"><?php _e('Price', 'woocommerce'); ?></th> 
     </tr> 
    </thead> 
    <tbody> 
     <?php echo $order->email_order_items_table(false, true); ?> 
    </tbody> 
    <tfoot> 
     <?php 
      if ($totals = $order->get_order_item_totals()) { 
       $i = 0; 
       foreach ($totals as $total) { 
        $i++; 
        ?><tr> 
         <th scope="row" colspan="2" style="text-align:left; border: 1px solid #eee; <?php if ($i == 1) echo 'border-top-width: 4px;'; ?>"><?php echo $total['label']; ?></th> 
         <td style="text-align:left; border: 1px solid #eee; <?php if ($i == 1) echo 'border-top-width: 4px;'; ?>"><?php echo $total['value']; ?></td> 
        </tr><?php 
       } 
      } 
     ?> 
    </tfoot> 
</table> 

<?php do_action('woocommerce_email_after_order_table', $order, true, false); ?> 

<?php do_action('woocommerce_email_order_meta', $order, true, false); ?> 

<h2><?php _e('Customer details', 'woocommerce'); ?></h2> 

<?php if ($order->billing_email) : ?> 
    <p><strong><?php _e('Email:', 'woocommerce'); ?></strong> <?php echo $order->billing_email; ?></p> 
<?php endif; ?> 
<?php if ($order->billing_phone) : ?> 
    <p><strong><?php _e('Tel:', 'woocommerce'); ?></strong> <?php echo $order->billing_phone; ?></p> 
<?php endif; ?> 

<?php wc_get_template('emails/email-addresses.php', array('order' => $order)); ?> 

<?php do_action('woocommerce_email_footer'); ?> 

下面是该模板的链接在GitHub上:https://github.com/woothemes/woocommerce/blob/master/templates/emails/admin-new-order.php

任何帮助,将不胜感激,谢谢!

+0

这是一个孩子的主题? – rnevius 2014-11-06 09:04:36

+0

没有这是主题。 – 2014-11-06 09:30:53

回答

1

试试这个:

<img src="<?php echo get_template_directory_uri(); ?>/woocommerce/emails/images/my-img.jpg" /> 
+0

谢谢!我会尽力让你知道我如何继续。 – 2014-11-06 09:47:57

相关问题