Buy an enterprise hosting contract is the main way to move forward. None of our customers are asking for this. Not opposed to it but we have other priorities based on our paying customers at the moment.
This one has been spec’d out and currently has a “bounty”:
If you want to split the requests, that probably could be done through another feature:
Topic templates commands. So we could issue a command to turn it into wiki. Not sure if this have been considered yet, or why not. If it haven’t, I’m probably posting this in the wrong place… ![]()
Just to throw in my 2 cents. I love Discourse, and a Wiki option would be AWESOME! I too feel like most wiki software is stuck in 2005 or earlier.
To be clear “Wiki” functionality exists:
Perhaps it’s not an exact replacement for Wikipedia’s MediaWiki - but the base functionality to a large degree exists and works.
It’s a solid foundation that could be much improved with a little bit of work:
In a “wiki category” :
- All new topics are wikified by default
- Author attribution is suppressed
- Always go to first post when viewing a topic
(option to hide replies on separate page)
And made into a “proper” wiki with some more detailed and involved work:
- Table of contents generation with [contents] object and headers
- Create links to other topics by “tagging” them ie.
&PageTitle - Create new topics by tagging a non-existant page eg.
&NewTopic
I happened to be looking at this today in another context. While it’s a little convoluted, it is actually possible to pass non-default parameters (such as wiki) to new posts. It took me a little while to figure this out, so someone else may find it useful. There are four things you need to do:
- Set
wikito true when creating thepostrecord in the store. - Add
wikito the serialized composer properties viaComposer.serializeOnCreate. - Use
PostRevisor.track_topic_field(:wiki)to addwikias a permitted param in theposts_controller. - Save the
wikiopt to the Post using thepost_createdevent.
I’ve been trying to decide which official Wiki to create a plugin with MediaWiki Classic of the new FederatedWiki.
Thank you so much for posting your experience.
Wiki pages on a forum are a great idea, kudos to Discourse. The revisions system works well. The editor is great.
But there’s a massive gap in functionality from my PoV.
If two people edit concurrently, one person’s work is lost
We’ve not had much use of the wiki feature on my forum (1000 visits/day) but we’ve already seen multiple edit clashes.
Suggested solutions in order of preference (preferred first):
- Live collaboration (show where the editors’ cursors are, as per google docs).
- Lock a post to other editors when it’s being edited
- Allow conflicts to be merged by the last editor.
I haven’t tested this locally, but are both revisions available in the edit history modal?
(BTW you posted an incomplete URL to the example of the problem)
I believe both revisions are there in the history, yes. The link is just to the forum. The conflicts were in our private staff area. The issue is easily reproducible.
Yes, both are visible – but the second person to make the edit usually won’t notice that they reverted the previous person’s changes. 
I’ve not tried this myself, but I think the Pages theme for Grav (a flat file CMS) could serve as a wiki. Additionally, Grav has support for Discourse comments via the JS Comments plugin.
The official Grav docs use the same theme.
この議論は数年前のものですが、フォーラムをウィキのように整理するのがとても素敵だと気づいた後にこのスレッドにたどり着きました。@peternlewis さんは、私が考えていたことを見事に表現してくれています。単に個々の投稿でウィキ機能を許可するだけでなく、Discourse サイト自体をウィキペディアのようなウィキとして機能させたいのです。彼が言ったように:
これは Discourse で可能でしょうか?
どのプランでも DiscoTOC - automatic table of contents をインストールできます。
Codepen や https://repl.it/ を使って実行可能なコードを埋め込むことができます。
ありがとうございます。
より具体的に申し上げますと、私たちはオープンソースプランのいずれか、おそらくこちらのプランを利用していると考えています:Free Hosting for Open Source v2
管理者として、DiscoTOC をインストールできるか確認しましたが、利用可能なプラグインのリストには含まれていませんでした。![]()
ありがとうございますが、残念ながら私たちは Prolog プログラマーであり、特に SWI-Prolog(Discourse フォーラム)を使用しています。CodePen で 一部の Prolog を実行する ことは可能ですが、Prolog で可能な機能の十分には及ばず、さらに SWI-Prolog 固有のものではないため、採用されませんでした。SWI-Prolog には SWISH というオンラインツールがありますが、セキュリティ上の理由から、Prolog で完全に行えることには制限があります。LISP が ホモイコニック であることでどれほど多くのことができるかをご存知であれば、その意味はご理解いただけるでしょう。私は SWISH を Iframe と統合しようとしたほか、いくつかの他のアイデアも試しましたが、希望通りに動作させることはできませんでした。一時的に動作するものを作ることができたものの、実用的ではなく、画面幅の問題(記憶が確かなら)がありました。
重ねて申し上げますが、フィードバックをいただき、本当に感謝しております。
管理者として DiscoTOC のインストールが可能か確認しましたが、利用可能なプラグインのリストにはありませんでした。
これはテーマコンポーネントです。
そこで何を指していたのですか?
より具体的に申し上げますと、私たちはオープンソース向けプランのいずれか、おそらく特にこちらの「Free Hosting for Open Source v2」を利用していると考えています。
管理者として DiscoTOC をインストールできるか確認しましたが、利用可能なプラグインのリストには含まれていませんでした。
DiscoTOC はプラグインではなく、テーマコンポーネントです。テーマまたはテーマコンポーネントのインストール方法に従ってインストールしてください。確かに利用可能ですので、お試しください。
ありがとうございますが、残念ながら私たちは Prolog プログラマーです。
なるほど、わかりました。
Prolog 用の動作する repl.it インスタンスを取得しようとするのが最善策かもしれません。それは SWI-Prolog を WASM にコンパイルしたものによって提供されている場合でも同様です。repl.it の創設者 @Amjad_Masad にお問い合わせいただくことをお勧めします。