Perfecting the Syndicated Blog Sign-Up

It’s hard to believe that Camp Magic MacGuffin finished weeks ago, and in another five days (yikes!), a new session of ds106 starts up here at UMW.

Alan and I ended up really tearing our hair out for the first few weeks of CMM trying to get everyone signed up with their blogs in FeedWordPress and tagged appropriately (in the CMM case, tags were used primarily for the bunk houses students were assigned to).

Going into the fall semester, I really wanted to clean-up this process. 

To review, here’s how things more-or-less have worked in the past:

  1. New DS106 participant/student goes to http://ds106.us and clicks the “Register” link. This takes them to a form that they fill out with information about who they are, what user id they want, what password they want, their institutional affiliation, and the URL of their blog.
  2. Using BuddyPress, when they submit the form, a user account is automatically created for them.
  3. One of the ds106 admins (Alan, Jim, or me) then goes and hunts down their new User Profile and copies and pastes their blog URL into FWP.
  4. We then try to discover the feed in FeedWordPress.
  5. Then we have to assign the appropriate tag to the feed (so that incoming posts have a tag added to them that we can use to organize content)
  6. And, finally, we have to ensure that posts from that feed are assigned to the new user account. This last step is the trickiest for me. FeedWordPress allows you to create author maps for posts in a feed, but we have so many users in ds106 that the list is kind of crazy to work with — especially if you’re not sure how the user’s name is displayed in the list. And, if the feed has already been updated at least once, a new user has already been created and assigned to the feed’s posts. Cleaning this up is a BIG headache.

Invariably, I always screw pieces of this process up (Jim and Alan are better at it 🙂  ) So, really, the work I’ve been doing for the last couple of weeks on this has been mostly to make my life easier!

Here’s how the new system works:

First, it requires a Premium plugin, Gravity Forms, which we use extensively at UMW. I cannot sing this plugin’s praises enough! Not only is it a robust form creator, in and of itself, it’s got some slick add-ons and tons of hooks and filters to do custom development on top of it. I love me some GF! There are a couple of “levels” for purchasing, but I think it’s well worth the money, especially for an institution.

Second, we’re using one of those slick add-ons for GF which allows a form to be used to create user accounts. (The add-on is free).

Now, we do user registration currently on ds106 using BuddyPress. And I have no doubt that someone could probably do what I’ve done using that registration system, instead. But I’m NOT a BuddyPress expert, and I do have a bit of experience with Gravity Forms. So, I chose the poison I knew.

The new user registration consists of two forms:

  1. Form #1: This is the basic user registration form. You choose a userid & password. Then you provide your name, email, institutional affiliation, blog address, and Twitter handle. As soon as this form is submitted a new user is created, using this information. In addition, I incorporated a custom function that Alan wrote to discover RSS feeds associated with the blog url.When the form is submitted, a custom function is called that runs Alan’s code. Currently, we’re grabbing just the first RSS feed discovered. This is then passed as a variable, along with the userid and institutional affiliation, to the second form.A note about the institutional affiliation: When you fill out the form, you’re presented with a set of radio buttons for this field. Each button corresponds to a different course/institution on which we might want to filter incoming posts. Gravity Forms makes it really easy to associate those listed affiliations with a value. That value will ultimately become the tag that is assigned to the blog’s feed. So, for example, if you fill out the form and choose “University of Mary Washington: Fall 2012 (Burtis)” as your affiliation, what actually gets passed as a value is “umwfa12s1,” which is the tag we’ll be using for posts written by my students this fall.
  2. Form #2: This form consists of two hidden fields which contain the username and affiliation tag (passed from Form #1). A third field is a text box that is dynamically populated with the value of the RSS url (also passed as a variable to this form).Users can simply click “Submit” to accept the discovered feed address. Or, if they want to get fancy, they can put in another feed address (particularly useful if they’re using a category/tag on their blog and want to only feed those posts).When a user clicks “Submit” another custom function is run that adds the RSS URL to the blogs Link list. FWP actually uses a category from WP’s native Links feature to dynamically generate the list of feeds that it checks. The default category it uses is “Contributors,” but you can change this in the FWP settings.In addition, FWP uses the built-in “Link Notes” property of each Link to track information about each feed. In some ways it’s kind of slick how FWP builds upon the already existing Link type; in other ways it’s a bit kludgy. The Link_Notes is just a text string that FWP breaks apart in order to discover all of the settings for a feed. It was pretty tricky for me to figure out how to manually build the string that assigns authors and tags to a feed. Basically, FWP looks for linebreak characters escaped with C-style backslashes to break apart the Link Notes string, and, as it turns out, the built-in WP function to add links strips these slashes out. I had to address this on two fronts: First, I had to remove KSES filters when new links are added. Second, I had to actually edit a core file to take out the function that removes the slashes. Obviously, this is a big no-no. So, I’m looking for better solutions. Anyone got one?!

    For the meantime, though, here’s what the submit link function basically does:

    • Translates the username (in the first hidden field on the form) into the corresponding user ID.
    • Builds a string based on the format that FeedWordPress uses for assigning authors and tags to feeds. The user ID is used to assign the author. The institutional affiliation tag is used to assign the tag.
  3. Creates a link in the “Contributors” category with the contents of that string in “Link Notes.” The RSS url is assigned as both the main link url and the associated RSS url (All Links in WP can have an RSS URL associated with them, and this is what FWP uses to syndicate posts).

The whole thing is packaged as a plugin so that if/when we change themes on DS106, it should continue to work.

If anyone wants to take a look at the code here it is. But, because this is programmed to work with ds106 specifically, if you try a similar technique on your site, you will have to edit it to correspond to your form fields, etc.

So, that’s it. What needs to be changed/fixed/improved?

14 thoughts on “Perfecting the Syndicated Blog Sign-Up”

  1. Martha,

    I can’t praise you enough for finally cracking this nut. Manually matching feeds and users in FWP, not to mention tagging them has been a complete pain in the ass—this is huge! So did you actually package this as its own separate plugin that works with Gravity Forms? If so, let me know and I will test it on a few other sites 🙂

    Thanks again, you rule the school!

  2. Hi Martha – very grateful for you posting this as I was struggling to find anywhere to actually begin. I’ve managed my own integration using bbpress profiles and an interface. You may have figured this already but a way to get around removal of the slashes is to do an $wpdp to execute a sql query. The function I wrote doing this is here https://github.com/mhawksey/moocinabox/blob/master/oocinabox/functions.php#L29-L58

    [If you want to play register on the dev site http://octelalpha.hawksey.info/login/?action=register ]

    Thanks again,
    Martin

  3. Hey, Martin. Thanks for the comment — just found it among the spam. 🙂

    Yeah, I have newer version of this that does with direct sql query, and, as you say, that fixed the slash problem.

    Have you written up the BP integration? We’re no longer using BP on the ds106 site, so I’m not sure we’d go that route, but I’m curious to see the process.

    I’ve been thinking about writing this up as an agnostic FWP add-on plugin that doesn’t require any other system or form plugin.

  4. Made You actually Listened to That will Samsung Unveils Corby HandsetsSamsung seems to have intrdouced couple of latest cell phones that will the distinctive line of devices Coby, typically the young adults during Western world to get adedd. The popular devices incllude typically the Coprby Corby (TXT) plus Coprby (PRO), which you’ll find given beside typically the originaal Corby S3650-Mobile, witout a doubt availlable. The actual Cotrby (TXT) is likewise knnown being the B3210 and contains a good 2. 2-inch LCD, 2MP surveillance camera together with video tutorial service, enclosed FM tuner, adjustable includes, plus 40 MB involving on-ship memory space expandable in a microSD credit card slit. The unit along BRINK GPRS cpa affiliate networks Quad-band. The actual mobile phone are going to be availabe during Western world till the terminate involving Sept. The actual Crby (PRO) handet boasts a QWERTY kyboard plus runs relating to the 900 2100MHz HSDPA 7. 2Mbps mobile phone network. The actual phpone incorporates a 2. 8-inch touchscreen LCD service while offering a good 3MP surveillance camera. The actual surveillance camera are also able to history a good video tutorial. Otehr capabilities comprise some sort of Radio together with RDS, completely removable handle, Wi-Fi, Bluuetooth, Mirco UNIVERSAL SERIES BUS, 100 MB memory space accompanied by a microSD credit card slit plus much more. The actual mobile phone may send during Don’t forget national. Entire body Reasons for The actual LG KP500 Cellphone PhoneMobile phonees are actually just around merely verbal exchanges machines. At this time, many people need to be classy thewse machines, gammes systems plus company involving Word wide web offerings. Pleasant to check out who thhese very small tools happen to be effectively develop most of these fundamental featurers. The actual LG KC910 is definitely an individual shrewd cell phones which have been avaoilable relating to the mobile phone phone calls marketplace. This approach pohne comes with a appearance who leaves behind a good huge imprint inside intellects involving the general public. For anybody who is sensitive abotu typically the surveillance camera, which could shove a good couplpe involving photographs involving substantial subsequently the following LG phne is definitely obligatory on your behalf. It gives you 8-megapixel surveillance camera is a imzage conclusion involving 3264 by 2448 pixels. Morover, the following product in addition has capabilities want automotive completely focus, video tutorial recordinng, plus vidoe surveillance camera label. Gamerts will unquestionably end up being happpy utilizing this type of product, since she gives you progressed efatures good sport. It consists of a lot of adventures which you could participate in aytime plus everywhere. About the toher palm, the following product can be purchased in ebony coloor, which happens to be the most accepted coloring throughout the world. Simply by investing in the following product usually means which you could give plus have e-maipls together with attachemnts in any additional rapiid solution. This approach phoone are going to be great for workforce exactly who quite often ought to determine its e mail whle they’re certainly not looking at its Personal computers. LG KP500 Candy bar yet another design via LG may be a knowledgeable maker. This approach develop Candy bar cellular seems to have several capabilities who absolutely produce typically the mpobile visitors are actually dependnet in it. This approach stunning item can be purchased in a few hues, want ebony, Vandyke brownish, anodized silcver plus jewelry chic. You can purchase the following cellular during all of these hues. There are various those who want to get cell phones as stated by thheir favoruite hues plus horoscope. This approach communicationms product boasts a surveillance camera 3. 2 huge pixels whicch typically the appearance reslution involving 2048 by 1536 pxels. This approach surveillance camera normally requires premium imaegs, professionals who log in save tese photographs on line, protect on your laptop and also get them involving prrint plus, consequently, given him or her. Inside standby option, the power supply is definitely 350 working hours plus discussion the following product.

  5. Location: Home & gt; instant news & gt; text text copy the link | mail recommended print used RSS single page read | comment) (Reprint: the lion Entertainment<br xinhua="" news="" agency="" published="" in="" the="" 2015-08-24="" ="" international Golden Lion Entertainment "the most hated mom a

  6. Location: Home & gt; instant news & gt; text text copy the link | mail recommended print used RSS single page read | comment) (Reprint: Xinyun Bo international.<br xinhua="" news="" agency="" published="" in="" the="" 2015-08-24="" ="" Yun Bo international. and morning he felt two couples

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.