備忘録。そのときそのときに勉強しているもののメモ

immature

WordPress

WordPressのユーザー名を隠したい

更新日:

ブログ上の表示名を「ニックネーム」にしているにも関わらず投稿者アーカイブからユーザー名がすっぱ抜かれていくので覚書メモ。

投稿者アーカイブにアクセスさせない

functions.phpに下記追加

add_filter( 'author_rewrite_rules', '__return_empty_array' );
function disable_author_archive() {
	if( $_GET['author'] || preg_match('#/author/.+#', $_SERVER['REQUEST_URI']) ){
		wp_redirect( home_url( '/404.php' ) );
		exit;
	}
}
add_action('init', 'disable_author_archive');

参考:WordPressのログインユーザー名は丸見え!?

結果

http://example.com/author/userID/でアクセスした際に404にリダイレクトされるようになった。

投稿者の記事一覧が表示されていたページが

404に。

投稿者アーカイブを無効化その2

上記だとnoticeエラーがでるのでそれが気になる場合はこちらを試してもいいかも。

// 投稿者アーカイブを無効化
function disable_author_archive( $query ){
  if( !is_admin() && is_author() ){
    $query->set_404();
    status_header( 404 );
    nocache_headers();
  }
}
add_action( 'parse_query', 'disable_author_archive' );

Login rebuilder

Login rebuilderを使うとログインページを変える設定ができるうえに投稿者アーカイブの表示非表示を設定することができる。

投稿者アーカイブを使用したい場合はどうするか

複数人で管理している場合など、投稿者別にアーカイブがほしい場合もある。
そういう時はEdit Author Slugというプラグインを利用してアーカイブのURLを変更させるのがいいみたい。プラグイン自体は未検証なのでそのうち使ってみたい。

-WordPress
-

Copyright© immature , 2022 All Rights Reserved Powered by STINGER.