元
// リンク
public function Link($matches)
{
$url = $matches[1];
$alias = strip_tags($matches[2]);
return '[[' . (($url == $alias) ? '' : $alias.'>') . $url.']]';
}
案1
↓修正内容は、$this->DecodeSpecialChars($url) の部分です。これにより、URL内の特殊文字がエスケープされず、そのまま出力されるようになります。
// リンク
public function Link($matches)
{
$url = $matches[1];
$alias = strip_tags($matches[2]);
return '[[' . (($url == $alias) ? '' : $alias.'>') . $this->DecodeSpecialChars($url).']]';
}
案2
// リンク
public function Link($matches)
{
$url = $matches[1];
$alias = strip_tags($matches[2]);
$url = str_replace('&', '&', $url); // & を & に戻す
return '[[' . (($url == $alias) ? '' : $alias.'>') . $url.']]';
}
左側もやるならこれ
// リンク
public function Link($matches)
{
$url = $this->DecodeSpecialChars($matches[1]);
$alias = strip_tags($matches[2]);
return '[[' . (($url == $alias) ? '' : $alias.'>') . $url . ']]';
}
l
// リンク
public function Link($matches)
{
$url = htmlspecialchars_decode($matches[1]);
$url = str_replace('&', '&', $url); // & を & に戻す
$url = htmlspecialchars($url);
$alias = strip_tags($matches[2]);
return '[[' . (($url == $alias) ? '' : $alias.'>') . $url . ']]';
}
管理者: nattu
PukiWiki 1.5.4 © 2001-2022 PukiWiki Development Team | PHP: 7.4.33. 変換時間: 0.002 秒