2017-08-26 14 views
1

現在のメールがここに添付されています。 「売り手のリソースがwww.domain.com/slugに行く」という行を1つ追加したいと思います。このメールにこのテキストを追加するにはどうすればよいですか? (私は0のPHPスキルの横にあるが、勉強しようとしている)。Woocommerceにシンプルテキストを追加するメール

enter image description here

if (! defined('ABSPATH')) { 
    exit; // Exit if accessed directly 
} 

?> 

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

    <p><?php printf(__('Thanks for creating an account on %1$s. Your username is %2$s', 'woocommerce'), esc_html($blogname), '<strong>' . esc_html($user_login) . '</strong>'); ?></p> 

<?php if ('yes' === get_option('woocommerce_registration_generate_password') && $password_generated) : ?> 

    <p><?php printf(__('Your password has been automatically generated: %s', 'woocommerce'), '<strong>' . esc_html($user_pass) . '</strong>'); ?></p> 

<?php endif; ?> 

    <p><?php printf(__('You can access your account area to view your orders and change your password here: %s.', 'woocommerce'), make_clickable(esc_url(wc_get_page_permalink('myaccount')))); ?></p> 

<?php do_action('woocommerce_email_footer', $email); 
+1

? 2つのアクションフック、 'woocommerce_email_header'と' woocommerce_email_footer'があります。 – helgatheviking

+0

「アカウントを作成していただきありがとうございます」行の直後に追加したいと思います。現在の<?php if(文は自分のメッセージを入力します)の形式をコピーすることはできますか? ありがとう! –

答えて

0

あなたがテーマのfunctions.phpまたは理想的にサイト固有のプラグインでこのスニペットを追加してみてください:

function so_45897243_add_text_to_email($email) { 
    if('customer_new_account' == $email->id) { 
     echo "for seller resources go to www.domain.com/slug."; 
    } 
} 
add_action('woocommerce_email_footer', 'so_45897243_add_text_to_email', 5); 

あなたはまたのために

function so_45897243_add_text_to_email_plain($text) { 
    $new = "for seller resources go to www.domain.com/slug."; 
    return $new . "\n\n" . $text; 
} 
add_filter('woocommerce_email_footer_text', 'so_45897243_add_text_to_email_plain'); 

が必要な場合がありますプレーンテキストの電子メールは、現在のところ、limの方法ではないようですそれはに追加される電子メールです。

テーマのemails/customer-new-account.phpテンプレートとemails/plain/customer-new-account.phpテンプレートを上書きできます。その後、テキストを直接追加することができます。私は、テンプレートオーバーライドを最小限に抑えようとしているので、今後のWooCommerceのアップグレードが容易になります。

EDITサンプルオーバーライドテンプレート:あなたの新しいコードを追加したいん

<?php 
/** 
* Customer new account email 
* 
* Save this template in yourtheme/woocommerce/emails/customer-new-account.php. 
* 
* @see   https://docs.woocommerce.com/document/template-structure/ 
* @author  WooThemes 
* @package  WooCommerce/Templates/Emails 
* @version  1.6.4 
*/ 

if (! defined('ABSPATH')) { 
    exit; // Exit if accessed directly 
} 

?> 

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

    <p><?php printf(__('Thanks for creating an account on %1$s. Your username is %2$s', 'your-theme'), esc_html($blogname), '<strong>' . esc_html($user_login) . '</strong>'); ?></p> 

    <p><?php _e('For seller resources go to <a href="http://wwww.domain.com/slug">www.domain.com/slug</a>.', 'your-theme'); ?></p> 

<?php if ('yes' === get_option('woocommerce_registration_generate_password') && $password_generated) : ?> 

    <p><?php printf(__('Your password has been automatically generated: %s', 'your-theme'), '<strong>' . esc_html($user_pass) . '</strong>'); ?></p> 

<?php endif; ?> 

    <p><?php printf(__('You can access your account area to view your orders and change your password here: %s.', 'your-theme'), make_clickable(esc_url(wc_get_page_permalink('myaccount')))); ?></p> 

<?php do_action('woocommerce_email_footer', $email); 
+0

私は基本的に0のPHP知識を持っており、これを一緒にハックしようとしています。あまりにも多くの直接オーバーライド(これは子供のテーマでは機能しますが)。今は、そのcutomer-new-account.phpファイルに余分な行を入力すれば、どうすればよいでしょうか?ありがとう! –

+0

[テンプレートを上書きする](https://docs.woocommerce.com/document/template-structure/)。テーマに関連するテンプレートをコピーしたら、必要な場所にテキストを追加できます。 – helgatheviking

+0

ありがとうございます - 私 –

関連する問題