justjavac
谢谢回复
FormatterUserMentions.php文件 修改了两处
public function configure(ConfigureFormatter $event)
{
$configurator = $event->configurator;
$tagName = 'USERMENTION';
$tag = $configurator->tags->add($tagName);
$tag->attributes->add('username');
$tag->attributes->add('id')->filterChain->append('#uint');
$tag->attributes['id']->required = false;
$tag->template = '<a href="{$PROFILE_URL}{@username}" class="UserMention">@<xsl:value-of select="@username"/></a>';
$tag->filterChain->prepend([static::class, 'addId'])
->addParameterByName('userRepository')
->setJS('function() { return true; }');
$configurator->Preg->match('/\B@(?<username>[\x{4e00}-\x{9fa5}a-z0-9_-]+)(?!#)/i', $tagName);
}
public static function addId($tag, UserRepository $users)
{
if ($id = $users->getIdForUsername(rawurlencode($tag->getAttribute('username')))) {
$tag->setAttribute('id', $id);
return true;
}
}
FormatPostMentions.php文件修改了一处
$configurator->Preg->match('/\B@(?<username>[\x{4e00}-\x{9fa5}a-z0-9_-]+)#(?<id>\d+)/i', $tagName);
一共改这三处 还是不行 需要改JS么