I’ve created a v0.2 milestone, as I’ll be doing some work on this in order to add it to our VIP shared plugins repo. Austin Smith (@netaustin) may also be using it for a project and incorporating some post meta forking functionality.
Recent Updates Toggle Comment Threads | Keyboard Shortcuts
-
Daniel Bachhuber
-
Aaron Jorbin
I’ve created an IRC channel on freenode( #wp-postforking ). I’ll idle in it to keep it alive.
@benbalter / @danielbachhuber Would you be interested in having an IRC chat to go over the roadmap for what is needed for 0.2 ?
-
Daniel Bachhuber
-
Aaron Jorbin
My schedule is pretty open on both days.
-
Benjamin J. Balter
Woah. Not sure how this got past me. Apologies. Very much for this. Just let me know when are where. Most of the weekend works, if not next week?
-
-
Daniel Bachhuber
@benbalter should we use the Google Group you created as a public email list for the commit log? Github doesn’t yet support this natively, so we need to set up a mailing list somewhere.
-
Benjamin J. Balter
Sure. So I should just set the post-deploy to the google groups address or is there a secret sauce?
-
Daniel Bachhuber
Post deploy to the Google Groups address
-
Benjamin J. Balter
Should be all set (I think)
-
Daniel Bachhuber
Awesome, thanks
-
-
-
-
Ben Balter
Any thoughts on branches in terms of development? All for proper feature branching/merging. In the past, I’ve kept master in sync with .org’s SVN to avoid confusion for folks that stumble across the project for google, etc., and did most of the work in a `develop` branch, but up for others’ expertise. Thoughts?
-
Daniel Bachhuber
I used to follow the master/develop approach but then decided it wasn’t offering much value, was a pain to maintain, and made things painful when users wanted to submit pull requests
-
Benjamin J. Balter
Makes sense. I can add a note to the documentation, and we should treat SVN as stable and master as develop?
-
Daniel Bachhuber
Sure, that works for me.
-
-
-
-
Ben Balter
Introducing Post Forking for WordPress
WordPress sets out to democratize publishing, and today the CMS gains an important new feature to that end: Post Forking.
WordPress Post Forking allows users to “fork” or create an alternate version of content and in doing so, sets out to foster a more collaborative approach to WordPress content curation. This can be used, for example, to allow external users (such as visitors to your site) or internal users (such as other authors) with the ability to submit proposed revisions. It can even be used on smaller or single-author sites to enable post authors to edit published posts without their changes appearing immediately. If you’re familiar with Git, or other decentralized version control systems, you’re already familiar with WordPress post forking.
How might you use it?
- Allowing users without edit or publish post capabilities to edit and submit changes to content (similar to GitHub’s pull request system)
- Collaborative editing (by resolving two users’ conflicted saves – Wired’s example)
- Saving draft changes of already-published content
- Scheduling pending changes to already-published content
Why this plugin?
How does it work?
When a user without the
edit_postcapability attempts to edit a given post, WordPress will automatically create a “fork” or alternate version of the post which they can freely edit. The edit screen will look just like the standard post editing interface that they are used to. When they’re done, they simply click “submit for review.” At this point, the fork goes into the standard WordPress moderation queue (just like any time an author without thepublish_postcapability submits a post), where an editor can review, and potentially approve the changes for publishing. If the changes can be automatically merged, the original post will be updated, otherwise, the editor will be presented with the ability to resolve the conflicting changes. All this is done using WordPress’s built-in custom post type, revision, and diff functionality, so it should look familiar to most WordPress users.Interested?
Download the plugin from the WordPress plugin repository, or fork the project on GitHub, or for more information, visit the Post Forking project wiki.
This version constitutes an initial release designed to showcase the plugin’s core functionality and is intended to be improved upon with additional features and refinements as the project evolves. Please consider contributing your time to help improve the project. -
Deven Pitcher
A better wiki interface?
-
Michael
Very good plugin idea!
-
Chris K.
This a really timely plugin. Thanks for making it available.
In addition to Benjamin’s post on the subject, it’s worth looking at a project that came out of last summer’s Knight-Mozilla Learning Lab that has several similar aspects: http://polarjordan.blogspot.com/2011/08/moznewslab-proposal-infinite-story.html
-
mikeschinkel
Wow. Nice!
Ben Balter
We’re all set with .org (get it? It’s a fork?), and both the GitHub repo and this P2 are now public. I’ve got a short post queued up for first thing tomorrow morning, and tagged v0.1 in both GIt and SVN.
Aaron Jorbin
I added a simple build file to minify the CSS and JS. There are two dependencies that will get announced if you try and run the script without it. Right now, the script only works if run from inside the root folder of the project.
@benbalter – Can you update your release script to remove this build script from what is pushed to WordPress.org ?
-
Benjamin J. Balter
Looks great. Will do.
Ben Balter
It’s the final countdown.
- permissions (Balter)
- Post metabox (Bachhuber)
Pending wrapping up the above, would love to see this get pushed public Thursday, if not, Monday at the latest.
If you can take a few minutes to spin up and install and click around a bit, even opening issues would be helpful at this point.
-
Daniel Bachhuber
Ugh, I’m bad. Trying to get to this tonight.
-
Daniel Bachhuber
Working on it now.
-
Daniel Bachhuber
All done. Let’s ship it today!
-
Benjamin J. Balter
W00t. Looks awesome!
-
Benjamin J. Balter
Have a few UI tweaks I’d like to tackle / clean things up a bit (opened issues)… nothing critical, but let’s shoot for Monday rain or shine? Can write a quick blog post to put here, etc.
-
Daniel Bachhuber
Sounds great
-
-
Daniel Bachhuber
@benbalter can you add @mjangda to the Github repo so he can check out the code?
-
Benjamin J. Balter
All set.
Ben Balter
Did a big round of cleaning up, including a whole bunch of unit tests (and associated fixes as a result).
- permission tweaks (on it)
Possibly a bug on merge, but I thinkit’s resolved- Publish metabox refresh
Documentation final pass
With the above knocked out, I think we’d have a solid 0.1 and would feel comfortably flipping the switch and making things public. Thoughts?
-
Daniel Bachhuber
Sounds great!
-
Benjamin J. Balter
Update: Documentation should be close to good to go.
-
Daniel Bachhuber
Want me to crank out the publish metabox this weekend?
-
Benjamin J. Balter
That’d be awesome. Given your expertise with Edit Flow, I think you might know the code better (and seem to have a crisp vision for where it should be). Let me know how I can help.
I was going to try to crank out the last few remaining permission issues this weekend, and and was hoping that we could shoot for at least a soft launch on GitHub early next week so we can get some more folks involved, or if the codes there, just go ahead and push to the .org repo.
-
Benjamin J. Balter
Any chance you had a chance to take a stab at metabox? (think I saw there was a wordcamp). If not, no worries, just trying to figure out how soon we can get this out the door.
-
Daniel Bachhuber
Nope, but I’ll take a swing today
-
-
Yes, that would be lovely. Tomorrow or Wednesday afternoon PT work fine for me