When you create a custom content type, you should be able to specify if the node should also inherit of the forum node type. That would allow any custom-defined node to appear as a forum thread if a forum taxonomy is defined for it.
Another possibility would be to implement an option (check box) in the publishing options of the submit form, along with the "publish on front page and snippet options". This option, if checked, would provide forum node behavior to any other kind of node and would display any kind of nodes (including story, book, page) as a forum thread if a forum taxonomy is defined for it.
Related forum topic I had initiated to try to solve that:
http://drupal.org/node/99611
Comments
Comment #1
darren ohDuplicate of issue 117667.
Comment #2
webel commentedCloning is NOT inheritance, #117667 is not a duplicate.
Comment #3
karens commentedD4 support was ended long ago.
Comment #4
webel commented@KarenS
My remarks are eternal. Inheritance (or lack of it) is the single biggest problem with Drupal, bar none. I will address it elsewhere, and eternally, and wonder who I should slap every time I have to painfully repeat adding a group and fields so primitively over and over to similar content types, wondering how it was ever left out, and that in a language that supports inheritance well. Too harsh ? Not in 2009 already.
Comment #5
webel commentedReopened. Inheritance (used properly) can save Drupal developers a large percentage of their time, and makes for cleaner designs. It can save millions of dollars.
The biggest question in the entire Drupal7 effort:
And yes, I am a real Unified Modeling Language (UML) nut.
Comment #6
yched commented- Critical mean 'can't ship without'. There are no such things as 'critical feature requests'.
- The original post talks about "node should also inherit of the forum node type. That would allow any custom-defined node to appear as a forum thread if a forum taxonomy is defined for it.". Which is completely unrelated to CCK. Mingling broad "CCK should do this or that" considerations in the same thread just adds confusion.
- If you think CCK is not perfect, help / patches welcome. Wondering "who you should slap" and trying to bring "wake up, this 2009" shame on people contributing 100s of volunter, unpaid work just makes me want to politely reply "Please be kind enough to go to hell. Thank you very much".
Comment #7
webel commented@yched Your remarks about the broader context of my remarks are correct; I will start another thread to discuss inheritance in CCK.
You are using double quote "" to quote, rather than ''. I am using "double quotes" in the sense of not interpreting the words literally.
As for your obviously taking offence at 'who I should slap', "slap yourself" is rather well known and in this case jovially intended IT culture (some might not call it cultured). Certainly it is not meant to cause offence to anybody, and if it did so I am honestly sorry. It is intended to provoke, certainly. I know what I wrote and why. I hope we can leave that there please.
BTW In many of my other postings I take great lengths to thank and commend the Drupal community for the things that do work.
I did not write 'wake up, this is 2009', you did. In any case the Drupal community does need a huge wake up in this matter, and I am just the person to improve that, I don't just complain. I am starting by modeling the entire Drupal system in graphical Unified Modeling Language (UML), which is quite a contribution (especially since PHP addicts insist that you don't need typed properties of classes, which could by easily improved with annotation hints that could be reverse engineered into UML).
The CCK system (at least as of Drupal6) lacks inheritance, and the Drupal community lacked foresight in this matter by not introducing it right from the start (and I mean irrespective of PHP support). And my remarks include Dries. There are a number of complete "giveaways" to anybody really familiar with enterprise level Java and with UML that the original creators of Drupal either did not know about or did not appreciate the significance of certain bread-and-butter technologies (or maybe they thought them harder to achieve than they are, or had other non-technical reasons). These include inheritance of types, and true object-relational mapping, both of which were accessible technologies when Drupal was conceived.
Whatever the case may be, these decisions massively compromise Drupal. In the long term, if Drupal does not embrace them (maybe Drupal7 has already?) then it will suffer. And those contributors who spend time unpaid on Drupal will spend far more of their unpaid time than they need to.
My intention is to save every single Drupal user hundreds or thousands of hours. Every single one. Lots of money. Millions.
BTW I am also currently unpaid. It is not a badge of honour, and for better or worse, I've spent or wasted enough time in recent weeks on problems with contributed modules to have bought a commercial CMS (perhaps no better or worse) with the time/money. If you want to compare Drupal as a CMS with commercially developed CMS systems in a favourable light elsewhere, then you can't fairly use unpaid Open Source excuses. And they are Open Source excuses. Yes, the Drupal community - FLOSS or otherwise, paid or otherwise - needs a wake up call in 2009. The bits and bytes don't know whether you are open source or paid or not:
- Inheritance of types (if not already planned for Drupal7).
- Proper Object-Relational persistence with object-relational queries.
It is 2009. If you don't really know what these are, why they are important, and what they are for you should already have "slapped yourself".
Comment #8
webel commentedRethreaded.
Comment #9
webel commentedBTW what is needed to address the problem statement of this issue is a Forum interface type that can be realized by any implementation class (whether that is desirable is another matter).
Comment #10
markus_petrux commented@webel: Talking is easy, facts!
I think you need to read a lot about Drupal and CCK, its history, why things are the way they are. Then read about what's being done to move forward. Also, I suspect you don't have much experience about performance and scalability in the web, otherwise you would have taken this into account when voicing about OOP et al.
In regards to your last question... well, the answer is probably you need custom code. If you approach that, then you may find that a patch would make things easier, and then if you post the patch, it can be reviewed, tested, validated, and so on... feel free to re-open this issue or create a new one when you have something in this direction. Thanks
Comment #11
webel commentedhave read.