2010-07-27 52 views
1

我有一個在drupal中的自定義內容類型,我甚至允許匿名用戶創建。我還希望讓他們能夠在他們首次發佈後重新編輯他們的作品,但這是挑戰。允許匿名用戶編輯他們的內容? Drupal模塊,想法

由於它們是「匿名」的,我猜想drupal權限系統無法將內容與最初創建它的用戶綁定。

這是否離開我?我正在考慮瀏覽器cookies或其他方面的內容?我不確定。

是否有一個現有的模塊可以幫助或創建一個新的?

回答

2

在Drupal或任何系統真的..它最好依靠一個關鍵和經驗,它更容易讓他們註冊。在Drupal中,如果一個人是匿名的,他們就是UID 0,並且沒有其他任何東西被保存。另一位用戶在另一篇文章中指出,Drupal不會跟蹤匿名用戶對象的會話ID,因此您必須使用session_id()之類的東西。

我可以看到爲什麼你想要發佈一個小屏障,但它可能是後來的管理噩夢。

+0

我明白了爲什麼現在更多的工作,但你能否詳細說明爲什麼這是一個管理惡夢「以後」? – drupal 2010-07-28 01:08:37

4

你可以在一個cookie中存儲一個ID,但是如果用戶刪除它,將無法再識別它們。您也可以保留IP地址的記錄,但這也不是100%可靠的。

唯一可靠的方法是擁有某種登錄系統。您可以將內容編輯作爲功能提供給願意註冊的人。

+0

我大體上同意這個答案,但是認爲這個網站我們是在對上的。您無需註冊即可編輯您的問題和答案。 – stacker 2010-07-28 00:12:45

+0

是的,但開箱即用,Drupal無法像SO一樣使用用戶。所以提前想到了這一點。 – Kevin 2010-07-28 00:36:33

+0

,他們將使用Cookie和/或IP地址檢查的組合。刪除你的cookies並通過匿名衝浪網站進入,看看你是否仍然可以在沒有登錄的情況下編輯你的帖子;) – 2010-07-28 01:03:16

2

而不是試圖保留一個會話(如果你問我,它會破壞匿名的目的),那麼讓用戶在創建時創建一個密碼怎麼辦?然後,添加一個驗證處理程序,檢查它是否在節點不是新的時提供正確的密碼。

您可以使用CCK Password Field模塊爲密碼添加CCK字段,或者使用hook_form_alter直接修改node_form並在自定義模塊中提供您自己的CRUD。哎呀,匿名編輯訪問可能不需要那麼安全,你可以用CCK文本字段來存儲密碼。

+0

我不認爲它完全違背了匿名的目的。對於用戶來說,匿名意味着我不想打擾註冊和確認我的電子郵件。 Drupal決定給這個匿名者打電話。他們本可以稱它沒有註冊,這將是同樣的事情。我想爲那些懶惰的用戶提供編輯其內容的能力。當然,我給他們的保證非常小,因爲他們給了我一個小小的承諾。 – drupal 2010-07-28 01:32:26

+0

要將匿名定義爲懶人,匿名是一個非常狹義的定義。有幾種不同的情況仍然會被視爲匿名使用,但不會保留會話:使用匿名者或從不同位置訪問網站以命名兩個。這就是爲什麼Drupal將匿名視爲一個單一用戶的原因:如果您正在跟蹤會話,它不再是匿名的。強制註冊或執行類似我建議的操作,會話或用戶跟蹤顯式,穩定,並且不會將「匿名」一詞留給辯論。 – 2010-07-28 01:50:31

1

雖然這是一個古老的線程,加上我知道這是什麼:

節點授權鏈接看起來是一個有趣的模塊,只是這樣做。它創建授權(查看/編輯/刪除)密鑰,通過電子郵件將密鑰以電子郵件的形式發送給匿名用戶作爲鏈接。

http://drupal.org/project/node_authlink

相關問題