WordPress で URL を自動認識して href html 形式に変更するにはどうすればよいですか。
私が投稿した場合:
http://stackoverflow.com/
自動的に移動したい:
<a href="http://stackoverflow.com/" target="_blank">My Text</a>
jQueryでこれを行うことができますが、ページの読み込みが間違っている/遅いと奇妙な結果が生じる可能性があるため、PHPでこのようなことを行うのが最善の策です
<?php
$url_pattern = "@(https?://([-\w\.]+)+(/([\w/_\.]*(\?\S+)?(#\S+)?)?)?)@";
$text = "This is my text, it make include a link like http://google.com or http://www.bbc.co.uk";
$replace = '<a href="$1" target="_blank">$1</a>';
$text = preg_replace($url_pattern, $replace, $text);
echo $text;
?>
これを小さな関数に設定し、ページなどに出力する前/出力するときに、コンテンツにフィルターとして適用できます。
プログラムで実行したくない場合は、WordPress でこれを実行できるプラグインがあります。ここにいくつかあります: