Link-template.phpのscreen_reader_textを編集したいのですが、更新時に上書きされないように、テーマ内でこれを実行できますか。それはフィルタが最良の選択肢であるように思われます、しかし私はどんなフィルタを使うべきかに関するドキュメンテーションを見つけることができません。
これが、link-template.phpから変更したいコードです。
if ( $GLOBALS['wp_query']->max_num_pages > 1 ) {
$args = wp_parse_args( $args, array(
'mid_size' => 1,
'prev_text' => _x( 'Previous', 'previous set of posts' ),
'next_text' => _x( 'Next', 'next set of posts' ),
'screen_reader_text' => __( 'Posts navigation' ),
) );
関数や他の方法で投稿ナビゲーションを他のものに変更するにはどうすればいいですか?
テーマファイルで the_posts_pagination() / wrapper関数を呼び出すときにscreen_reader_text
引数を変更できます。
<?php the_posts_pagination( array(
'mid_size' => 2,
'prev_text' => __( 'Back', 'textdomain' ),
'next_text' => __( 'Onward', 'textdomain' ),
'screen_reader_text' => __( 'Whatever', 'textdomain' ),
) ); ?>
テンプレートファイルでthe_posts_pagination
を検索し、必要に応じてテキストを調整します。
__()
は、テキストがgettext
フィルタを通過していることを意味します。ですから、functions.phpに次のようなものを追加することで、そこに到達できます。
function change_my_text( $translated_text, $text, $domain ) {
if ( $translated_text === "Posts navigation" )
$translated_text = "My fab new text";
return $translated_text;
}
add_filter( 'gettext', 'change_my_text', 20, 3 );
それが役立つことを願っています