概要
wp_logout_url
関数は、ログアウトの際に使用するURLを生成するための関数です。この関数は、ユーザーがログアウトするためのリンクを作成するのに非常に便利で、以下のようなシーンでよく使われます。
- ユーザー用のログアウトボタンを作成する
- カスタムナビゲーションメニューにログアウトリンクを追加する
- ログアウト処理後にリダイレクトするページを指定する
- 特定の条件下でのみ表示されるログアウトリンクを生成する
- ウィジェット内にログアウトリンクを表示する
- 自作テーマやプラグイン内でのユーザー操作を簡素化する
- フロントエンドでのセキュリティ対策を強化する
- ソーシャルログインの一環としてのログアウト機能を提供する
構文
wp_logout_url( $redirect = '' );
パラメータ
$redirect
: (オプション)ユーザーのログアウト後にリダイレクトされるURL。省略すると、デフォルトはログインページになります。
戻り値
- この関数は、ログアウトURLを含む文字列を返します。
関連する関数
使用可能なバージョン
wp_logout_url
関数は、WordPress 2.0以降で利用可能です。
コアファイルのパス
wp-includes/pluggable.php
この関数のアクションでの使用可能性
アクション | 使用例 |
---|---|
mu_plugin_loaded | |
registered_post_type | |
plugins_loaded | |
wp_roles_init | |
setup_theme | |
after_setup_theme | |
set_current_user | |
init | 〇 |
register_sidebar | |
wp_loaded | 〇 |
send_headers | |
parse_query | |
pre_get_posts | |
wp | |
template_redirect | 〇 |
get_header | |
wp_head |
サンプルコード
サンプルコード1: ユーザー用のログアウトリンクを生成する
<?php
// カスタムログアウトリンクを生成
$logout_url = wp_logout_url();
echo '<a href="' . esc_url( $logout_url ) . '">Logout</a>';
?>
このコードは、デフォルトのログアウトリンクを生成します。リンクをクリックすると、ユーザーはログアウトします。
サンプルコード2: リダイレクト先を指定したログアウトリンク
<?php
// ユーザーがログアウト後にリダイレクトされるURLを指定
$redirect_url = home_url();
$logout_url = wp_logout_url( $redirect_url );
echo '<a href="' . esc_url( $logout_url ) . '">Logout</a>';
?>
このコードでは、ユーザーがログアウト後にホームページにリダイレクトされるようにログアウトリンクを生成します。
サンプルコード3: プラグイン内でのログアウト処理
<?php
function my_custom_logout() {
$logout_url = wp_logout_url( 'https://mywebsite.com/goodbye' );
echo '<a href="' . esc_url( $logout_url ) . '">Logout</a>';
}
add_action('wp_footer', 'my_custom_logout');
?>
このコードは、フッターにカスタムログアウトリンクを追加します。ユーザーは、ログアウト後に指定したURLにリダイレクトされます。
サンプルコード4: ログアウトリンクにアイコンを追加
<?php
$logout_url = wp_logout_url();
echo '<a href="' . esc_url( $logout_url ) . '"><img src="logout-icon.png" alt="Logout" /></a>';
?>
このコードでは、ログアウトリンクにアイコンを追加し、視覚的にログアウトボタンを強調します。
サンプルコード5: ウィジェット内で使用する場合
<?php
class Logout_Widget extends WP_Widget {
function __construct() {
parent::__construct('logout_widget', 'Logout Widget');
}
public function widget($args, $instance) {
$logout_url = wp_logout_url();
echo $args['before_widget'];
echo '<a href="' . esc_url( $logout_url ) . '">Logout</a>';
echo $args['after_widget'];
}
}
add_action('widgets_init', function(){
register_widget('Logout_Widget');
});
?>
このコードはカスタムウィジェットを作成し、そこにログアウトリンクを表示します。
これらのサンプルコードは著作権フリーであり、WordPressの wp_logout_url
関数の使い方を示しています。