friends-of-contao / contao-memberlist
列出您网站的成员,并允许他们发送电子邮件(取决于他们的隐私设置)。
2.0.8
2024-06-11 13:42 UTC
Requires
- php: >=7.4
- contao-community-alliance/composer-plugin: ^2.4 || ^3.0
- contao/core-bundle: ^3.5 || ^4.4
Replaces
- contao-legacy/memberlist: *
README
Contao Mitgliederlisten-Erweiterung
此扩展维护了自 Contao 2.9 以来不再包含在 Contao Core 中的成员列表扩展。memberlist 提供了一个成员列表模块,可以用于在前端显示 Contao 成员的数据。
成员应该对哪些数据可以显示有完全的控制权。因此,在每个成员数据集中有一个额外的类别“公开档案”。在那里可以分别为每个字段指定是否允许在成员列表中显示其内容。
为了使定义了自定义字段类型的 Contao 扩展能够在成员列表中显示其内容,自 memberlist 1.3.1 版本起,引入了一个 Contao Hook,允许扩展将其内容“链接”到输出中。
memberListFormatValue
"memberListFormatValue" Hook 在格式化成员列表的输出值时执行。它传递 Contao 成员字段的名称、分配给该字段的值、一个包含成员数据的 Collection 对象以及一个布尔值,指示输出是单个成员条目还是列表条目。
该函数期望返回一个用于前端显示成员字段的字符串值,或者如果不是该字段,返回布尔值 false,以便执行常规的成员列表输出。
// config.php $GLOBALS['TL_HOOKS']['memberListFormatValue'][] = array('MyClass', 'formatValue'); // MyClass.php public function formatValue($k, $value, $objMember, $blnListSingle=false) { // Avatar if (strcmp($GLOBALS['TL_DCA']['tl_member']['fields'][$k]['inputType'], 'avatar') == 0) { $objFile = \FilesModel::findByUuid($value); if ($objFile === null && $GLOBALS['TL_CONFIG']['avatar_fallback_image']) { $objFile = \FilesModel::findByUuid($GLOBALS['TL_CONFIG']['avatar_fallback_image']); } $strAlt = $objMember->firstname . " " . $objMember->lastname; if ($objFile !== null) { $value = '<img src="' . TL_FILES_URL . \Image::get( $objFile->path, $arrImage[0], $arrImage[1], $arrImage[2] ) . '" width="' . $arrImage[0] . '" height="' . $arrImage[1] . '" alt="' . $strAlt . '" class="avatar">'; } else { $value = "-"; } return $value; } return false; }