概要
cancel_comment_reply_link
フィルタは、コメント返信のキャンセル用リンクを表示するために使用されるフィルタです。このフィルタを利用することで、デフォルトのキャンセルリンクのテキストやHTMLを変更することができます。以下のような機能を実装する際によく使われます。
- キャンセルリンクのラベルをカスタマイズする。
- キャンセルリンクのスタイルを変更する。
- HTML属性を追加する。
- 特定の条件に基づいてキャンセルリンクを非表示にする。
- 多言語サイトのために翻訳可能なキャンセルリンクを提供する。
- モバイル向けにキャンセルリンクを調整する。
- 魅力的なデザインのためにSVGアイコンを追加する。
- アクションのログを追加するためにJSやCSSのクラスを追加する。
構文
add_filter( 'cancel_comment_reply_link', 'custom_cancel_comment_reply_link', 10, 2 );
パラメータ
$link
(string) – デフォルトのキャンセルリンクのHTML$id
(int) – コメントのID
戻り値
カスタマイズされたキャンセルリンクのHTML。
関連する関数
cancel_comment_reply_linkに関連する関数
使用可能なバージョン
WordPressのバージョン2.7以降で使用可能。
コアファイルのパス
wp-includes/comment-template.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
add_filter( 'cancel_comment_reply_link', 'custom_cancel_link' );
function custom_cancel_link( $link ) {
return str_replace( 'Cancel', '戻る', $link );
}
このコードでは、デフォルトの「Cancel」を日本語の「戻る」に変更します。
サンプルコード 2
add_filter( 'cancel_comment_reply_link', 'styled_cancel_link' );
function styled_cancel_link( $link ) {
return '<span class="custom-cancel">' . $link . '</span>';
}
このコードでは、キャンセルリンクをカスタムスタイルのスパンでラップしています。
サンプルコード 3
add_filter( 'cancel_comment_reply_link', 'add_cancel_link_attributes' );
function add_cancel_link_attributes( $link ) {
return str_replace( '<a', '<a class="cancel-link" data-toggle="tooltip"', $link );
}
このコードでは、キャンセルリンクにカスタムクラスとデータ属性を追加します。
サンプルコード 4
add_filter( 'cancel_comment_reply_link', 'hide_cancel_link' );
function hide_cancel_link( $link ) {
if ( ! is_user_logged_in() ) {
return ''; // 非ログインユーザーではキャンセルリンクを非表示
}
return $link;
}
このコードでは、非ログインのユーザーに対してキャンセルリンクを非表示にします。
サンプルコード 5
add_filter( 'cancel_comment_reply_link', 'translate_cancel_link' );
function translate_cancel_link( $link ) {
return str_replace( 'Cancel', __( 'キャンセル', 'textdomain' ), $link );
}
このコードでは、キャンセルリンクを多言語対応にし、日本語の「キャンセル」に変更します。
これらのサンプルコードはすべて著作権フリーであり、自由に使用することができます。