「コンテンツを読み上げてくれるボタン」を表示するプラグインを作成しました。
WP Speech Contents
です。
プラグインをインストールして有効化してから、個別ページを開くと、コンテンツの上部に「読み上げ開始」みたいなボタンが表示されます。
それをクリックすると、コンテンツを読み上げてくれます。
やっていることは
Web Speech API
を使って、post_content の内容を読ませているだけなんで簡単です。
ほんとは、もうすこし細かな設定とかできるようにしたいんですが、とりあえず今はこれだけ。
ボタンの表示位置だけは上か下を変更できるように、フックを用意しました。
add_filter( 'wp-speech-contents-mode', function () {
return 'bottom'; // top or bottom
});
こんな感じで。
例えばある記事だけに表示させたいときは
add_filter( 'wp-speech-contents_mode', function () {
if(is_single(1)){
return 'bottom'; // top or bottom
}else{
return 'none';
}
});
読み上げる内容を修正できるフックを用意しました。
例えば読み上げる内容に、文言を追加する場合
add_filter( 'wp-speech-contents_content', function ( $content ) {
return 'これから読み上げます。'.$content;
});
例えば読み上げる内容から記号を削除(日本語の場合)
add_filter( 'wp-speech-contents_content', function ( $content ) {
$content = preg_replace('/[^、。!!??\pL]/u','',$content);
return $content;
});
と言う感じでいけるはず。
