I have come to a crossroads.. I have four sites running on drupal, and have had extremely good luck. However, I am curious about the best way to remove/flag/workflow or "whatever", content ??
-Heres the scoop: I would like to enable registered users to mark (somehow) a node that they have created, this would then either leave the "title" intact and delete the content (or body), or unpublish the node. By the way, if the node is unpublished, would this not be bad for SEO? As it would leave a dead link in googles search.. Am I right? Or am I barking up the wrong tree?
-The main reason for this idea I have (that I have no plain way of solving) is one site I have is a classifieds site. The users can edit almost everything involved in the node, with the exception of deletion.
I would love for the user to be able to login, view a node that they have created, and if it has node content that has "sold", then they could check a box, mark an x, or click a button... This would then mark that node as "sold"... Or similar. The idea is that this would leave the content in-tact, and browsers could simply see a "sold" image or something similar. I would like to keep users away from editing as much as possible, and leaving an area that is "user friendly" to them, so that they may "mark as sold".
Does anyone have any constuctive ideas that I could try??? Please don't ignore!!!
PS. I thought that somehow the flag module may work, but it appears that any logged in user can flag anything that is a flag.. Am i wrong here too?? ... Thank you much whomever take the time to help me!
Comments
I don't really understand
I don't really understand which problem you're solving here.
The way I see it, content on your site needs to be relevant and up-to-date. On a classifieds site, once an item is sold, the ad is no longer needed so it has to go. Maybe a search bot cannot judge if an ad is outdated, but your users sure can - don't put SEO before your users. It doesn't really matter whether sold items are unpublished or deleted, because a search bot doesn't see it anyway.
Of course you could also use the flag module to flag ads as 'sold' and hide (delete?) the body content based on that flag... but why would you? Okay, maybe it's friendlier to the user, but on the other hand, users also like clarity. I think that a button saying "delete this ad" is much clearer than a button saying "this item is sold", because the latter does not make clear what will actually happen.
This is what I did for the workflow on my own classifieds site: Ads expire (get unpublished) automatically after 30 days (I use auto expire for that). 7 days before expiry, the user is notified by e-mail and he can extend the ad for another 30 days. This can be repeated infinitely. When an ad expires, it is unpublished, so users cannot see it anymore. The author of the node has a personal 'my ads' page (a view) showing two lists: his own active ads (published) and his expired ads (unpublished). Next to each ad, there are 3 links: edit, delete and extend (I wrote a views integration patch for auto_expire to accomplish this). Expired ads can also be extended, in which case they are published again and move back to the active ads list.
I hope that helps... tell us if you still have questions.
One main theme I have in SEO
One main theme I have in SEO is "never delete anything". That is my train of thought, on the other hand I will just delete whole websites and start anew on a whim...so.
My main SEO theme came to be because not all Search engines value the same things equally, some value recent content more, some value "venerable, well established" old pages more, and some both.
Sometimes your(my?) most valued 'visitors' come from the less popular search engines.
Sometimes people are just searching for something that isn't available anymore, and with this you could guide them to newer available items.
So I always try to add new content and then put a notice on old content (like is done on drupal.org with DEPRECATED) with a link to the newest version, or to the latest entries (classifieds) of that 'category'. You never know when someone needs that old data, or when old data works in your favour.
In your situation I can envision adding a block in the content region to that effect or (with a module) injecting a 'SOLD' block/content depending on a category term (sold).
By just letting users select a new term 'sold' you could then make a block that would display in the content region using "Show if the following PHP code returns TRUE (PHP-mode, experts only)", and in the php check for the term, actually I think this would be the easiest.
Automatically generating a link to the latest items from the same classifieds category term in a php block should not be that difficult. A module would work likewise.
But only you can say if this is/will be beneficial to your site, I can see how it could be (i.e. external links to classifieds), but beware of skewing your ratios (90% SOLD vs 10% new ads as an extreme example), rarely anybody searches for 'sold whatever'. But you can easily turn the word 'sold' into an icon or an image and/or delete claassifieds older than x years after a while.
Anyway, enought to think about, and this could be a possible solution.
Good Luck with this.
Excellent! This helps
Thanks, this was much more thought and help than I imagined! Marcvangend, I do agree with the user vs. ranking, and this will influence my overall decision(s) in the future. Your classifieds solution may be the absolute best approach. In my train of thought too, (as far as SEO) it seemed that deleting or un-publishing anything would not be the best thing to do... But I guess it depends on the outcome.
I certainly will try the patch version of auto expire. It would seem to be the best approach as well, the flag module is something I have not used alot... But it does seem to have the functionality that I may need.
At this point, I have a cck field check box that when upon clicking, puts a "sold" image next to the listing. The only thing that I have not thought about is node edit permissions, but that is another post all-together. I appreciate the input! and if anyone else has any.. please input as well. I feel that I may be "battling" with this issue a bit more in the future.
Thanks, I'm glad that you
Thanks, I'm glad that you consider us helpful :-)
I wouldn't go as far as saying that my solution is the absolute best approach. One thing I forgot to mention is that I have the luxury of not caring about SEO at all, because my site doesn't need to be indexed by search engines... (It's only for members of a club.)
Currently, there is no official D6 release of auto_expire, but there is a port-to-D6-patch which works fine. This patch is already applied in the code I posted here: http://drupal.org/node/464776. After that, I applied two more tweaks in function _auto_expire_expiry_submit: one to make sure that when an expired (=unpublished) node is extended, it is published again, and the other to improve the way the new expiry date is calculated. I can send you the code if you want to.
That would be great!
I may need this in the future... just zip it over to mostatebusiness@mostatebusiness.com
It will be greatly appreciated!
-It seems that in the beginning, (here at the drupal site) I went un-noticed when I needed help, of course I have come to understand that in the beginning, I was asking idiot questions.. (maybe I still am!). But yes, any comment that is replied to, and especially when there is good information that comes with it, is considered by me to be priceless! Where I live, locally.. there is NO one that is familiar with Drupal, so my only recourse is to be semi-active here in the community. Thanks guys and gals.
-By the way... any drupal'ers in mid-Missouri?
While there is no such thing
While there is no such thing as an idiot question, it is very possible to have a good question and ask it the wrong way. This page explains a lot: http://drupal.org/forum-posting.