特定のサブドメインだけを別サーバーで運用するDNSの設定

こないだツイッターで「特定のサブドメインだけ〇〇サーバーで運用したいのに、〇〇サーバーはサブドメインだけを指定できないから公開できない」という内容のツイートを見かけまして、それ根本的な間違いをしてるんじゃなかろうか?などと思ったんですが、多分公開できると思います。

こないだツイッターで「特定のサブドメインだけ〇〇サーバーで運用したいのに、〇〇サーバーはサブドメインだけを指定できないから公開できない」という内容のツイートを見かけまして、それ根本的な間違いをしてるんじゃなかろうか?などと思ったんですが、多分公開できると思います。

考えられる方法は2通りあります。

  1. サブドメインなしのメインドメインごと登録して設定する
  2. 特定のサブドメインをメインドメインとして登録し設定する

サブドメインなしのメインドメインごと登録して設定する

状況として次の場合を想定します。

  • ドメイン管理は株式会社Aドメイン
  • サブドメインなしの example.com はレンタルサーバーB
  • サブドメインありの hoge.example.com はレンタルサーバーC

株式会社AドメインのDNS(ネームサーバー)で example.com の設定が正しく出来ている場合、ブラウザに http://example.com と打ち込むと、水面下では次のような攻防が繰り広げられます。

イメージ:
.comのネームサーバーに聞く
ブラウザ「example.com さんのIPアドレスを教えてください」
ネームサーバー「example.com さんなら株式会社Aドメインに聞けば分かりますよ」
株式会社Aドメインのネームサーバーに聞く
ブラウザ「example.com さんのIPアドレスを教えてください」
ネームサーバー「example.com さんならレンタルサーバーBに聞けば分かりますよ」
レンタルサーバーBのネームサーバーに聞く
ブラウザ「example.com さんのIPアドレスを教えてください」
ネームサーバー「それなら 127.0.0.1ですよ」
127.0.0.1にアクセス » ページ読み込み

結論として、DNSとは即ち「たらいまわし」と言えます。

ここで、hoge.example.com だけは、レンタルサーバーCで運用する事にした場合、ブラウザに http://hoge.example.com と打ち込むと、株式会社Aドメインのネームサーバーはこう答えます。

「hoge.example.com さんならレンタルサーバーCに聞けば分かりますよ」

株式会社Aドメインのネームサーバーに問い合わせた段階で
サブドメインなしの example.com は レンタルサーバーB へ
サブドメインありの hoge.example.com はレンタルサーバーC へ
と振り分けられます。

ということは、こういう事になります。

レンタルサーバーB と レンタルサーバーC の両方で、example.com の設定をしていて支障はない。

わかるでしょうか?冒頭のツイート「〇〇サーバーはサブドメインだけを指定できないから公開できない」これは、何も問題がないという事です。

おそらく、ツイートした人は「◯◯サーバーではサブドメインだけの指定しかしてはいけない」と思っているのではないでしょうか。何故なら、サブドメインなしの example.com はレンタルサーバーBで使うから。でも、それは間違いです。

ちょっと、ややこしいですが、株式会社Aドメインのネームサーバーが正確にレンタルサーバーB と レンタルサーバーC への振り分けを行なってくれるなら、レンタルサーバーC へはサブドメインなしのexample.com の問い合わせは絶対に行われません。だから、レンタルサーバーC で example.com の設定をしても使われないだけです。使われないだけなので設定しても問題ないんです。

具体的には、レンタルサーバーCでサブドメインなしの example.com を登録してその中で、hoge.example.com の設定を次のようにすれば、レンタルサーバーCで hoge.example.com のサイトは運用できます。

a hoge xxx.xxx.xxx.xxx

特定のサブドメインをメインドメインとして登録し設定する

通常は、上の設定で問題ありません。

ただし、イレギュラーな方法としてレンタルサーバーCの登録ドメインを、サブドメインなしの hoge.example.com にしてしまうという方法も考えられます。サブドメインなしの hoge.example.com です。

example.com は .com のサブドメインです。なのに、example.com をサブドメインなしのメインドメインとして登録できるなら、hoge.example.com もサブドメインなしのメインドメインとして登録できるという事になります。

その場合、設定は次のようになります。

a @ xxx.xxx.xxx.xxx

ただこの方法だと後々、example.com の全てのサイトをマルっとレンタルサーバーCで運用するとなった場合、設定をやり直さなくては面倒なので、最初の「サブドメインなしのメインドメインごと登録して設定する」方法でやっておいた方が面倒なことにならないのではないかと思います。

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

フリー著作物と集団知の時代

僕もいくつかフリーで配布しているスクリプトやプラグインはあるけど、昔は黙って使われると腹が立ったし、使うなら断れと思った。実際、ブログにそういう断りを入れていた時期もある。でも、多分それは違うんだろうな。と、今は考えている。とは言っても、ムカツクことは正直あって、コメント欄に絵文字を入れられるスクリプトを公開したら仲のいい友達が使ってくれた。実際には会ったことのないネット上の知り合いだけど。

以前、ブログのページでプログラムのソースコードを引用させてもらった方がいて、その方とは面識がなかったんだけど引用させて頂いた挨拶を先方のブログに残した事がある。

そうしたら、次の返事を頂いた。一部抜粋。

ネットで拾えるものは、もう自由で良くね!かな?。

ここで、誤解があるといけないから補足すると、その方の言っているのは「自分の書いたソース」に関して、黙って勝手に使えばいいと言ってくれているわけだ。

僕は、それを読んで凄いなと思った。

こんな事もあった。

ネット上の知り合いが、ブログのテンプレートを無償公開していて、たまたま情報商材アフィリエイトの詐欺みたいなサイトが、そのテンプレートを使っていたので、「使われてるの知ってる?」って聞いたらこう言われた。

「知りませんでした。でも、公開してるんだから誰でも使ってくれれば嬉しいです」

これも、また凄いと思う。清濁併せ呑むという事か。

僕もいくつかフリーで配布しているスクリプトやプラグインはあるけど、昔は黙って使われると腹が立ったし、使うなら断れと思った。実際、ブログにそういう断りを入れていた時期もある。

でも、多分それは違うんだろうな。と、今は考えている。

とは言っても、ムカツクことは正直あって、コメント欄に絵文字を入れられるスクリプトを公開したら仲のいい友達が使ってくれた。実際には会ったことのないネット上の知り合いだけど。

そして、その絵文字ソフトに不具合があったので、ある日バージョンアップをした。そこで、バージョンアップをしたから交換してくれと言ったら拒否された。

理由は、その不具合には困っていない。新バージョンには公開者サイト(つまり僕)へのリンクがある。そのリンクを外すなら交換する。という事だった。

その瞬間、その大事だった友達は、僕の中では大切ではない、ただの知り合いになってしまって、その後はほとんど会話をしなくなったし、そのブログも見なくなった。

リンクを入れたのは、他に使いたい人がいた時に、どこから落とせるかを知らせるためだったんだけど。

「これいいね、どうしたの?」「拾ってきたけど、どこにあったか覚えてない」という会話を見つければ、リンクを入れようと考えるのは自然な事で、「新バージョンに差し替えて欲しければ、そのリンクを外せ」というのはどういうことだろうと思った。そのスクリプトを使っている当人にとってはリンクがあっても邪魔なだけかもしれないけどね。

とにかく、そんな理由で拒否され、僕の書いたスクリプトは不具合のあるまま交換されていない。

その不具合には困っていないから問題ないというけれど、それが交換されないのだから、僕はその不具合に恥をかかされ続けている。

設置した当人にとっては、それは僕のものではなく、自分のものになっているわけだから、どうでもいい事なんだろう。

使われる以上、それは使い手のものであって、作り手のものではないのかもしれない。

どれだけ、苦労したと思っているのか、というのは作り手の理屈。使い手には関係ない。

使った人が連絡くれるのはうまく動かない時で、困らなかった場合は、何も言ってこないのが普通だ。

不具合のあるまま出してしまったのは自分。いちいち腹を立てていてはいけないんだろうな。

以前、Linux OS の話が出た時に、こんな事を言っている人がいた。

「タダで公開するなんて馬鹿だよね。有料にすれば結構儲かっただろうに」

それ、違うんだな。タダで公開したから人が集まって、いろいろと改良されていった。誰でも自由にソースを読んで、自由に改変して、無料で自由に使ってくれ。そういうコンセプトがなかったら幼年期のOSのまま成長しなかったんじゃないだろうか。自由にいじれるから世界のハッカー達が喜んで手を入れていった。

インターネットのサーバーで使われているOSは、Linux や FreeBSD。Webサーバーソフトのapache、メールサーバーのqmailやsendmailなどは全部、無償公開されていて、誰でも自由に無料で使える。

もし、それらがなかったら、今、これほどインターネットが発達していたのかはわからない。していたかもしれないし、していなかったのかもしれない。

ANSI-Cの標準ライブラリにもなっているqsort、クイックソートのアルゴリズムを知った時には驚いたもんだけど、数々のアルゴリズムが、無償公開されずに特許をとっていたら、今の進歩は随分遅れているんじゃないだろうか。

インターネットがこれだけ発達し、ハードウェアが進化した今、誰かの流した情報は即時にシェアされ、世界を駆け巡る。

今までは、個人ひとりひとりの知識だったものが、これからは集団知の時代になる。集団という新しい生命体がネットワーク上に生まれるんじゃないかと、僕は考えている。

こないだ、店を持ちたいという知り合いと車で移動していたら、こんな事を言っていた。

「この通りいいんだよ。空室出ないか探してるんだけど、ないんだよな」

地球上の争い事というのは、これまで主に領土の奪い合いだった。土地を奪うことで勢力を拡大する。

でも、インターネット上には、土地は無限にある。ネットで店舗を開くなら空室には困らない。

これからの時代、財産は不動産から知的財産へと変わっていくと思う。

権利や特許の争奪戦になった時、これまでの進歩は停滞するのか。どうなるのか、僕はすごく興味がある。

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 購読設定