PHPのバージョンを7系にしてWordPress管理ページの表示が崩れた原因

PHPのバージョンを7系にしたらWordPress管理ページの表示が崩れました。スタイルシートを読み込めてないようですが、原因はwp-include/plugin.php の 600行目でした。この部分のソースを改変します。

このブログはまだPHP5で動かしていますが、自宅のPCにPHP7とWordPressの4.6を新規インストールして動かしたら管理画面の表示が崩れました。スタイルシートを読み込めてないようですが、原因はwp-include/plugin.php の 600行目でした。

ちなみに32Bit版 Linux Mint 18で次のようにして入れた PHP です。関係ないと思いますが、WebサーバーはH2Oでhttpsにしています。

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php7.1-fpm php7.1-cgi php7.1-mbstring php7.1-mysql php7.1-xml php7.1-xmlrpc php7.1-xsl php7.1-zip php7.1-bz2 

wp-include/plugin.php の 600行目は次のようになっています。

do {
        foreach ( (array) current($wp_filter[$tag]) as $the_ )
                if ( !is_null($the_['function']) )
                        call_user_func_array($the_['function'], array_slice($args, 0, (int) $the_['accepted_args']));

} while ( next($wp_filter[$tag]) !== false );

この call_user_func_array が原因でした。上の部分を次のとおりに変えたら直りました。

do {
        foreach ( (array) current($wp_filter[$tag]) as $the_ )
                if ( !is_null($the_['function']) ){
                        $arr = array();
                        foreach(array_slice($args, 0, $the_['accepted_args']) as $a){
                            $arr[] = &$a;
                        }
                        call_user_func_array($the_['function'], $arr);
                }

} while ( next($wp_filter[$tag]) !== false );

PHP の関数 call_user_func_array へ渡す値が参照渡しになっていなかった事が原因です。上の改変箇所ではその値が参照渡しになるように変えています。

参考サイト PHP 5.3: 参照渡しの関数/メソッドを定義してた人は call_user_func_array に注意 – 肉とビールとパンケーキ by @sotarok

ただし、WordPress のバージョンをアップデートすると上書きされて元に戻ってしまうと思います。

プラグインを作る場合、この関数自体にはフックがないので、この関数を呼び出している元の関数にフックする必要がありそうです。

WordPressプラグイン カテゴリ毎の最新記事表示ウィジェット

WordPressでカテゴリーを指定して最新記事を表示できるウィジェットを作りました。アイキャッチを表示したい場合は画像も表示します。アイキャッチがない場合は記事本文の中から最初の画像を抽出できます。また、画像のサイズは指定可能です。

WordPressでカテゴリーを指定して最新記事を表示できるウィジェットを作りました。アイキャッチを表示したい場合は画像も表示します。アイキャッチがない場合は記事本文の中から最初の画像を抽出できます。また、画像のサイズはピクセル単位で指定可能です。

ルックスは以前公開した「WordPress 同一DB内の別ブログ記事一覧表示ウィジェットプラグイン」と同じです。

最近の投稿が次の図の4つで、このうち「ケーキ」と「天丼食べた」が「グルメ」カテゴリー、その他が「未分類」の場合、カテゴリー別に2個のウィジェットを作ると下の赤枠内のように表示されます。

Recent posts of specific category

表示個数は指定できます。上述しましたが、画像のサイズも変更可能です。

表示個数とサイズは変更可能

インストール方法

WordPressの公式ディレクトリに「Recent posts of specific category」という名前で登録しましたので、ダッシュボードからインストールできます。

プラグインを探す際の目印は、当サイト「Big Bang」の公式アイコンです。

Big Bang

このマークは「Big Bang」の2つのBをかたどって作られたもので、宇宙の波動をイメージしています。


お使いのWordPressにログインしてダッシュボードの「プラグイン」⇒「新規追加」と移動します。

「プラグインを追加」の画面上部にある「プラグインの検索」に「Recent posts of specific category」と入力してEnterを押してください。候補がいくつか出てきますが、マークがBig Bangの公式アイコンで、作者が「dwm.me」になっているものが該当のプラグインです。

Recent posts of specific category

みつからない時は、「作成者」に「dwm.me」と入力して検索しなおしても出てきます。

pluginを作成者「dwm.me」で検索

Recent posts of specific category」が検索できたら「いますぐインストール」をクリックします。すると次の画面に移動します。

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

ここで「プラグインを有効化」をクリックしてはじめて使えるようになります。「プラグインを有効化」をクリックするとインストール済みプラグイン一覧の画面に遷移します。

プラグインの一覧で、プラグイン名が「指定カテゴリーの最新記事」、説明が「選択したカテゴリに属している投稿の一覧を表示するウィジェットです。アイキャッチも表示することができます。」、作者が「dwm.me」のものが水色の背景になっていれば有効化されています。

プラグイン一覧の中に表示

設定方法

インストールと有効化ができたら、ダッシュボードの「外観」⇒「ウィジェット」と移動します。

画面の左側に使うことが出来るウィジェットの一覧が並んでいるので、そこから「指定カテゴリーの最新記事」を探します。

ウィジェットの選択

これをドラッグ&ドロップして、ウィジェットエリアの中の表示したい場所に配置します。配置できると次のように表示されるので各項目を設定します。

ウィジェットの設定

カテゴリー

ここで表示させたいカテゴリーを選択します。右端の逆三角を押すと登録済みカテゴリーの一覧が出てくるので、その中から選んでください。

タイトル

ここは指定しなくても構いません。ここにタイトルを指定するとウィジェットが表示される際にそのタイトルが表示されます。空欄にしておくと「(選択したカテゴリー名)の最新記事」というタイトルでウィジェットが表示されます。

表示する投稿数

一覧に表示させたい記事数を半角数字で記入します。数字を入れたのに、その数が反映されない場合は半角数字でなく全角で入力していないか確かめて下さい。

数字以外の文字、マイナスの値やゼロなど無効な数が指定された場合は5個表示します。指定個数分だけ記事がない場合はあるだけの表示になります。

リンクを別窓で表示

チェックを入れると、リンクをクリックした時に別窓を開いて表示します。

投稿日を表示しますか?

投稿日を表示させたい場合はチェックに印をつけて下さい。チェックしない場合は日付は表示しません。

日付の前で改行する?

この項目は「投稿日を表示しますか?」がチェックされていない場合は無視されます。

「日付の前で改行する?」をチェックしていない場合は、タイトルの後ろに日付を表示します。チェックを入れるとタイトルの下行に日付を表示します。

サムネイルを表示する?

チェックを入れるとアイキャッチが指定されているページでは、タイトルの左にアイキャッチを表示します。投稿ページにアイキャッチが指定されていない場合、以下の設定をしないと空白になります。

「サムネイルを表示する?」がチェックされていない場合、これより下の項目は指定しても無視されます。

横幅

タイトルの左に表示する画像の横幅を半角数字で指定して下さい。半角数字で指定していない場合、45ピクセルで表示します。

縦のサイズは元の画像に合わせた割合で自動調整します。比率を無視して正方形に表示させたい場合は次の項目にチェックを入れて下さい。

正方形で表示?

ここをチェックすると、正方形でない画像も比率を無視して正方形で表示します。サイズは上の項目「横幅」で指定したものになります。

本文中から画像を抽出する?

アイキャッチが指定されている場合はアイキャッチを表示しますが、アイキャッチがない場合に記事本文から画像を抽出して、最初に見つかったものを表示します。

ただし、横幅あるいは高さが1ピクセルの画像は抽出しません。

デフォルトのサムネイル

アイキャッチが指定されていない場合に、特定の画像を表示させたい時はここにそのURLを指定して下さい。

優先順位として

  • アイキャッチがあれば表示
  • 「本文中から画像を抽出する?」にチェックが付いていて、画像が見つかればそれを表示
  • そのどれもなければ指定したURLの画像を表示

となります。

画像がない時WordPressのロゴを表示?

この項目は「デフォルトのサムネイル」が指定されていれば無視されます。「デフォルトのサムネイル」が未指定で、ここにチェックを入れると、アイキャッチもなく本文中からの抽出画像もない時、タイトルの左にWordPressのロゴを表示します。

以上です。問題があった際はコメント欄にご記入くださると助かります。

Seesaa等で独自ドメインで公開しているブログを公開中断せずにWordPressへ移行する方法

Seesaaブログやライブドアブログなどを独自ドメインで運営している方がブログの公開中断をせずにWordPressへ移行出来る方法です。WordPressをインストールするには、そのドメインでトップページにアクセスする必要があります。ところが、それは公開中のブログになっているのでインストールページが開けないという事で行き詰まっている方がいるような気がします。という事であれば、次の手順で移行できます。

Seesaaブログや、無料になったライブドアブログなどは、独自ドメインでブログを公開できますが、独自ドメインで運営しているブログの公開中断をせずに、そのままWordPressへ移行する方法です。

無料ブログで独自ドメインを使っていない場合や、ドメインを変更しても問題がない場合の移転方法は、このページではなく、次のページをご覧ください。 » 無料ブログからWordPressへデータを移動する手順

独自ドメインでブログ運営中の方がWordPressへ移行する際に悩むのは、WordPressをインストールして設定したくてもインストールページが開けないという事ではないでしょうか。

通常の方法でWordPressをインストールするには、そのドメインでトップページにアクセスする必要があります。ところが、そのドメインのトップページは、公開中のブログになっているので、インストールページが開けない。という事で行き詰まっている方がいるような気がします。

ドメインは公開中のブログに向いているので、インストールページにアクセスできない。だから移行できない。という事であれば、次の手順で移行できます。

運用中のドメインのままWordPressへ移行する手順

次の順番で移行します。

実行前にテスト用の新しいブログを作ってリハーサルしてください。やり方を確認、理解してから本サイトの移転をしてください。

  1. 一時的な仮ドメインを作る
  2. 仮ドメインサイトへWordPressをインストール
  3. そのWordPressへ公開中のブログデータをコピー
  4. データベース内のURLを書き替える
  5. DNSの設定でドメインがWordPressへ向くように変更
  6. ブログの移行完了

まず、使っていないサブドメインで一時的なアドレスを用意します。

たとえば、持っているドメインがexample.comなら、サブドメインでtemp.example.comなどのURLを作り、そのtemp.example.comにWordPressをインストールし、画像ファイルや内部リンクなどの調整をデータベースで行ないます。

データベースで設定と言っても、さほど難しい作業はありません。万が一失敗しても、DNSの設定を変えるまでは、公開中のブログに影響しないのでやり直せばいいだけです。

データの中のURLをtemp.example.comではなく、example.comにREPLACE(書き替え)した後、DNSの設定で、URLがそのWordPressに向くようにすれば、問題なく移行できます。

上級者向けに結論を書くと、このページで行うことは次の3点を実行するのと同等です。

MySQLでwp_optionsに登録してあるURLを変更
update wp_options
set option_value = replace(option_value, ‘temp_domain’, ‘origin_domain’);
MySQLで画像の内部リンクURLを変更
update wp_posts
set post_content = replace(post_content, ‘temp_domain’, ‘origin_domain’);
公開フォルダをリネーム
mv temp.example.com example.com

一時的な仮ドメインを作る

最初にやる事は、今使っていないサブドメインを追加して、そのドメインにアクセスできる状態にすることです。そして、そのドメインでWordPressを立ち上げます。すべての設定が終わったら、そのサブドメインは削除します。

たとえば、今公開しているブログが
http://example.com なら、

一時的に作るアクセス先を
http://temp.example.com などとします。

メインのドメインの設定はまだ変更せず、サブドメインtemp.example.comを追加で作り、移転先のサーバーに設置。DNSを設定して、その公開フォルダにアクセスできるようにします。

DNSの設定方法がわからない、あるいは怖くて出来ないというのであれば、次の方法もあります。大抵のレンタルサーバーは、サーバーが持っているドメインのサブドメインを貸してくれるはずです。

例えば、このブログを置いているバリューサーバーでは、valuesv.jp、vsw.jp、uvs.jp、xvs.jp、zvs.jpなどのドメインに好きなサブドメインをつけてサイトを公開できますし、ロリポップ!では104種類のドメインから選んでサブドメインの運用ができます。それを使って一時的なサイトを作ります。

一時アドレスにサーバー所有のドメインを使う場合は、契約しているレンタルサーバーの説明を読んで設定してください。

一時的なサイトにアクセスできるようになったら、そこへWordPressをインストールします。

この時、WordPressをインストールしたデータベースと公開フォルダは、そのまま移転後のブログでも運用する事になります。

ですから、公開フォルダ名を指定できる場合は、最終的に公開するブログ用の公開フォルダ名にしておきます。公開フォルダ名を指定できない場合は、そのままの公開フォルダ名で大丈夫です。

仮ドメインサイトへWordPressをインストール

仮ドメインのサイトにアクセスできるようになったら、そこにWordPressをインストールします。

具体的なWordPressのインストール方法は、次のページに書いています。それを参考にして実行してください。
無料ブログからWordPressへデータを移動する手順

公開しているブログが複数あって、それを移設したい場合は次も参考にしてください。
データベースが1つだけのサーバーでWordPressを複数設置する方法

仮設置したWordPressのデーターベースを、そのまま公開後のブログでも使います。ですから、複数のWordPressを同一データベースにインストールする場合は、テーブル接頭辞に公開後のブログ用の接頭辞をつけておきます。

WordPressへ公開中のブログデータをコピー

上のページの通りに実行すれば、現在公開中のブログデータをWordPressへコピーできます。

ただし、Seesaaやライブドアなどの無料ブログからWordPressへ移行する場合、画像データはコピーされません。またドメインは同じでも、ページごとのURLは変わってしまうかもしれません。それを避けるためには、次の方法を参考にしてください。

画像データをコピーするためには、次のプラグインを使ってください。
MT形式からWordPressへ移行した際に画像をインポートするプラグイン

「MT形式からWordPressへ移行した際に画像をインポートするプラグイン」を使うと、画像ファイルのURLが公開中のブログURL「example.com」から一時サイトのサブドメイン付きURL「temp.example.com」に自動で書き換えられますが、それで構いません。今は気にしないでください。WordPressの画像ファイル保存パスと、インポート前の画像ファイル保存パスは違うので書き換えは必要です。

ページごとのURLを変えずに維持するには次の方法を使ってください。
WordPress “Custom Permalinks”で引っ越したブログのURLを維持する

ここまでは、WordPressへの通常の移行方法と同じです。ルックスの変更をしたい場合は、テーマ(テンプレート)を変えるなどしてください。

仮サイトtemp.exampe.comで完璧にブログが表示できるようになったら、次へ進みます。

データベース内のURLを書き替える

ここまでで、独自ドメインを使って公開しているブログがWordPressへ移行されました。問題なのは、ドメインが違っていることだけです。後はドメインを書き換えれば、今公開中のブログとWordPressを置き換えられます。

ドメイン変更をするには、WordPressの管理ページの「設定 » 一般」を開きます。

項目の中に「WordPress アドレス (URL)」と「サイトアドレス (URL)」というのがあります。

アドレスの指定

この2つのURLが一時サイトのURLになっています。この2つの項目の中のドメインを、一時サイトのものから、移転するブログの本当のドメインに書き替えます。

アドレスを変更

書き換えたら、ページの下にある「変更を保存」ボタンを押します。そして、管理ページにアクセスできなくなったら成功です。

WordPressのURLはすべて、上の2つの設定に基づいて決められますので、設定変更前の管理ページのドメインは「temp.example.com」です。しかし「変更を保存」後の管理ページのドメインは「example.com」に変わります。

そのドメインは、まだ「WordPressではない移転前ブログ」に向いているので、管理ページのURL「http://example.com/wp-admin/options-general.php」は存在しないページです。

ですので、管理ページにアクセスできなくなったら成功です。データベース内のURLが変更されたので、DNSの設定をすれば、WordPress版のブログを見ることができます。

ただ、今のままだとWordPress版ブログの画像ファイルは一時サイトに向いたままです。一時サイトにはもうアクセスできないので、画像が表示されなくなります。

画像の内部リンクURLを修正

ブログの記事で画像を一切使っていないのであれば、この項目は必要ありません。移転前のブログURLとWordPressに移転後のブログURLは同じなので、内部リンクの修正は必要ありません。

ただ、「MT形式からWordPressへ移行した際に画像をインポートするプラグイン」を使って画像ファイルをインポートした場合は、インポート後のURLに自動で書き替えられるので、一時サイトのURLになっています。それを、正規の公開ブログ用URLに書き替えます。

そのためには、レンタルサーバーのphpMyAdminにログインします。ログインするとページ上部のメニューの中に「SQL」という項目があるので、その「SQL」のページを開きます。

phpMyAdmin

開いたページで次のように打ち込んで実行します。

テーブル接頭辞が wp_
一時サイトのドメインが temp.example.com で ブログ公開ドメインが example.com の場合

UPDATE wp_posts SET post_content = REPLACE(post_content, ‘temp\.example\.com’, ‘example\.com’);

このコマンドで、すべてのページのサブドメイン付き「temp.example.com」が、全て一括でサブドメインなし「example.com」に書き替えられます。

詳しい説明は「WordPress内の特定文字列をMySQLのREPLACEで一括置換する方法」に書いていますので、実行前にそれを読んで確認してください。

DNSの設定でドメインがWordPressへ向くように変更

これで、WordPressの中身は、現在公開しているブログの内容と同じになりました。あとは、DNSの設定でURLの飛び先をWordPressにするだけです。

それは、契約しているドメイン会社や、レンタルサーバーの管理ページによって違うので、自分の契約しているドメイン管理会社とレンタルサーバーのマニュアルを見て実行して下さい。

その際に注意するのはWordPressの公開フォルダの指定を間違えない事です。もしも、公開フォルダの名前が指定できない場合は、レンタルサーバーで公開ドメイン用のURL設定をした後で、作られた公開フォルダを削除して、WordPress一時サイト用の公開フォルダの名前を、削除したフォルダのものに書き替えます。

最後に、一時アクセス用のドメイン temp.example.com は不要なので、その設定を削除するのを忘れないでください。

DNSの設定が浸透するまで少し時間がかかりますが、成功していればWordPress版のブログが表示されるようになります。

ブログのログインURLは

http://ブログのドメイン/wp-login.php

です。ここからWordPressにログイン出来るようになります。ユーザー名もパスワードも一時サイトの時と同じです。

WordPress 同一DB内の別ブログ記事一覧表示ウィジェットプラグイン

ひとつのデータベースに複数のWordPressをインストールして、ブログを複数運営している時に、「別ブログの最新記事一覧」をサイドバーに表示するプラグインを作りました。ライセンスはGPL2で公開します。ご自由にお使いください。ダウンロード:Recent Posts of Site in Same DB

ひとつのデータベースに複数のWordPressをインストールして、ブログをいくつか運営している時に、「別ブログの最新記事一覧」をサイドバーに表示するプラグインを作りました。

ひとつのデータベースにブログを複数入れるというケースは、そうそうないので需要も少ないと思いますが、ご自由にお使いください。ライセンスはGPL2で公開します。

ダウンロード:Recent Posts of Site in Same DB

サイドバーに表示

Recent Posts of Site in Same DB

英語がわからないので、ネイティブに通じる名前なのかはわかりませんが、WordPress標準の「最新の投稿」ウィジェットが「Recent Posts」なので、それに「Site in Same DB」を足してみました。「同じデータベースの中にあるサイト」という意味のつもりなんですが、英文として正しいのかわかりません。

Recent Posts of Site in Same DB

それでも一応、日本語、英語の2カ国語対応で作っています。日本語のブラウザで管理パネルの「ウィジェット」を開けば、入力項目が日本語で表示されると思います。英語版のブラウザで開けばブロークンな英語で表示されます。

ただし、同じデータベースの中にあっても、マルチサイト化してあるWordPressのデータは読みません。未対応です。同一DB上にマルチサイト化済のWordPressとマルチサイトではないWordPressが混在している場合、マルチサイトでないWordPressのデータだけが読み込めます。

ちなみに通常のWordPressはマルチサイト化されていません。

インストール方法

WordPress公式プラグインではないので、今見ているこのページからダウンロードしてください。.zipで圧縮してあります。

ダウンロード:Recent Posts of Site in Same DB

.zipを解凍すると「recent-posts-of-site-in-same-db」という名前のフォルダになります。中身は以下の通りです。

  • recent-posts-of-site-in-same-db.php (プラグイン本体)
  • recent-posts-of-site-in-same-db.css (ウィジェット用スタイルシート)
  • image/ (フォルダ)
    • w-logo-blue.png (WordPressのロゴ画像)
  • languages/ (フォルダ)
    • recent-posts-of-site-in-same-db-ja.po (日本語化ファイル)
    • recent-posts-of-site-in-same-db-ja.mo (日本語化ファイル)

解凍済の、この一式を「recent-posts-of-site-in-same-db」のフォルダに入れたまま、フォルダごと全部、FTPでサーバーにアップロードします。

アップロード先は、サーバーにインストールしたWordPressの

wp-content/plugins

の中です。wp-contentの中にpluginsというフォルダがあるので、その「plugins」の中にアップロードします。

結果として、配置先は「wp-content/plugins/recent-posts-of-site-in-same-db」になります。

アップロード先が間違っていなければ、WordPress管理ページにログインして「プラグイン => インストール済みプラグイン」の一覧の中に「Recent Posts of Site in Same DB」が、表示されています。

インストール済みプラグインに表示される

説明が「同一データベースにインストールしてある別サイトの記事一覧を表示します。」で、作者が「Tom」になっているのが、そうです。

プラグインの中に「Recent Posts of Site in Same DB」を見つけたら、「有効化」という文字をクリックします。

「有効化」という文字が「停止」に変われば、プラグインが使える状態になりました。

設定方法

プラグインが有効化されれば、管理ページの「外観 => ウィジェット」に「別ブログの最近の投稿」という項目が増えています。

ウィジェットの一覧

使い方は、他のプラグインと同じです。

別ブログの最近の投稿

他のプラグインと同じように、左側から「別ブログの最近の投稿」を右側の配置したい場所に運んで離します。

すると、設定を入力できるようになるので、設定します。

テーブル接頭辞

いちばん上の「テーブル接頭辞: (入力必須)」だけは必須項目です。これが入力されていない、あるいは間違えた内容が書きこまれていると、投稿一覧は表示されません。

テーブル接頭辞を入力

マルチサイトでない方法で、ひとつのデータベースに複数のWordPressをインストールするには「テーブル接頭辞」を変えないといけないので、インストールした時に「テーブル接頭辞」を変えているはずです。そのテーブル接頭辞を入力します。

phpMyAdmin

もし、テーブル接頭辞がわからなければ、phpMyAdminで確認できます。

WordPressを通常の状態でインストールすると、データベースに次の11個のテーブルが作られますが、この wp_ の部分が「テーブル接頭辞」です。

  • wp_commentmeta
  • wp_comments
  • wp_links
  • wp_options
  • wp_postmeta
  • wp_posts
  • wp_term_relationships
  • wp_term_taxonomy
  • wp_terms
  • wp_usermeta
  • wp_users

「テーブル接頭辞」が wp_ の3文字の場合なら、 wp_ と、その3文字を打ち込みます。

次のサンプルは example_ という「テーブル接頭辞」でインストールしたWordPressの「最近の投稿」を表示させるための設定です。

テーブル接頭辞を入力

接頭辞の設定だけを終えた時のブログの状態が次の図です。ちなみに、接頭辞が example_ のブログには「example」というタイトルをつけていて、ページは2ページだけあります。

テーブル接頭辞だけを設定して表示

ページタイトルの左に三角みたいな模様がありますが、これは使っているテーマ(テンプレート)がつけているものです。このページのサンプルでは、テーマに「Travelify」を使っています。

テーマを変えると、次のように表示が変わります。

Twenty Fifteenで表示Twenty Fifteenで表示
Twenty Fourteenで表示Twenty Fourteenで表示
Twenty Thirteenで表示Twenty Thirteenで表示

タイトル

タイトルという項目は、ウィジェットのヘッダに表示するタイトルです。上の例では「exampleの最近の投稿」になっている部分です。

タイトルの設定

ここに何も書き込まないと、接頭辞で読み込むブログのタイトルを調べ「◯◯◯の最近の投稿」と表示します。◯◯◯はブログのタイトルです。

それが嫌な場合はタイトル項目に書きこめば、書き込んだものがタイトルとして表示されます。

タイトルを変更タイトルを変更
変更したタイトルで表示変更したタイトルで表示される

表示する投稿数

最新のページからさかのぼって、表示する投稿数に書いた数字の分だけ一覧を表示します。ただし、指定の数字よりも公開しているページが少ない場合は、その分だけしか表示できません。このページの例では記事が2ページしかないブログを使っているので「表示する投稿数」が5でも、表示されるのは2ページです。

「表示する投稿数」は、半角で入力します。入力したのに反映されないという場合は全角で打ち込んでいないか確かめてください。全角で入力しても反映されません。

リンクを別窓で表示?

「リンクを別窓で表示?」に印をつけて保存すると aタグに target=”_blank” を追加します。印がない場合は、リンクをクリックすると、別の窓を開かずにリンク先に移動します。

投稿日を表示しますか ?

ブログの投稿日を表示したい場合は、ここに印をつけて保存します。

投稿日を表示しますか ?

日付の前で改行する?

ページタイトルと日付を別の行に分けたい場合は、ここに印をつけます。

ただし、テーマ(テンプレート)によっては、はじめからタイトルと日付を別行で表示しているものもあるので、その場合は印をつけてもつけなくても日付の前で改行されます。

日付の前で改行しない日付の前で改行しない
日付の前で改行する日付の前で改行する

サムネイルを表示する?

ページタイトルの左に画像を表示させたい場合は「サムネイルを表示する?」に印をつけます。

サムネイルを表示する?

「サムネイルを表示する?」だけに印をつけて、その他の設定をしない場合は「アイキャッチ画像」がある場合のみ、そのアイキャッチ画像を表示します。アイキャッチ画像の設定は記事を投稿するページの右下で行ないます。

アイキャッチ画像の設定

アイキャッチ画像があるページのタイトル脇には、その画像が表示され、アイキャッチ画像がないページの脇には画像のサイズ分だけ空白が出来ます。

アイキャッチ画像を表示

横幅

サムネイル画像を表示する横幅をピクセルで指定します。初期設定は45ピクセルにしています。横幅を指定すると、もとの縦横比率を守ったまま、高さを自動調節します。

この設定の数字の記入は半角でします。全角で入力しても反映しません。数字を打ち込んだのに反映されないという場合は、全角で入力していないか確かめてください。

正方形で表示?

横幅を指定すると、高さを自動で計算しますが、そうではなく正方形にしたい場合は「正方形で表示?」に印をつけます。

正方形にすると縦横の比率が狂いますが、縦長の画像ばかりが多いような時に必要なら設定してください。縦長の場合、高さだけを圧縮することになりますので、横幅が目立つようになります。知り合いの女性の写真が多い場合は使うのを控えたほうがよろしいかと存じます。

通常のサムネイル表示通常のサムネイル表示
サムネイルの正方形表示サムネイルの正方形表示

本文中から画像を抽出する?

「本文中から画像を抽出する?」に印をつけると、アイキャッチ画像が登録されていないページでは、本文中から画像を探して、いちばん最初に登場する画像を表示します。

アイキャッチ画像があるページでは、アイキャッチを表示するので、この設定は関係ありません。

また、アイキャッチ画像もなく、本文中にも画像がない場合は、空白を表示します。空白が嫌な場合は、この下の設定をしてください。

デフォルトのサムネイル

画像がないページで空白を表示させたくない場合は「デフォルトのサムネイル」を、http:// で始まるURLで登録します。

アイキャッチ画像がなくて、本文中にも画像がない場合、あるいは本文中から画像を抽出する設定をしていない場合に、空白のスペースではなく、登録したURLの画像を表示します。

画像がない時WordPressのロゴを表示?

この項目は「デフォルトのサムネイル」が設定してある場合は無視されます。

ここに印をつけると、「デフォルトのサムネイル」が設定されていない時に、「デフォルトのサムネイル」の代わりにWordPressのマークを表示します。

WordPressのロゴ

このロゴは、 wp-admin/images にある w-logo-blue.png と同じものです。

サイドバーに表示

生成されるHTMLとスタイルシート

プラグインで生成されるサイドバーのウィジェットには次のクラス名がつきます。

  • widget_recent_entries
  • recent_entries_other_site

widget_recent_entries」は、WordPress標準のウィジェット「最近の投稿」につくクラス名です。これを「Recent Posts of Site in Same DB」にもつけています。

recent_entries_other_site」は、「Recent Posts of Site in Same DB」独自のクラス名です。標準の「最近の投稿」と統一したい部分は、「widget_recent_entries」クラスに設定し、このウィジェットだけに適用させたいスタイルシートは「recent_entries_other_site」クラスに設定してください。

サムネイルを表示させない場合は、標準ウィジェットの「最近の投稿」と全く同じに表示されます。ただし、日付の前に改行をつける場合だけ、日付の前に <br /> が付きます。

テーマ「Preus」で表示。
テーマ「Preus」で表示

テーマ「RestImpo」で表示。
テーマ「RestImpo」で表示

サムネイル(アイキャッチ)を表示させる場合のHTMLは次のようになります。横幅と高さは直接埋め込んでいます。

<aside id="recent-posts-of-other-site-xx" class="widget widget_recent_entries recent_entries_other_site">
	<h3 class="widget-title">タイトル</h3>
	<ul>
		<!-- 画像がある場合 -->
		<li class="with_image">
			<a href="">
				<img src="" style="width:45px;height:auto;" />
			</a>
			<span>
				<a href="">ページタイトル</a>
				<br />
				<span class="post-date">日付</span>
			</span>
		</li>
		<!-- 画像がない場合の空白 -->
		<li class="with_image">
			<span style="margin-left:55px;">
				<a href="">ページタイトル</a>
				<br />
				<span class="post-date">日付</span>
			</span>
		</li>
	</ul>
</aside>

また、プラグインが読み込んでいるスタイルシートは次のとおりです。

.recent_entries_other_site ul {
	background-image: none !important;
}

.recent_entries_other_site li.with_image:before,
.recent_entries_other_site li.with_image:after {
	content: " " !important;
	height: 5px !important;
	display: block;
	visibility: visible;
}

.recent_entries_other_site li.with_image:after {
	clear: both;
}

.recent_entries_other_site li.with_image {
	display: inline;
	vertical-align: middle;
	background-image: none;
	margin-left: 0;
	padding-left: 0;
	line-height: 140% !important;
}

.recent_entries_other_site li.with_image img {
	float: left;
	margin-right: 10px;
}

.recent_entries_other_site li.with_image:last-child img {
	margin-bottom: 0;
}

.recent_entries_other_site li.with_image > span {
	display: block;
	overflow: hidden;
}

プラグインに添付されたスタイルシートを一切編集しないで、そのまま使った場合、サムネイル付きの表示は次のようになります。

テーマ「Preus」で表示。
テーマ「Preus」で表示

テーマ「RestImpo」で表示。
テーマ「RestImpo」で表示

たとえばページタイトルごとに下線をつけて区切りたいという時はスタイルシートに次の通り追加します。

.recent_entries_other_site li.with_image:after {
	border-bottom:1px solid #e3e3e3 !important;
}

改変したスタイルシートをテーマ「RestImpo」に適用。
改変したCSSをテーマ「RestImpo」に適用

スタイルシートを追加する場合、プラグインフォルダのCSSに直接追加しても大丈夫ではありますが、上書きすると消えてしまいます。間違えて消さないためには次のページを参考にして、独自のテンプレートフォルダを作り、その中のstyle.cssに書くことをお勧めします。

WordPress 更新しても上書きされないテーマのカスタマイズ方法

よくあるかもしれない質問

Q 私は同じデータベースにブログを4つインストールしています。4つのブログの最新記事を表示できますか?

A ウィジェットを4つ作って、それぞれのテーブル接頭辞を登録してください。ウィジェット毎にそのブログの最新の投稿一覧を表示できます。

Q 他のブログの一覧にはサムネイルが表示されますが、「このブログの最近の投稿」には画像がつきません。統一して「このブログの最近の投稿」にもサムネイルを表示したいです。

A WordPressにはじめから入っている「最近の投稿」ではサムネイルは表示できません。代わりにこのページからダウンロードしたプラグインを使って、「このブログ」のテーブル接頭辞を登録してください。プラグインを設置している「今のブログ」の最近の投稿も表示できます。

WordPressプラグイン「Jetpack」の購読メール解除方法

Jetpackのメール購読の登録と解除の方法です。コメントを頂いた方から問い合わせを受けました。コメントしたらメールが来たので確認ボタンを押したんだけど、英語のページが開きました。英語読めないので、どうしたらいいのか教えてくださいという内容です。

コメントを頂いた方から問い合わせを受けました。

コメントしたらメールが来たので確認ボタンを押したんだけど、英語のページが開きました。英語読めないので、どうしたらいいのか教えてくださいという内容です。

Jetpack 購読設定

そもそも、何でメールが届いたのかというと、wordpress.comが出しているプラグイン「Jetpack」の購読設定が理由です。

Jetpack 購読設定

これを有効にするとコメントフォームに項目が追加されます。

Jetpack 購読設定

初期設定ではチェックはついていませんが、「新しいコメントがついたらメールで通知。」にチェックを入れてコメントを送信すると、そのページにコメントが追加された時、お知らせメールが届きます。また「新しい投稿をメールで受け取る」に印をつけると、新しいページ(記事)が公開された時にお知らせメールが届きます。

コメントいただいた方は、返信があったら知りたいと思って「新しいコメントがついたらメールで通知。」にチェックを入れて下さったようです。

そうすると、コメント送信とほぼ同時に

[購読] Big Bang のコメント – 承認してください

というタイトルのメールが届きます

Jetpack 購読設定

メールアドレスの打ち間違いや、いたずらでメアドを入力して、関係ない人にメールが届いた場合は、そのまま無視すれば、それ以降メールは送信されません。

「フォローを確認」ボタンを押すと、次のページが開きます。

Jetpack 購読設定

オレンジ色の所に

Your subscription has been activated!

と書かれているんですが、この時点でフォローが有効になります。

それ以降は、そのページにコメントが付くとメールが届きます。

Jetpack 購読設定

新しいコメントの全文がメールで届き、「返信」ボタンでそのコメントの返信フォームを開けます。

Jetpack 購読設定

購読メールの解除方法

解除するには、メールのいちばん下にある

メール配信頻度の変更: フォローアップコメントの配信をすべて停止するか、購読設定を編集できます。

を押します。

すると次のページが開きます。

Jetpack 購読設定

「I don’t want any more emails!」と書かれた下の「Stop All Emails」を押すとメール配信を終了します。

また「Yes, I want to delete my subscription」と書かれた下の「Confirm Deletion」を押すと、メールアカウントの登録自体を削除します。同じメールアドレスで複数のブログをフォローしている時にこれを押すとすべての設定が破棄されます。

「Stop All Emails」ボタンを押すと次のページが開きますが、設定を解除したという趣旨の

Your email address has been blocked from receiving further subscription emails – come back soon!

と書かれています。これでメールは来なくなります。

Jetpack 購読設定