Beginner's Guide for WordPress - Start your WordPress Blog in minutes.
Choosing the Best
WordPress Hosting
How to Easily
Install WordPress
WordPress Plugins
View all Guides

How to Create a Daily and Weekly Email Newsletter in WordPress

Last updated on by
Special WordPress Hosting offer for WPBeginner Readers
How to Create a Daily and Weekly Email Newsletter in WordPress

We are often asked by our users about how to create a daily and weekly email newsletter in WordPress. We use this option in our email sign up form allowing users to choose daily or weekly newsletter. In this article, we will show you how to create a daily and weekly email newsletter in WordPress.

How to create daily and weekly newsletter in WordPress

Why Add Daily or Weekly Email Newsletter Option?

All marketing experts agree that email marketing is crucial for any blog or website. It is cost effective and highly engaging. See our guide on why you should start building your email list right away.

However, not all your users want to get daily email updates. Some of them may prefer to get an email once a week.

Instead of losing subscribers when they get unexpected emails, it is better to offer them a weekly digest option. This allows your users to control how often they want to hear from you and makes them more likely to subscribe.

This is what we are going to build:

List25 Optin

Note: For this tutorial you must sign up with an email marketing service. We are using MailChimp for this tutorial, however the basic concept is same for all email services.

Login to your account and click on the Lists navigation item. You will see a list of your lists. Click on the Groups » View Groups option.

MailChimp View Groups

Since you don’t have any groups yet, you will see a screen like this. You can click to watch the video to learn more about it. To follow this tutorial, you need to click on the Create Groups button.

MailChimp Create Groups Preview

Once you click that button, you will see a screen like this.

MailChimp Create Groups

You have the option to show group options in the signup form. You can choose the options to be checkboxes like our site, radio buttons, drop downs, or don’t show it at all. In our case, checkboxes are the ideal choice. Choose the group title, then add the options you want. Since we are only doing Daily and Weekly newsletter, we will only add these two. Feel free to make it branded like we did on our site, WPB Daily. Save groups and you are done with this part.

Now let’s head over to the forms part in our list. Go back to the Lists page. Click on the Forms link.

MailChimp Forms Link

You will see a page that shows how your signup form looks. There is a builder that you can use to customize the header images and such. We have customized our form, so it looks like this.

MailChimp List25 Form

The only reason why we are checking this is to see that the checkboxes are there. Once that’s done scroll to the top of the page and click on the “For your Website tab” and get Signup Form Embed Code.

MailChimp Signup form Embed Code Link

You will see the option to create form embed code. There are multiple options there, but we will select the Naked Form option. This allows us to easily customize things the way we want.

MailChimp Naked Form Options

Chances are that you don’t want their headings and required field indications in your form. So click the options box and match the settings like our screenshot above. Then click on Create Embed Code. The embed code will be shown on the same page right below the button.

MailChimp Form Embed Code

Copy and paste that code in your theme. The location can be wherever you want to show the opt-in form. In our case it is in the sidebar, so we will paste the code in the sidebar.php file. Once you paste the code, our goal is to strip down all the styling divs. Let’s only keep the basic form fields. Your result should look something like this:

<form action=";id=184bf03dd3" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank">

<input type="email" value="" name="EMAIL" class="required email" id="mce-EMAIL">

<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button" />

<input type="checkbox" checked="checked" value="1" name="group[9][1]" id="mce-group[9]-9-0">

<label for="mce-group[9]-9-0">List25 Daily</label>

<input type="checkbox" checked="checked" value="2" name="group[9][2]" id="mce-group[9]-9-1">

<label for="mce-group[9]-9-1">List25 Weekly</label>


Notice that we have moved the submit button right after the email field. We have also gotten rid of the label for email field, so it just shows as a blank field with no default value text. We also gotten rid of the error fields mainly because a new tab explanation of success works much better. Since our users have no clue what to put in our blank input field which is meant for email, we need to let them know. The best way to do this is by using onblur and onfocus values.

Lets go ahead and replace the email input field to be something like this:

<input type="text" value="Enter your email..." onblur="if (this.value == '') {this.value = 'Enter your email...';}"  onfocus="if (this.value == 'Enter your email...') {this.value = '';}" name="EMAIL" class="required email emailupdatesinput" id="mce-EMAIL" />

What the code will do is it will add the text called “Enter your email…” in the email input field. However, when the user clicks on the field to enter their email, it will automatically go away.

Now that we have taken care of that, lets add some additional classes to our form:

<form action=";id=184bf03dd3" method="post" id="mc-embedded-subscribe-form" name="mc-embedded-subscribe-form" class="validate" target="_blank">

<div class="subscribe">

<input type="text" value="Enter your email..." onblur="if (this.value == '') {this.value = 'Enter your email...';}"  onfocus="if (this.value == 'Enter your email...') {this.value = '';}" name="EMAIL" class="required email emailupdatesinput" id="mce-EMAIL" />

<input type="submit" value="Subscribe" name="subscribe" id="mc-embedded-subscribe" class="button subscribesubmitbutton" />

<div class="clear"></div>

<div class="subscribecheckboxes">

<input type="checkbox" checked="checked" value="1" name="group[9][1]" id="mce-group[9]-9-0">

<label for="mce-group[9]-9-0">List25 Daily</label>

<input type="checkbox" checked="checked" value="2" name="group[9][2]" id="mce-group[9]-9-1" class="secondcheckbox">

<label for="mce-group[9]-9-1">List25 Weekly</label>




Notice that we have added additional divs. We have also added an additional class to the second checkbox input field, and the submit button. Now that we have defined our html elements, lets go ahead and add the styling in the css file (style.css).

.subscribe { width: 296px; height: 38px; border: solid #bbbbbb 1px; margin: 0 0 60px 0;}

.subscribecheckboxes {margin: 20px 0 0 0; font-family: 'ProximaNovaRegular', sans-serif; font-size: 14px; color: #626262;}

.secondcheckbox {margin: 0 0 0 28px;}

.emailupdatesinput { width: 162px; height: 38px; border: none; font-family: Georgia, serif; font-size: 14px; font-style: italic; color: #949494; padding: 0 10px 0 10px; float: left;}

.subscribesubmitbutton { background: #ff370f; height: 40px; border: none; width: 115px; margin: -1px -60px 0 0; float: left; font-family: 'ProximaNovaRegular', sans-serif; font-size: 12px; color: #ffffff; text-transform: uppercase; padding: 0 1px 0 0; cursor: pointer;}

Notice the only reason why we have ProximaNovaRegular is because we are using that font using font-face. You would need to replace that with the font that you are using in your theme.

Once you upload the CSS, your final result would look like this:

List25 Optin

Now that you are done with the styling part, you have to create campaigns in your MailChimp or Aweber dashboard for each specific group. We will be using RSS to Email campaigns (RSS Driven Campaigns). Click on Campaigns menu item, then bring your mouse over on the campaign button. You will see the RSS Driven Campaign option.

MailChimp RSS Driven Campaign

The steps after that are pretty intuitive. You will enter your RSS Feed URL, select the time. Then select the segment of your list and that’s it.

We hope that this article has helped you in understanding not just how to create daily and weekly email newsletters, but how to segment and group your email lists.

Editorial Staff at WPBeginner is a team of WordPress experts led by Syed Balkhi. Page maintained by Syed Balkhi.

WPBeginner's Video Icon
Our HD-Quality tutorial videos for WordPress Beginners will teach you how to use WordPress to create and manage your own website in about an hour. Get started now »


  1. zubair says:

    thanks a lot

  2. Ahmed says:

    Thanks Syed balkhi and his team!!! this is a great tutorial. I was just looking for this for last three days. Finally I got solution from WPBeginner….Long live WPBeginner. I have set it up on my website. I have a little problem, when someone subscribes my blog without checking one of the checkboxes then it does not show error, rather it sends an email to confirm subscription. Where that subscribers will be subscribed which don’t select a group??? Please tell me how can i do that?

  3. Rinkal says:

    Hii its too amazing

  4. Ifemidayo says:

    Incase of blogs that post up to 10-15 times a day and want to add multiple blogpost in a daily round up this doesn’t really work very well. There is no way to add multiple rss items in mailchimp.

    • Donal says:


      You can have multiple RSS itmes or feeds in MailChimp.
      Just duplicate the RSS block and change the parameters to suit your needs.

      I use it to out put the categories separately with no images and only the title showing.

      Check out the RSS feed knowledge base in MailChimp For all of the options.

  5. Kanon says:

    Hi, I am trying to set up weekly and daily emails, but I have a problem.

    I only want certain posts to go to my daily email subscription list and certain other posts to go to my weekly lists. Is there a way to catoragize or choose what posts the rss feed pulls to send out?

  6. charles says:

    I say that your information has been a help to me, however I am a REAL beginner and need to understand how the process works. Are there any videos to guide me at a quicker pace? Please reply and thanks.

  7. Hailey says:

    So, I have run a blog since 2011, but it’s been only with the free wordpress version. Now, as I wish to start anew and make a profit from my work, I’ve been looking into newsletters and if they’re necessary. The conclusion that I have come to is that I want to create a newsletter, but not with RSS- only email. Does Mailchimp offer that option?

  8. Brance Gillihan says:

    Thanks for this tutorial. I’ve used it to set up mailchimp email lists for daily and weekly updates on my blog, but now I’m wondering if there is any research to show when is the best time to schedule these emails to be sent by mailchimp? An optimum time of the day? An optimum day of the week (for the weekly newsletter)? Any suggestions?

  9. Ricky Douglas says:

    Just finished implementing my Daily and Weekly Email Newsletter on my site. Thanks to you guys WPB for the tutorial! Anyone interested in seeing the outcome just click on the picture and then click the link to my site.

    Thanks again guys!

  10. WPBeginner Staff says:

    No they do not.

  11. Rowland says:

    Thanks for this guys – is there perhaps a way to send out an email as soon as their is new content on a RSS feed, rather than at a certain time each day? Thanks again.

  12. WPBeginner Staff says:

    Yes you can but we do not recommend it. See our guide on Why you should never use WordPress to send Newsletter.

    • Mate says:

      MailChimp is awsome except they put their logo everywhere, to the subscription forms, newsletters etc…

  13. Mark says:

    b2evolution can send newsletters without needing awebber or mailchimp. Can I do this in wordpress?

  14. Jens says:

    I love this, but I have one problem. I can’t get it to work with Aweber. I can’t figure out how to pass multiple list names to the URL, I can only get it to work with a drop down-list, where the user only can choose one list to subscribe to..

    Any suggestions on this?

    Thanks for a great writeup!

    // Jens.

  15. Mike says:

    Hey guys – loving your blog! I’m a total newbie to blogging and WP. Just setting my site up and I’m confused as I want to do a weekly blog and then a monthly newsletter. I would like it to be all linked through my Twitter, Linkedin, Facebook, Google+, YouTube accounts and also be free and have some cool features, along with keeping a scaleable subscribe/email list. It seems that none of the plugins for WP, or Feedburner/Mail Chimp/AWeber, etc. are really exactly what I’m looking for – as Mail Chimp I would have to pay monthly for what I want, the WP plugins that I have seen are VERY poorly rated and seemingly unreliable in sending out the blogs, and some issues with Feedburner also according to forums and Google searches. Whew, so much work – this online world! Any help would be GREATLY appreciated from any member or staff. Keep up the great work as I’ve added some other plugins and tips from you guys, love it! Thanks :)

    • WPBeginner Support says:

      Mike, welcome to the WordPress and blogging community. You are right, there are quite a lot of options to manage and run a newsletter. We are doing that for years, so we know how confusing and overwhelming this could be for a new user. Free plugins and tools can help you get started, but they are not a reliable solution, as you must have noticed by the deteriorating ratings and support threads. In most cases your emails end up in spam mail and the users actually never see them. Other Services like Jetpack and Feedburner are blog subscription services, so trying to use them like email newsletter service does not produce the best results. And if you ever want to move away, you will have to get all your users opt-in for the new service again.

      MailChimp is actually free for upto 2000 Subscribers and 12000 emails per month. We believe that once you have at least this many subscribers and emails, then you certainly have the motivation, need, and budget for their paid package which starts as low as $10. You can read our own case study of how we increased our email subscribers by 600%. Building an email list requires little investment, some patience, consistency, and good content but it is truly rewarding and the worth all the effort.

  16. Tracy TC says:

    Such a great post that you almost had me thinking I could do this myself. :D I did successfully create the group in MailChimp, and then realized the rest of the tutorial is more than a little above my current skill level. Can you please shoot me a quote to make the style changes? I left the “naked” form in the sidebar on so you can see it. Many thanks!!

  17. Lee says:

    I see your topic is very good. But as a new person in Mailchimp or Newsletter Subscription. I think you miss something in detail to make it easy for everyone.
    The most important is “How to add 2 feed on each checkbox on form”. I think it’s a main purpose of us.
    And after some investigate, I see you miss the step add a campaign RSS feed for just 1 check box. :).

  18. Lisander says:

    I’ve added the code, but got the rest of my sidebar pushed to the bottom of my blog page. I removed the last and it all got back in place..

    Thanks a lot for this tutorial.

  19. Kathy Henderson-Sturtz says:

    Thank you! Thank you! This article provided “do this, then that” and helpful “why do it” explanations that filled in a couple big “Huh?” that weren’t settling well in my usual geeky-enough mind.

  20. George says:

    Once again Syed Balkhi and company save the day! Seems like each time I need to solve a WP challenge, the answer can be found on WPBeginner. You’re making my Drupal-to-WordPress transition about as smooth as could be. Thanks!

  21. Maria Marsala says:

    I checked out Wysija. It is a free newsletter service that you can create on the back end of WP. It’s not what this article is about.

  22. JBF says:

    This is really helpful! I want to capture sign-ups on the first page of my site. In order to update the CSS, is it necessary to have a pro account? Or is it possible to edit and add the code without a pro account? Thanks!

    • Editorial Staff says:

      PRO account for which service?

      • JBF says:

        Pro account in order to be able to edit the CSS and install the plugin to have Mail Chimp-powered signups. I currently have a free account and I don’t seem to be able to edit the CSS.

        • Editorial Staff says:

          If you are on, then you cannot use this technique. You have to use self-hosted WordPress.

  23. Maria Marsala says:

    Excellent article. Thank you for creating this. It’s on my to do list now, and now I can get it “to done”.


  24. Maggie says:

    Nice post! Just to clarify – if I wanted my visitors to be bale to select topic they’re interested in,
    I should create separate RSS feed for that topic and set up separate campaign for that in Mailchimp. So I would end up with as many campaings and RSS feeds, as many topics tere are, right?

  25. Radha Krishna says:

    That is a very good feature as it gives users an option to receive newsletters at this preferred period. Thanks for the tutorial. I’ll be implementing it on my blog in the next coming days.

  26. Jolene says:

    Thanks for the post! I’ve been wanting to do this but didn’t know how to accomplish it until now. :) A couple of questions: I’m using Genesis Prose theme, and want to put it in sidebars. With Prose, no sidebar.php file (that I’m supposed to edit…) Would I paste this into the custom code php area and then the styling in the css? Or, to get it into the sidebars, would I have to put the html directly into a text widget? No sure where to go from here! :) Thanks, as always!

    • Editorial Staff says:

      You can use the text widget in the Appearance > Widgets area to paste all the code you were going to paste in the sidebar.php file. Then modify the style.css file like normal.

  27. Duncan Dibble says:

    I used to use this method until I discovered Wysija. Newsletter plugin for WP with drag n drop interface.

    Check it out.


  28. Kevin Gilbert says:

    This is a great write-up, as usual. Interestingly enough, I just went through this exact process a couple of weeks ago and thought, I should create a tutorial on that, ’cause there are parts that aren’t entirely obvious. I’ll just point people over here, now. :-)

  29. Pete says:

    One of the important aspects of putting up any sort of newsletter or subscription feature on a website is to ensure the default is to opt-out. It is annoying and unethical to have boxes ticked by default that forces a visitor to opt-out, especially on leaving comments etc.

    • Editorial Staff says:

      Our comments optin box is unchecked for that vary reason. However, for the sidebar items we have them checked. The main reason is because people would just subscribe without checking a single field. This doesn’t help anyone because we don’t send out mass email blasts. So if you uncheck all the boxes and subscribe it is just as good as not subscribing at all. By default MailChimp doesn’t have the option to require at least one of the group option. We can easily be like the other sites and not show these checkboxes at all. Signup everyone for all of those segments… but we believe in transparency. You know exactly what you are subscribing to before you subscribe. You have the option to opt-out before you opt-in.

    • Kevin Gilbert says:

      Pete, I understand the rationale for your comment. However, if you think about it, I’d bet that no one putting their email address in that field and clicking “Subscribe” is doing it on accident. The very nature of typing in your email address, a choice they’ve made, combined with the very nature of clicking the “Subscribe” button, which has a very clear connotation, and also another choice made by the user, is enough to suggest they truly want to “opt-in”. In this case, it seems a better UI for them to know they’re opting in to two lists, based on the boxes being ticked by default. It is pretty obvious to all but the most novice of web surfers what their options are and what they should do to opt-out of one of them.

  30. Tony Milano says:

    Good Stuff,

    I’ve been considering adding another newsletter on my blog. This gave me the nudge I needed.

    Thanks for sharing,

Add a Comment

We're glad you have chosen to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and all links are nofollow. Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.