Need some creative help (or obvious answer/new module I'm missing). Still rusty in Drupal, so bear with me here...

Using: Domain Access, Revisioning, and custom module using hook_node_presave() specifically here.

Goal: That when you Save a node in node edit, that it publishes to "staging" environments or selected domains in domain access. When you Publish a node in node edit, it publishes to all selected environments and their "staging" equivalents. Ideally, revision 1 would be live where revision 2 would be in the staging domains. When publishing, they all become revision 2 or 3.

Problem: When you save only to the staging domains, it sets publish status to 0 in the form with $node->domains array, which removes the last revision of the node on the live domains. I need new save to go to certain domains and old version to remain published.

Notes: No user has the right in this setup to unpublish or delete a node unless you are me. (I'm special, or userid 1.) So removing unpublishing functionality altogether is not an issue here. Assume everything always stays published once the node is created. Would prefer to do this custom rather than use another module.

Current: I have all the logic setup to do this and is working properly except that when the node saves, it unpublishes from the original domains if it's not a new node. Looking for any help here!! Thank you.

closed as unclear what you're asking by kiamlaluno Nov 13 '15 at 17:19

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Not sure why this was closed as being unclear - thought I was pretty clear! – user1399437 Oct 8 '16 at 17:25

We decided to forego Domain Access to handle our different testing environments and use separate file systems and databases for each environment like a more traditional setup. Will be using Workbench, Drafts, Revisioning, and Domain Access together in one instance to handle revisioning on platform nodes. But use separate instances for each Testing, Staging and Production.

Not the answer you're looking for? Browse other questions tagged or ask your own question.