friends-of-contao/contao-memberlist

列出您网站的成员,并允许他们发送电子邮件(取决于他们的隐私设置)。

安装次数: 3,909

依赖项: 4

建议者: 0

安全: 0

星标: 6

关注者: 6

分支: 10

公开问题: 4

类型:contao-module

2.0.8 2024-06-11 13:42 UTC

This package is auto-updated.

Last update: 2024-09-11 14:35:58 UTC


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;
}