Jump to:
| Project: | Domain Access |
| Version: | 7.x-3.7 |
| Component: | Miscellaneous |
| Category: | support request |
| Priority: | normal |
| Assigned: | Unassigned |
| Status: | closed (works as designed) |
Issue Summary
My problem is this. I run a Drupal installation (with me as user 1) with Domain Access for two sites, A and B. Both sites use the same theme, overlay, etc., so when performing administrative tasks, I can easily forget whether I am at A or B at the moment. I am also using some crossposting modules for both A and B. Today, I had run into a situation where I did something at A and then started creating some content I decided to post to B only. The problem is, crossposting modules (it was Twitter in this case) know nothing about Domain Access, and create links to nodes at whichever site the user actually created that node. As a result, I created http://B/node/123, but my tweet (since I was at A!) contained something like "Read it at http://A/node/123", and one of my Twitter followers replied "I get Access denied at http://A/node/123" (of course, because the node was only posted to B, not A!).
So, I would like to have a setting whereby when I am creating or editing content at A, I can post to "A only" or to "All affiliates" (=A and B), but _not_ to "B only".
My apology if this has already been implemented and I just cannot find such settings. I have read carefully Section 3 and Para 4.3.3 of Readme.txt, but no option there seems to describe what I need.
Comments
#1
This actually sounds like a bug in the Twitter module, which should be checking the URL of the post (using the url() function).
The best solution to the "wrong URL" crosspost problem is to use the Domain Source module (provided) to set the canonical URL for each node.
As an admin, you can't really restrict this behavior. There are now per-content type settings for default node assignment. You probably want those.
See admin/structure/domain/nodes
#2
Hmm. I am not sure there is a bug. Maybe I should also add that my B is a subdomain of A. (Actually, we are talking about http://kozub.in.ua as A and http://personal.kozub.in.ua as B.) When I am logged in at A and I create a node and post it as B/node/123, _I_ can also see it as A/node/123; _my readers_ get "Access denied" at A/node/123, but I do not know what the Twitter module gets if it checks the url() function.
Do you mean that in my situation, where I publish to B/node/123 (which is what I need) _without remembering I am at A, not B_, I would just select (using Domain Source) B as the source domain? OK, it may be helpful, although I should teach myself that every time I publish to an affiliate, I should also select that domain as the source. I am not sure it will be easier than to train myself to never publish to one affiliate only while working from the other, but I will try :).
Sorry, I do not get your idea here. I do not need to assign nodes to a domain by default. E.g. I publish nodes of Blog Entry type to both A and B in some cases, and to "B only" in some other cases. It depends on the subject, and I decide every time where a particular node should be published.
#3
Right, what I am saying is that as user 1, we have no way to stop you from posting to the "wrong" site. There are ways to do that for other roles, but they don't solve your problem either because they would prevent you from posting to B at all.
The url() problem in the tweets is likely because Domain Source is not set, which means that the canonical url is the first matching domain, which is set automatically when you publish.
Really, this is user training, and there is nothing we can do in this single-user case.
Best solution? Set a separate admin theme for the two domains.
#4