Remove unused emails from Woocommerce settings emails list
up vote
1
down vote
favorite
A few days ago I've asked how I can rename custom email templates in WooCommerce. Now I have the problem that I have some email templates which I don't need and I want to hide these templates completely. How can I do this? I've searched on SO and Google but can't find a tutorial.

php wordpress woocommerce email-notifications
add a comment |
up vote
1
down vote
favorite
A few days ago I've asked how I can rename custom email templates in WooCommerce. Now I have the problem that I have some email templates which I don't need and I want to hide these templates completely. How can I do this? I've searched on SO and Google but can't find a tutorial.

php wordpress woocommerce email-notifications
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
A few days ago I've asked how I can rename custom email templates in WooCommerce. Now I have the problem that I have some email templates which I don't need and I want to hide these templates completely. How can I do this? I've searched on SO and Google but can't find a tutorial.

php wordpress woocommerce email-notifications
A few days ago I've asked how I can rename custom email templates in WooCommerce. Now I have the problem that I have some email templates which I don't need and I want to hide these templates completely. How can I do this? I've searched on SO and Google but can't find a tutorial.

php wordpress woocommerce email-notifications
php wordpress woocommerce email-notifications
edited Nov 9 at 21:59
LoicTheAztec
79.6k125992
79.6k125992
asked Nov 9 at 20:24
Mr. Jo
18019
18019
add a comment |
add a comment |
2 Answers
2
active
oldest
votes
up vote
1
down vote
Update: The right solution is using woocommerce_email_classes filter hook locate in WC_Emails Class:
add_filter( 'woocommerce_email_classes', 'remove_specific_email_classes', 10, 1 );
function remove_specific_email_classes( $emails )
unset($emails['WC_Email_New_Order']);
unset($emails['WC_Email_Cancelled_Order']);
unset($emails['WC_Email_Failed_Order']);
unset($emails['WC_Email_Customer_On_Hold_Order']);
unset($emails['WC_Email_Customer_Processing_Order']);
unset($emails['WC_Email_Customer_Completed_Order']);
unset($emails['WC_Email_Customer_Refunded_Order']);
unset($emails['WC_Email_Customer_Invoice']);
unset($emails['WC_Email_Customer_Note']);
unset($emails['WC_Email_Customer_Reset_Password']);
unset($emails['WC_Email_Customer_New_Account']);
return $emails;
Code goes in function.php file of your active child theme (active theme). Tested and works.
The following official Woocommerce documented hooked function will remove notifications action hooks:
add_action( 'woocommerce_email', 'unhook_those_pesky_emails' );
function unhook_those_pesky_emails( $email_class )
//Hooks for sending emails during store events
remove_action( 'woocommerce_low_stock_notification', array( $email_class, 'low_stock' ) );
remove_action( 'woocommerce_no_stock_notification', array( $email_class, 'no_stock' ) );
remove_action( 'woocommerce_product_on_backorder_notification', array( $email_class, 'backorder' ) );
// New order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
// Processing order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Completed order emails
remove_action( 'woocommerce_order_status_completed_notification', array( $email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger' ) );
// Note emails
remove_action( 'woocommerce_new_customer_note_notification', array( $email_class->emails['WC_Email_Customer_Note'], 'trigger' ) );
Code goes in function.php file of your active child theme (active theme). Tested and works.
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
add a comment |
up vote
0
down vote
This is my solution. I'm not sure whats better?
add_filter( 'woocommerce_email_classes', 'remove_unused_emails', 15 );
function remove_unused_emails( $email_classes )
//Unset unused email templates
unset( $email_classes['WC_Email_Customer_Reset_Password'] );
unset( $email_classes['WC_Email_Customer_New_Account'] );
unset( $email_classes['WC_Email_Customer_On_Hold_Order'] );
unset( $email_classes['WC_GZD_Email_Customer_New_Account_Activation'] );
unset( $email_classes['WC_GZD_Email_Customer_Revocation'] );
unset( $email_classes['WC_GZD_Email_Customer_Ekomi'] );
unset( $email_classes['WC_GZD_Email_Customer_Trusted_Shops'] );
return $email_classes;
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
add a comment |
2 Answers
2
active
oldest
votes
2 Answers
2
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
1
down vote
Update: The right solution is using woocommerce_email_classes filter hook locate in WC_Emails Class:
add_filter( 'woocommerce_email_classes', 'remove_specific_email_classes', 10, 1 );
function remove_specific_email_classes( $emails )
unset($emails['WC_Email_New_Order']);
unset($emails['WC_Email_Cancelled_Order']);
unset($emails['WC_Email_Failed_Order']);
unset($emails['WC_Email_Customer_On_Hold_Order']);
unset($emails['WC_Email_Customer_Processing_Order']);
unset($emails['WC_Email_Customer_Completed_Order']);
unset($emails['WC_Email_Customer_Refunded_Order']);
unset($emails['WC_Email_Customer_Invoice']);
unset($emails['WC_Email_Customer_Note']);
unset($emails['WC_Email_Customer_Reset_Password']);
unset($emails['WC_Email_Customer_New_Account']);
return $emails;
Code goes in function.php file of your active child theme (active theme). Tested and works.
The following official Woocommerce documented hooked function will remove notifications action hooks:
add_action( 'woocommerce_email', 'unhook_those_pesky_emails' );
function unhook_those_pesky_emails( $email_class )
//Hooks for sending emails during store events
remove_action( 'woocommerce_low_stock_notification', array( $email_class, 'low_stock' ) );
remove_action( 'woocommerce_no_stock_notification', array( $email_class, 'no_stock' ) );
remove_action( 'woocommerce_product_on_backorder_notification', array( $email_class, 'backorder' ) );
// New order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
// Processing order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Completed order emails
remove_action( 'woocommerce_order_status_completed_notification', array( $email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger' ) );
// Note emails
remove_action( 'woocommerce_new_customer_note_notification', array( $email_class->emails['WC_Email_Customer_Note'], 'trigger' ) );
Code goes in function.php file of your active child theme (active theme). Tested and works.
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
add a comment |
up vote
1
down vote
Update: The right solution is using woocommerce_email_classes filter hook locate in WC_Emails Class:
add_filter( 'woocommerce_email_classes', 'remove_specific_email_classes', 10, 1 );
function remove_specific_email_classes( $emails )
unset($emails['WC_Email_New_Order']);
unset($emails['WC_Email_Cancelled_Order']);
unset($emails['WC_Email_Failed_Order']);
unset($emails['WC_Email_Customer_On_Hold_Order']);
unset($emails['WC_Email_Customer_Processing_Order']);
unset($emails['WC_Email_Customer_Completed_Order']);
unset($emails['WC_Email_Customer_Refunded_Order']);
unset($emails['WC_Email_Customer_Invoice']);
unset($emails['WC_Email_Customer_Note']);
unset($emails['WC_Email_Customer_Reset_Password']);
unset($emails['WC_Email_Customer_New_Account']);
return $emails;
Code goes in function.php file of your active child theme (active theme). Tested and works.
The following official Woocommerce documented hooked function will remove notifications action hooks:
add_action( 'woocommerce_email', 'unhook_those_pesky_emails' );
function unhook_those_pesky_emails( $email_class )
//Hooks for sending emails during store events
remove_action( 'woocommerce_low_stock_notification', array( $email_class, 'low_stock' ) );
remove_action( 'woocommerce_no_stock_notification', array( $email_class, 'no_stock' ) );
remove_action( 'woocommerce_product_on_backorder_notification', array( $email_class, 'backorder' ) );
// New order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
// Processing order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Completed order emails
remove_action( 'woocommerce_order_status_completed_notification', array( $email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger' ) );
// Note emails
remove_action( 'woocommerce_new_customer_note_notification', array( $email_class->emails['WC_Email_Customer_Note'], 'trigger' ) );
Code goes in function.php file of your active child theme (active theme). Tested and works.
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
add a comment |
up vote
1
down vote
up vote
1
down vote
Update: The right solution is using woocommerce_email_classes filter hook locate in WC_Emails Class:
add_filter( 'woocommerce_email_classes', 'remove_specific_email_classes', 10, 1 );
function remove_specific_email_classes( $emails )
unset($emails['WC_Email_New_Order']);
unset($emails['WC_Email_Cancelled_Order']);
unset($emails['WC_Email_Failed_Order']);
unset($emails['WC_Email_Customer_On_Hold_Order']);
unset($emails['WC_Email_Customer_Processing_Order']);
unset($emails['WC_Email_Customer_Completed_Order']);
unset($emails['WC_Email_Customer_Refunded_Order']);
unset($emails['WC_Email_Customer_Invoice']);
unset($emails['WC_Email_Customer_Note']);
unset($emails['WC_Email_Customer_Reset_Password']);
unset($emails['WC_Email_Customer_New_Account']);
return $emails;
Code goes in function.php file of your active child theme (active theme). Tested and works.
The following official Woocommerce documented hooked function will remove notifications action hooks:
add_action( 'woocommerce_email', 'unhook_those_pesky_emails' );
function unhook_those_pesky_emails( $email_class )
//Hooks for sending emails during store events
remove_action( 'woocommerce_low_stock_notification', array( $email_class, 'low_stock' ) );
remove_action( 'woocommerce_no_stock_notification', array( $email_class, 'no_stock' ) );
remove_action( 'woocommerce_product_on_backorder_notification', array( $email_class, 'backorder' ) );
// New order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
// Processing order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Completed order emails
remove_action( 'woocommerce_order_status_completed_notification', array( $email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger' ) );
// Note emails
remove_action( 'woocommerce_new_customer_note_notification', array( $email_class->emails['WC_Email_Customer_Note'], 'trigger' ) );
Code goes in function.php file of your active child theme (active theme). Tested and works.
Update: The right solution is using woocommerce_email_classes filter hook locate in WC_Emails Class:
add_filter( 'woocommerce_email_classes', 'remove_specific_email_classes', 10, 1 );
function remove_specific_email_classes( $emails )
unset($emails['WC_Email_New_Order']);
unset($emails['WC_Email_Cancelled_Order']);
unset($emails['WC_Email_Failed_Order']);
unset($emails['WC_Email_Customer_On_Hold_Order']);
unset($emails['WC_Email_Customer_Processing_Order']);
unset($emails['WC_Email_Customer_Completed_Order']);
unset($emails['WC_Email_Customer_Refunded_Order']);
unset($emails['WC_Email_Customer_Invoice']);
unset($emails['WC_Email_Customer_Note']);
unset($emails['WC_Email_Customer_Reset_Password']);
unset($emails['WC_Email_Customer_New_Account']);
return $emails;
Code goes in function.php file of your active child theme (active theme). Tested and works.
The following official Woocommerce documented hooked function will remove notifications action hooks:
add_action( 'woocommerce_email', 'unhook_those_pesky_emails' );
function unhook_those_pesky_emails( $email_class )
//Hooks for sending emails during store events
remove_action( 'woocommerce_low_stock_notification', array( $email_class, 'low_stock' ) );
remove_action( 'woocommerce_no_stock_notification', array( $email_class, 'no_stock' ) );
remove_action( 'woocommerce_product_on_backorder_notification', array( $email_class, 'backorder' ) );
// New order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_processing_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_completed_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_failed_to_on-hold_notification', array( $email_class->emails['WC_Email_New_Order'], 'trigger' ) );
// Processing order emails
remove_action( 'woocommerce_order_status_pending_to_processing_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
remove_action( 'woocommerce_order_status_pending_to_on-hold_notification', array( $email_class->emails['WC_Email_Customer_Processing_Order'], 'trigger' ) );
// Completed order emails
remove_action( 'woocommerce_order_status_completed_notification', array( $email_class->emails['WC_Email_Customer_Completed_Order'], 'trigger' ) );
// Note emails
remove_action( 'woocommerce_new_customer_note_notification', array( $email_class->emails['WC_Email_Customer_Note'], 'trigger' ) );
Code goes in function.php file of your active child theme (active theme). Tested and works.
edited Nov 9 at 21:13
answered Nov 9 at 20:48
LoicTheAztec
79.6k125992
79.6k125992
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
add a comment |
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
I've added a solution too. Which solution will be the better one?
– Mr. Jo
Nov 9 at 21:01
add a comment |
up vote
0
down vote
This is my solution. I'm not sure whats better?
add_filter( 'woocommerce_email_classes', 'remove_unused_emails', 15 );
function remove_unused_emails( $email_classes )
//Unset unused email templates
unset( $email_classes['WC_Email_Customer_Reset_Password'] );
unset( $email_classes['WC_Email_Customer_New_Account'] );
unset( $email_classes['WC_Email_Customer_On_Hold_Order'] );
unset( $email_classes['WC_GZD_Email_Customer_New_Account_Activation'] );
unset( $email_classes['WC_GZD_Email_Customer_Revocation'] );
unset( $email_classes['WC_GZD_Email_Customer_Ekomi'] );
unset( $email_classes['WC_GZD_Email_Customer_Trusted_Shops'] );
return $email_classes;
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
add a comment |
up vote
0
down vote
This is my solution. I'm not sure whats better?
add_filter( 'woocommerce_email_classes', 'remove_unused_emails', 15 );
function remove_unused_emails( $email_classes )
//Unset unused email templates
unset( $email_classes['WC_Email_Customer_Reset_Password'] );
unset( $email_classes['WC_Email_Customer_New_Account'] );
unset( $email_classes['WC_Email_Customer_On_Hold_Order'] );
unset( $email_classes['WC_GZD_Email_Customer_New_Account_Activation'] );
unset( $email_classes['WC_GZD_Email_Customer_Revocation'] );
unset( $email_classes['WC_GZD_Email_Customer_Ekomi'] );
unset( $email_classes['WC_GZD_Email_Customer_Trusted_Shops'] );
return $email_classes;
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
add a comment |
up vote
0
down vote
up vote
0
down vote
This is my solution. I'm not sure whats better?
add_filter( 'woocommerce_email_classes', 'remove_unused_emails', 15 );
function remove_unused_emails( $email_classes )
//Unset unused email templates
unset( $email_classes['WC_Email_Customer_Reset_Password'] );
unset( $email_classes['WC_Email_Customer_New_Account'] );
unset( $email_classes['WC_Email_Customer_On_Hold_Order'] );
unset( $email_classes['WC_GZD_Email_Customer_New_Account_Activation'] );
unset( $email_classes['WC_GZD_Email_Customer_Revocation'] );
unset( $email_classes['WC_GZD_Email_Customer_Ekomi'] );
unset( $email_classes['WC_GZD_Email_Customer_Trusted_Shops'] );
return $email_classes;
This is my solution. I'm not sure whats better?
add_filter( 'woocommerce_email_classes', 'remove_unused_emails', 15 );
function remove_unused_emails( $email_classes )
//Unset unused email templates
unset( $email_classes['WC_Email_Customer_Reset_Password'] );
unset( $email_classes['WC_Email_Customer_New_Account'] );
unset( $email_classes['WC_Email_Customer_On_Hold_Order'] );
unset( $email_classes['WC_GZD_Email_Customer_New_Account_Activation'] );
unset( $email_classes['WC_GZD_Email_Customer_Revocation'] );
unset( $email_classes['WC_GZD_Email_Customer_Ekomi'] );
unset( $email_classes['WC_GZD_Email_Customer_Trusted_Shops'] );
return $email_classes;
answered Nov 9 at 20:55
Mr. Jo
18019
18019
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
add a comment |
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
Yes I just find this also… It is the solution, to remove emails…
– LoicTheAztec
Nov 9 at 21:10
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
@LoicTheAztec so not good?
– Mr. Jo
Nov 9 at 21:11
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
I have updated my answer with the same hook…
– LoicTheAztec
Nov 9 at 21:14
add a comment |
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53232816%2fremove-unused-emails-from-woocommerce-settings-emails-list%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown