WordPress
skype

WordPress のメニューに Skype の通話リンクを追加する方法

More than 1 year has passed since last update.

海外からお問い合わせを受け付けるのに便利な Skype 通話ボタン。
skype:<skype_id>?call にリンクさせることで Skype を起動することが出来ます。

WordPress のメニューは標準で「https:」や「ftp:」以外で始まる URL を除外していますので、「Skype:」 で始まる URL を除外しないようにします。

kses_allowed_protocols フックを利用する

WordPress が対応するプロトコルは、関数 wp_allowed_protocols 内で定義されており、追加するにはフィルターフック kses_allowed_protocols を利用します。
テーマの functions.php などの然るべき PHP ファイルに、以下のコードを追加します。

functions.php
add_filter( 'kses_allowed_protocols', function ( $protocols ) {
    $protocols[] = 'skype';
    return $protocols;
} );

あとは、管理画面のメニューから「カスタムリンク」の項目を追加し、URL を「skype:<skype_id>?call」と指定しましょう。

メモ: 本体で skype をサポートしていない理由

以前、WordPress 本体で skype: プロトコルを使えるようにする意見も挙がりましたが、悪意のあるコードを仕込まれる可能性があるため追加されませんでした。