answersモジュールで回答を〆切るには?

Events happening in the community are now at Drupal community events on www.drupal.org.
bzj00220's picture

answersというモジュールを使っています。
質問回答サイトを作るためのモジュールです。。

質問を書いた人が回答を〆切ることが出来るようにしたいと思っています。

best answersというモジュールを入れると
ベストアンサーを選ぶと回答を〆切ることが出来るようになりました。

ベストアンサーを選ばなくても回答を〆切ることが出来るようにしたいのですが、
どうすればいいのでしょうか?

answersのモジュールの中にanswers.readme.txtというファイルがあって
下記のように書かれています。

「5.4 Module Developer tips
・Answers provides a simple api for other modules that would like to lock questions:
・hook_answers_lock_question_p: Modules that want to set or release locks should define this hook. It returns TRUE if a question should be locked.
・answers_lock_question: Lock a question
・answers_unlock_question: Unlock a question
・answers_reset_question_locks: Cycle through all questions and reset their locks. (This can be required when, e.g., a global policy is changed. For example, an administrator may change the policy in the Best Answers module to lock questions after a Best Answer is selected. When this happens, the module calls this function to update the locks.).」

google飜訳で翻訳すると

「5.4モジュールの開発のヒント・回答は、質問をロックしたいと思い、他のモジュールを作成するためのシンプルなAPIを提供します:
・hook_answers_lock_question_p:ロックを設定または解除したいモジュールこのフックを定義する必要があります。質問がロックされるべきである場合はTRUEを返します。
・answers_lock_question:質問をロック
・answers_unlock_question:質問のロックを解除
・answers_reset_question_locks:すべての質問を順番に表示するとそのロックをリセットします。
(これは、例えば、グローバルポリシーが変更されたとき、必要になることができ、例えば、管理者はベストアンサーを選択した後に質問をロックするためにベストアンサーモジュールにポリシーを変更することがありますこれが発生すると、モジュールは、この関数を更新するために呼び出すロックされます)。」

他のモジュールからは回答を〆切ることが出来るようなことが書いてあります。

私はphpの事がわからないので簡単な設定で自分の質問を自分で〆切る事が
出来るようになる方法があれば教えて下さい。

もしくは上記の機能を使ってルールを設定して〆切るような方法などがあれば教えていただければ幸いです。

Comments

Answers

dokumori's picture

Answers モジュールのプロジェクトページにこのリンクがありました。試してみる価値はあると思います: http://drupal.org/project/expire_questions

bzj00220's picture

私はdrupal7を使っていることを明記しておりませんでした。
申し訳ありませんでした。

expire_questionsは私も回答を〆切る方法を探していて見たことがあるのですが
読んでみたところ、期限が来たら〆切にするようなモジュールのようですし
drupal7にはまだ対応していないみたいだったので試しておりませんでした。

なにか他の方法があれば教えていただければ幸いです。

bzj00220's picture

自分でいろいろと試していたら方法をみつけました。
rules linkというモジュールを使う方法です。

アクションのところで「独自のPHPコードを実行」にして値の欄には

answers_lock_question($node);

を記入したら回答を〆切ることが出来るようになりました。

しかし、新たな問題が発生して困っています。
回答を〆切った後からでもbest answerを選択することが出来てしまうのです。

これについてはまた別の質問にしたいと思います。
ありがとうございました。

日本 コミュニティ: Drupal Japan User Group

Group organizers

Group categories

Group notifications

This group offers an RSS feed. Or subscribe to these personalized, sitewide feeds: