拙著「上手に稼ぐカラ売りテクニック」が発売されました。
株価が下がる局面で利益を得ることができる「空売り」について、詳しく解説した本です。
自由国民社刊で、定価1,512円(税込)です。
複数のウェブサイト(ブログ)でウェブページを共有する
以下のような質問を受けました。
Movable Typeで、1つの会社の複数のブランドのウェブサイトを管理しています。
ここで、各ブランドに共通なウェブページ(会社案内等)は1つのウェブサイトだけに入力して、他のウェブサイトでも共有できるようにしたいです。
最低限の共有さえできれば良いのであれば、カスタムフィールドとテンプレートを工夫することで可能です。
その方法を紹介します。
1.カスタムフィールドの作成
まず、あるウェブサイト(ブログ)に作ったウェブページを他のウェブサイト(ブログ)でも共有できるようにするために、カスタムフィールドを作ります。
ここでは、以下のような状況だと仮定します。
- ウェブサイトはA/B/Cの3つあります。
- ウェブサイトAに入力したウェブページを、ウェブサイトB/Cで共有します。
この場合、ウェブサイトBとCに、以下のような内容のカスタムフィールドを作ります。
項目 | 設定値 |
---|---|
システムオブジェクト | ウェブページ |
名前 | 共有ウェブページID |
種類 | テキスト |
必須 | チェックをオフ |
テンプレートタグ | CommonPageID |
なお、説明/ベースネームの各欄の設定は任意です。
2.共有するウェブページのIDを確認
ウェブサイトAでウェブページを作り、それをウェブサイトB/Cで共有するには、まずウェブサイトAでそのウェブページのIDを確認します。
ウェブサイトAの管理画面で「ウェブページ」→「一覧」を選び、ウェブページの一覧を表示します。
そして、表示オプションの「ID」のチェックをオンにすれば、それぞれのウェブページのIDを見ることができます。
3.ウェブサイトB/Cでウェブページを作成
次に、ウェブサイトB/Cにウェブページを作成し、「共有ウェブページID」のカスタムフィールドに、手順2で調べたウェブページのIDを入力します。
例えば、ウェブサイトAに「会社案内」のウェブページがあり、そのIDが1番だとします。
そして、このウェブページをウェブサイトB/Cで共有したいとします。
この場合、ウェブサイトB/Cそれぞれにウェブページを作り、「共有ウェブページID」のカスタムフィールドに「1」を入力します。
なお、ウェブサイトB/Cに、ウェブサイトAとは共有しないウェブページを作りたい場合もあります。
その時は、「共有ウェブページID」のカスタムフィールドには値を入力しないようにします。
4.ウェブページアーカイブテンプレートの書き換え
次に、ウェブサイトB/Cのウェブページアーカイブテンプレートで、ウェブページの情報を出力する部分を、以下のように書き換えます。
「ウェブサイトAのID」は、実際のIDに置き換えます。
例えば、ウェブサイトAのIDが1番の場合、「include_blogs="1"」とします。
<mt:If tag="CommonPageID"> <$mt:CommonPageID setvar="common_page_id"$> <mt:Pages include_blogs="ウェブサイトAのID" id="$common_page_id"> ウェブページの内容を出力するテンプレートタグ等 </mt:Pages> <mt:Else> ウェブページの内容を出力するテンプレートタグ等 </mt:If>
MTPagesタグには「id」というモディファイアがあり、特定のIDのウェブページを読み込むことができます。
これとinclude_blogsモディファイアを組み合わせて、ウェブサイトAのウェブページを読み込みます。
1行目のMTIfタグでMTCommonPageIDタグ(=「共有ウェブページID」のカスタムフィールドの値)を調べます。
共有ウェブページIDに値があれば、2行目以降が処理されて、ウェブサイトAからウェブページを読み込んで、その内容を出力します。
一方、共有ウェブページIDに値がなければ、7行目以降に進んで、ウェブサイトB(またはC)のウェブページに入力した内容が出力されます。
5.あくまで最低限
ここまでで解説した方法は、あくまでも最低限の共有方法です。
以下のような問題点があり、それを解決するには、プラグインを作ることが必要になります。
5-1.手動での再構築
ウェブサイトAでウェブページの内容を更新した時には、ウェブサイトB/Cの対応するウェブページを、手動で再構築する必要があります。
5-2.サーバー移転時の問題
Movable Typeのバックアップと復元の機能でサーバーを移転した場合、ウェブページのIDが変わります。
しかし、「共有ウェブページID」のカスタムフィールドに入力した値は、自動的には変わりません。
サーバー移転後に、ウェブサイトAの各ウェブページのIDを調べなおして、ウェブサイトB/Cの各ウェブページの「共有ウェブページID」のカスタムフィールドに入力しなおす必要があります。