WEB DESIGN

新しくWordPressをインストールしたらやっていること

2024-03-23 17:25
Webデザイン

WordPressで作ったサイトの整備をしています。
古いサイトは設定がとっちらかっているため、自分用チェックリストとして「新しくWordPressをインストールしたらやっていること」をまとめました。

ビジュアルリッチエディターを使用「しない」

管理画面のユーザー→ リストから自分のアカウントを選択→プロフィール→個人設定→ビジュアルエディターの「ビジュアルリッチエディターを使用しない」にチェック

勝手にソースを整形してくるエディタが大嫌いなので、リッチエディタの類は全部オフにしてます。

アップロードしたファイルを年月ベースのフォルダーに整理「しない」

管理画面のメディア設定→ファイルアップロード→「アップロードしたファイルを年月ベースのフォルダーに整理」のチェックを外す。

チェックしたままだとFTPソフトでファイルが一覧できなくて不便。
屑フォルダも生成されるので大変ウザいです。

テーマフォルダのfunction.phpを編集

なるべくプラグインは入れたくないので、function.phpでできることはfunction.phpでやってます。

テーマフォルダのfunction.phpの1行目に<?php最後の行に?>を書きます。
これを書くの忘れると動きません。

間に実装したいコードをコピペすればOKです。

WordPressとプラグインのバージョンを非表示にする

セキュリティ対策です。


// WordPressのバージョンを非表示に
remove_action('wp_head','wp_generator');

// プラグインのバージョンを非表示に
function remove_cssjs_ver2( $src ) {
    if ( strpos( $src, 'ver=' ) )
        $src = remove_query_arg( 'ver', $src );
    return $src;
}
add_filter( 'style_loader_src', 'remove_cssjs_ver2', 9999 );
add_filter( 'script_loader_src', 'remove_cssjs_ver2', 9999 );

ただ、これをやった弊害なのかな?
テーマのCSSを更新したのでクエリを渡したかったんだけど、うまくできなかったんですよね。
もう少し検証します。

画像の[caption]~[/caption]挿入を削除する

記事の投稿画面でメディアファイルを挿入すると入る[caption]~[/caption]が大変ウザいので、入らないように設定します。

以前、既に入っている[caption]~[/caption]を手作業で全部削除しました。
めちゃくちゃしんどいので、これは絶対やっといた方がいいです。


// [caption]~[/caption]を挿入を削除
add_filter( 'disable_captions', '__return_true' );

抜粋末尾の「…」の変更

カンマ3つじゃなくて半角スペース+3点リーダーにしたかったので。


function new_excerpt_more($more) {
	return ' …';
}
add_filter('excerpt_more', 'new_excerpt_more');

古いWordPresssだと「続きを読む」だったりします。
なんにも表示したくなければ2行目をreturn '';でいけるとおもいます。

アーカイブページタイトルの余計な文字を削除

アーカイブページでthe_archive_title();を使うと「カテゴリー:○○」とか「タグ:○○」みたいにページタイトルに余計な文字列が入ります。
ウザいので:(コロン)より前の部分を削除します。

the_archive_titleの「カテゴリー:」や「タグ:」を削除する方法を参考にさせていただきました。

サイト内検索の範囲に、カテゴリー名、タグ名、を含める

WordPressで検索範囲にカテゴリーやタグを含める方法を参考にさせていただきました。

パンくずナビを作る

パンくずナビは有名なプラグインがありますが、function.phpにコピペでさくっと実装できるそうです。

コピペでOK!WordPressのプラグインを使わずにパンくずリストを表示させる実装方法を参考にさせていただきました。

本文の最初の画像を取得してサムネイル表示する

WordPressはアイキャッチ画像の設定ができますが、面倒くさいので本文の最初の画像を取得してアイキャッチ画像代わりに使っています。

WordPressで記事の最初の画像を取得してサムネイルサイズで表示するの「コード1」を参考にさせていただきました。

本文に画像がなければ任意のデフォルト画像を表示します。
わたしはここを少し改造して、特定のタグ・カテゴリーがついた記事は別のデフォルト画像を表示しています。


// デフォルト画像の設定
$defaute_url = get_stylesheet_directory_uri(). '/images/default.png';

の部分を以下に書き換えます。


// デフォルト画像の設定
if( has_tag('wordpress') ){
	// WordPressタグがあるとき
	$defaute_url = get_stylesheet_directory_uri(). '/img/thm_default_wordpress.png';
}elseif( has_tag('php') ){
	// phpタグがあるとき
	$defaute_url = get_stylesheet_directory_uri(). '/img/thm_default_php.png';
}elseif( has_category('ティラノスクリプト') ){
	// ティラノスクリプトカテゴリーのとき
	$defaute_url = get_stylesheet_directory_uri(). '/img/thm_default_tyranoscript.jpg';
}else{
	$defaute_url = get_stylesheet_directory_uri(). '/img/thm_default.png';		
}

あとは記事ページの「前の記事」「次の記事」のサムネイルにも、このコードを使いたいので要改造。

my_first_image_thumb();my_first_image_thumb($id);みたいにして「前の記事」「次の記事」のIDを渡してサムネイル画像を出せば、いけるとおもうんだけどなぁ。
いまいち書き方が分からない。

OGP設定

SNSでシェアされたとき用の情報を出力する設定です。
WordPressプラグインなしでOGPの設定、SNSシェア時の画像の設定を参考にさせていただきました。

「アイキャッチ画像が無い時に使用する代替画像URL」は「本文の最初の画像を取得してサムネイル表示する」で設定したmy_first_image_thumb();を使います。


// 画像 (アイキャッチ画像が無い時に使用する代替画像URL)
$ogp_image = my_first_image_thumb();

こんな感じで「画像URL」をmy_first_image_thumb();と指定すればOK。

プラグインをインストール

使っているプラグインは「サイトの用途別オススメWordPressプラグイン」にまとめています。

他のセキュリティ対策はプラグインで

下記はSiteGuard WP Pluginプラグインで設定しています。

  • 「サイトURL/?author=数字」を表示させない
  • 特定のプラグインを除外し、REST APIを無効にする

function.phpに記載してやる場合、以下が参考になりました。

\ SHARE & LIKE /

\ SHARE & LIKE /

歴ヲタ女子向けの幕末・歴史グッズのお店「小間物屋歴創」