WordPress初心者の苦闘記録:設定更

 記事数が多いため、カテゴリからの閲覧が便利なのですが、1件ずつの表示にしていたため、アクセスしにくい。

 そこで、表示件数を10件として、要約表示に変更しました。あわせてサムネイルも表示するようにしました。

 記事の長さがまちまちだったので、サイドバーの表示を長く伸ばしていましたが、短い記事では無意味に長いサイドバーは不要なので、これを短くしました。この要約表示に変更したことで、表示される長さが固定されるので。

WordPressのローカル環境を作る

 Wordpressは、管理人のような素人にとってなかなかハードルが高い。何か一つのことをやろうと思っても、想定外の不具合が起きたりして、その度に後悔の連続。

 たとえば、新しいプラグインを入れたらサイトが表示されなくなったというケースも何度か体験しました。そんなときWordpress熟練者たちが当たり前のように勧めるのが、「WordPressのローカル環境」を作りデバックモードで試すこと。ところが、これがうまく作れない。作っても、このサイトと同じに設定できない。同じにできなければ、「WordPressのローカル環境」を作る意味がなくなってしまう。

 素人管理人が「WordPressのローカル環境」構築にあたり困ったことをメモとして残します。
 順不同です。

ローカル環境のサイト表示がweb上のものと違う

 phpファイルをローカル環境に全部コピーしたはずなのに、表示される画面設定が違う。

 原因:子テーマが有効になっていないために発生する。
 解決策:子テーマを有効にする。

  [外観] ⇒ [テーマ] で、子テーマ(ここでは「Child」)をクリックしてテーマを有効にする。

こんな便利な「プラグイン」!、に欺されてはいけない

 Wordpressを使っていて困るのは、サイトが表示されなくなったり、真っ白な画面になること。Wordpress利用者なら一度ならず経験していることでしょう。

 その原因の大半は、プラグイン。こうすれば便利、サイト表示が速くなる、SEO対策になる、などの言葉に吊られてプラグインを導入したら大変なことになった、という経験があるはずです。

 通常は、他のプラグインとの競合の問題や、デバックモードで試すことを「無責任」に書いている場合がありますが、競合問題はどんなときに起きるのかなどは書かれておらず、役に立たない記述です。デバックモードで試せって? 自分もやらないくせに。

 管理人のわずかばかりの経験では、プラグインは諸刃の剣。その導入により、さまざまな問題が発生する可能性を常にはらんでいます。

 その最たるものが、ページ表示速度が極端に遅くなること。プラグイン紹介サイトでは、ほとんどこの問題を指摘していません。さらに、プラグイン自体が最新の構文ルールに従っていないため、エラーとして認識されてしまうこと。プラグインとしての機能は動いているので気づかないのですが、デバックモードで確認するとおびただしい数のエラーが表示されるプラグインもあります。

 プラグインは、できるだけ入れない。これが基本のように感じます。

ローカル環境の使用方法:デバックモードで使う

【デバッグモードの設定】
 ローカル環境を作る主目的が、プラグインとの相性が良くなかったり、PHPの記述ミスなどで、サイトが表示されなくなるトラブルを避けることです。そんな時に、エラーの内容を表示してくれるのが「 WordPress デバッグモード」です。

① 『wp-config.php』の中の 『define(‘WP_DEBUG’, false);』 の「false」を「true」に変更する。

 テキストエディターとして「メモ帳」はぜったい使ってはいけない。『TeraPad』などのテキストエディターを使う(Windowsの標準機能であるメモ帳は文字コードをUTF-8にして保存すると必ずBOM付きになってしまいます)。

  『wp-config.php』の場所 
     C:\xampp\htdocs\wordpress\wp-config.php

 『wp-config.php』を『TeraPad』で開き、下図の[false] の部分を[true] に変更し、上書き保存します。

has_capに関する警告が出る

 デバックモードにすると、画面上部にエラーメッセージがたくさん表示される。
 その大半は、プラグインが原因らしい。

 あるプラグインを削除したら、10個くらい表示されていたエラーが2個だけになりました。

 この2個のエラーの原因となってるのが、「SwfObj」というプラグインだと確認できました。

 has_capに関する警告が出る場合、まずはプラグインを疑うのが常道のようです。このプラグインを停止したら、二つのエラーが消えました。 

エラーの記述
1. Deprecated: Methods with the same name as their class will not be constructors in a future version of PHP; SwfObj has a deprecated constructor in C:\xampp\htdocs\wordpress\wp-content\plugins\swfobj\swfobj.php on line 42

2. Notice: has_cap がバージョン 2.0.0 から非推奨になった引数付きで呼び出されました。ユーザーレベルの使用は推奨されていません。代わりに権限を使ってください。 in C:\xampp\htdocs\wordpress\wp-includes\functions.php on line 4032

文字列にマーカーで引いたようなラインを入れる方法

CSSに以下のコードを追加
  1.  ログインした状態で自分のサイト上部に表示される[カスタマイズ]をクリック。
  2. 左下にある[追加css]をクリック。
  3. そこに下のタグをコピーして貼り付け、[公開]アイコンをクリックして保存。

 

/*マーカー*/
.line {
  background: linear-gradient(transparent 0%, #ffff72 0%);
	font-weight: bold;
}

 上のコードで[transparent]直後の[0%]は、マーカーの太さを示し、[0%]で黄色で全部塗りつぶす指定。これを[50%]にすると、文字の半分くらいまで黄色で塗られる。

 [font-weight: bold;]でマーカー部分の文字を太文字にしている。普通の文字にするときはこの部分を削除する。

 

使い方:

 強調したい文字をタグで囲む。

<span class="line">マーカーで強調したい文字列</span>

トップページの表示件数の変更

 トップページの表示件数を増やすとページの表示速度が遅くなるので少なくしていたのですが、何かと不便なので16記事の表示に変更しました。

 [ダッシュボード] ⇒ [設定] ⇒ [表示設定] ⇒ [1ページに表示する最大投稿数] ⇒ 16件 に設定

参考:「コピペで簡単!WordPressで文章にマーカーを引く方法 | アルバトロス・ストーク・ハミングバード・スワロー

サイトマップ(全記事リスト)が更新されない

 固定ページのサイトマップ(全記事リスト)は、「PS Auto Sitemap」というプラグインで表示しています。

 記事を更新すると、自動でサイトマップが更新されるのでとても便利。メンテナンスフリーです。ところが、最近の記事でサイトマップに表示されていないものがあることに気づきました。

 この症状は、新規カテゴリーをつくったり、変更したりしたときに発生する現象です。

 直すのは簡単で、固定ページのサイトマップ記事を開き、記事欄をすべて削除し、新たにコードを一行入れて保存するだけです。

 <!-- SITEMAP CONTENT REPLACE POINT -->

PHPの更新ができないトラブル

 ワードプレスの管理画面(サイトヘルスステータス)に、「サイトに重大な問題があります」として「PHPの更新が必要です」と表示される。

 PHPのバージョンは7.1(CGI版)。これを7.4(CGI版)に更新したい。

 何度か更新しようとしたけれど、うまくいかずに挫折。今日は何とか更新できました。

 やり方は簡単なのですが、なぜか、サイトの構成が崩れてしまい、下のようなおかしな画面が表示される。

 PHP更新で真っ白になる事例はあるようですが、管理人のような事例の解決策を見つけることができません。ロリポップにメールを書こうかと思ったのですが、もしかしたらプラグインが原因かもと考えました。

 プラグインをひとつずつ停止していき、その都度、サイトの表示の変化を確認します。

 すると、あるプラグインを停止した途端、サイトの表示が正常に戻りました。

 そのプラグインとは『Head Cleaner』。このプラグインは、「このプラグインは現在使用中の WordPress バージョンではテストされていません。」と表示されています。やはり、これが原因のようです。

 こんなトラブルが起きるから、プラグインは入れたくない。