Privatemsg の出力にテーマを設定するにはどうすればよいですか? http://api.worldempire.ch/api/privatemsg/privatemsg.theme.inc/group/theming/1 を確認しましたが、その使用方法がわかりませんでした。メッセージ一覧のHTML出力を全面的に変更したい。
メッセージでカスタム日付形式を使用するにはどうすればよいですか? format_date()
関数が役立つと思いますが、それを正しく使用するにはどうすればよいですか?
print format_date($messages_timestamp, 'custom', 'd=m=Y')
は「01.01.1970」を返します。それは何ですか?
わかりました、ここにいくつかの情報があります。
このリストには、単一のメッセージではなくthreadsが表示されます。少なくともテーマ設定では、それを変更することはできません。簡単にできる唯一のことは、privatemsg_limitsモジュールを有効にし、スレッドごとのメッセージ数を1に設定することです。これにより、基本的にスレッドが無効になり、各メッセージが新しいスレッドとして送信されます。次に、リストに個別に表示されますが、スレッドビューページにも個別に表示されます。 Privatemsg views は現在6.x-1.xとのみ互換性があり、この時点では保守されていないように見えます。
Privatemsg設定で、表示される列とその順序を構成できます。
テーマ機能は、単一の列のコンテンツをカスタマイズするために使用されます。たとえば、異なる日付形式を表示するには、 phptemplate_privatemsg_list_field__last_updated() をオーバーライドできます。
function phptemplate_privatemsg_list_field__thread_started($thread) {
$field = array();
$field['data'] = format_date($thread['thread_started'], 'custom', 'd.m.Y H:i');
$field['class'] = 'privatemsg-list-date-started';
return $field;
}
7.xでは、Privatemsgはメッセージの経過時間に応じて異なる日付形式を表示します。これは、バックポートする場合は privatemsg_format_date() で行われます。
テーブルの外観を変更するには、CSSだけで変更できる必要があります。 Privatemsgは、すべての列の個別のクラスと新しいメッセージを含む行のクラス、そしてすぐに 未返信のメッセージも を含むクラスのトンをテーブルに追加します。
format_date() UNIXタイムスタンプが必要です。これは、1970年1月1日から経過した秒数を含む整数です。 0、NULL
、または数値で始まらない文字列を渡すと、関数の結果は1970年1月1日になります。
あなたの場合、それは$messages_timestamp
は、定義済み変数、設定解除された変数、またはNULL
に設定された変数ではありません。