I had some issues figuring this out when I did it, so I figured I’d post a blog about it…
Which I wiped out by accident with a backup restore. LOL
So I’m reposting it! Note, I do have a tl;dr summary further down if you don’t want the editorializing. LOL
ARMember is a great WordPress plug-in for membership/subscription site management, content sales, and other things. Excellent price point, and good support response. But if you don’t have a lot of experience installing and running this kind of software, it can be…tricky. So for any authors or creators wanting to add ARMember to their WordPress (self-hosted) site, here’s how you can offer a la carte page/post sales (as opposed to a subscription tier, although you can offer this as subscription content, too).
First of all make sure that the paid post/page add-on is activated (I had already done that).
The documentation on their website is either out of date or incomplete because one key thing, about sticking a certain short-code in the Alternative Text box, is only noted in a pop-up comment on one of the label fields, on the General settings →Paid Post Settings Paid Post URL Parameter name field.
On that page, make sure to add the Buy Now shortcode to the Alternative Text box or nothing works and you’ll waste all those chickens you tried to sacrifice to make it work. LOL (Now that I know how it works, it makes sense, but dang that was frustrating trying to figure it out.)
If that shortcode isn’t in the Alternative Text box (either here by default and it populates on the paid page/post, or you manually input it in the meta box on the paid post/page) then the Buy Now link/button won’t show up on your content. If you add it in the General Settings → Paid Post Settings page, it should show up in the Alternative Text box by default on the paid post/page when you create it. (You can either set default text here, or change that text on a per post/page basis, but the default will show up there. We’ll get to that in a minute.)
The default Paid post page generated by the system is basically blank. This is the page where your user will be taken to when they click the buy now link/button on the paid post/page content. To make this work, you have to use the Configure Plan & Signup Page menu, create a new setup there, tick Paid Post Setup, and either build a new form or use one of the existing ones you have. Might want to create a default form for processing paid posts/pages. You can make new forms inherit the properties of existing forms. Name the setup something that will tell you what it does, don’t forget to tick the button to allow coupons if you use them, save it, and it generates a shortcode. Paste THAT shortcode into the content area on your “Paid” page that you designated in the General Settings → Page Setup → Paid Post Page. If you try to add that page in the Page Setup stage and it gives you a red error message under the field, that probably means you didn’t set up the shortcode for the form and/or you didn’t add that shortcode to the Paid page. (No shortcode, no way to checkout.)
NOTE: You can use the same signup form you just created for multiple paid posts/pages. They can all be the same one, but that shortcode, or one like it, must be on the Paid page or it won’t work right.
I renamed my Paid page to “Buy Content a la Carte”. You can put other text on that page, too. Again, that’s the page that serves up the Buy Now form that appears in the body of the paid post/page content you want your customer to buy.
There are two ways to assign a page or post to being a paid page or post.
First way: creating a paid post/page from scratch.
Create your paid post/page content. Use the ARMember Paid Post Settings meta box controls on the paid page/post itself to trip the switch that it is free or if paid, the cost, and tweak the alternate text if necessary.
If you want to customize the look of the link, or use a button instead, or need to override the default urls where the paid form/return to content urls are, use the Membership Shortcodes button/menu on the post’s menu bar (I’m using Classic Editor on WP) and then the Action Buttons tab, and from the drop-down select Action Type, Paid Post Buy Now button, set it up, and then hit the Add Shortcode button at the bottom of that menu.
That will add a shortcode to the content of your paid page/post. And you can leave the url fields blank in this step as long as you already have your Paid Post page set up and designated in General Settings → Page Setup → Paid Post Page. (Or if for some reason you need to reference them somewhere else, you can do that, too.)
But, if you generate a custom link/button, take THAT shortcode and use cut/paste to replace the default shortcode in the Alternate Text box in the ARMember Paid Post Settings meta box.
As long as you left both fields in that process blank, it will default to the Paid page with your short-coded signup/purchase form, and then dump the reader back into the paid page/post they just purchased once the payment goes through.
NOTE: If you leave that custom shortcode in the body of the content of the post/page, instead of cutting/pasting it into the Alternate Text box, if there’s ever a time in the future when you remove that post/page from being a paid post/page, that button or link will still show up, but since it won’t be associated with a price, etc. it’ll dump into the Paid page but there’s no money, just payment settings, and it gets confusing.
Don’t set your paid post/page to any access restrictions for tier, unless you want to exclude/force tiers to buy it, and then save the post. If you want the paid post/page to be applied to a specific plan (to be included free as part of their content) you can go into Manage Plans, pick the plan to edit, scroll down toward the bottom of that form, and add the paid post to the plan, save, close, flush the server cache. (There’s probably a joke in there I’m too tired to make right now.) If you don’t want the paid post/page added to any plans, then skip that part because they have to buy it anyway. But if you set access restrictions on the page, make sure THAT tier has access to the paid post/page, even if it’s included in their plan, or they can’t access it to purchase it.
You can see what paid posts/pages are recognized by the system in the Manage Paid Posts menu. If you completed all the steps, the system should have automagically populated your paid posts/pages into this list. If you don’t see them there, you can add them manually…
Second way to create a paid post/page:
NOTE: If you’ve already created your paid page/post and want to change it to being a paid post/page, you can do that here. Click the Add Paid Post button. Select the content type, find it in the drop-down, create your settings. Tick the Alternative Text switch if you want something other than the default to show up there. Save it. Verify the paid post/page shows up on the frontend the way you want.
HOWEVER, if you go and edit any post/page once you’ve assigned it to be a paid post/page, make sure when you save it that it’s still showing up in the Manage Paid Posts list. Depending on how you designated it to be a paid post/page, sometimes modifying it will unset the paid post/page setting and kick it off the list and you have to go into the post/page and reset it.
If you want to change a paid post/page so it’s not “charged” and just a regular post/page, then you can go into Manage Paid Posts and delete it from that list. That doesn’t delete the actual post/page–it just deletes it from being a paid post/page.
Now that I’ve figured that all out, it’s working, although there’s a caching issue of some sort. If I make the test page and hit it before I’ve added it as being included on a membership plan, despite flushing the site cache and clearing my browser history, it wants to force the person to purchase it. If I don’t hit the link after I create it until after I’ve applied it to a membership plan, then it shows up as automagically included for the member when they visit the page.
Phew. That was as frustrating to figure out as this likely is to read. LOL (If their documentation had been clearer it wouldn’t have been frustrating.) I mean the caching thing is a separate issue but I’ll need to play with that more to figure out if there’s a different workaround I’m missing.
So now I know how to make a la carte pages, include them with memberships, and set up the alternate text that appears so it all ties together. And how to diagnose it if for some reason a member can’t access the content for free if it’s included. (And you can manually go in and override it and add the paid post/page to a member’s account, too, but that gets unwieldy if you have too many members to do that with.)
To summarize the ARMember Paid Post/Page process:
- In the “Configure Plan + Setup Page” menu, create a new setup form for a Paid Post setup type. Save it. That gives you a shortcode.
- Make sure to copy and paste that shortcode into the content area of the default “Paid” page. Save it. (Note your ARMember access controls for member levels to make sure people can purchase it.)
- Make sure that “Paid” page is properly referenced in General Settings → Page Setup → Paid Post Page. Save it. (Red error message means it doesn’t see a setup shortcode from the first step in the content area of that page, so go back and do that.)
- Under General Settings → Paid Post Settings, add the shortcode Buy Now to the Default Alternate Content window and save it. You can add extra text there, if you want. Like, “Subscribe to a plan or buy this content a la carte” or even style it as a button. But that shortcode has to be there. Save it.
- Create your paid post/page content.
- While creating your paid post/page content, enable the controls in the ARMember Paid Post Settings meta window (if you’re in WP Classic editor; it looks different in block mode) to set the post/page to free or paid, how much, etc. If you don’t want to change the default Buy Now link served up by the default shortcode, then skip the next step.
- Use the Membership Shortcodes drop-down menu at the top of the text window (by the WP content formatting menu) to select Membership Shortcodes → Action Buttons → Paid Post Buy Now button. You can leave the URLs blank as long as you set up the earlier stages correctly and don’t need to override them. Format it (button/link, etc) and click Add Shortcut. In the ARMember Paid Post Settings meta window, tick the Alternative Content control switch in the meta window. Copy and cut the custom shortcode from the content window and paste it into the Alternative Text box to take the place of the default shortcode that is served up.
- Make sure the ARMember Access Rules meta box access level settings are set how you want them, then save the post/page.
- ALTERNATELY: If you’ve already created the post/page asset that you want to set to be paid, you can go into the Managed Page Posts menu, click Add Paid Post, and then use the controls there to find it and apply paid post/page settings to it.
- Test it.
- If you have a paid post/page asset you no longer want to be a paid post/page, go into the Managed Page Posts menu and delete it. (It does not delete the actual post/page, it only removes it from being a paid post/page.)