web-dev-qa-db-ja.com

メニューバッジを使用して、Privatemsg経由で受信したメッセージの数を表示する方法

私のサイトでは Privatemsg を使用して、ユーザーが互いに通信できるようにしています。 [受信トレイ]タブに新しいメッセージが表示されます。

また、バッジに未読メッセージの数を表示するために Menu Badges モジュールがインストールされています。の Tab Menu Badges 編集ページに受信ボックスのパスがリストされていません(/messages/receivedです)。 /messages/list/messages/blocked/messages/sentなどの他のパスがリストされます(すべて Privatemsg パス)。ただし、受信メッセージのパスはありません。

そのため、[受信トレイ]タブにバッジを表示できません。

これは一般的なエラーですか?これに対する修正または回避策はありますか?

1
user14666

(あなた自身の答えのように)その「スコッチテープ」をもう使いたくない場合は、 issue#1719112 のコメントのいくつかを参照してください。 「正常に機能するように」機能するには:

  • コメント#6 ):タブメニューバッジは、メニュー内のリンクではなく、特にタブ用です。ヘッダーを見出しに表示したい場合は、[メッセージ]メニュー項目を編集し、そこでバッジを選択する必要があります。
  • コメント#9 )独自のメニュー項目を作成する必要があります。 Privatemsgによって作成されたものを無効にします。
1
Pierre.Vriens

データベースを調べた後、パス/ messages/receivedが存在しないようです。これはおそらく、受信トレイが最初のタブ(デフォルトのタブ)であり、パスのデフォルトが/ messagesであるためです。このパスは、メインメニュータブのパスでもあります。メニューバッジモジュールにはアンインストールファイルがないため、アンインストールしてもデータベースは消去されません。

私が使用した回避策は、[すべてのメッセージ]タブにバッジを付けることです(/ messages/list)未読メッセージの数は、[受信トレイ]タブと同じです。次に、少しcssを使用してバッジを222px左(位置:相対)に移動し、代わりに[受信トレイ]タブに配置しました。

スコッチテープを使用するようなものですが、機能します。 :)

1
user14666