a talk: 検索結果

a talkでタグ「MT」が付けられているもの

MT4で404ページエラーを作成する。

MT4には「新規作成」→「ウェブページ」を選択すると、
ウェブページを作成することができます。
普段はブログ記事が表示される領域にページが表示されるので、
デザインはそのままでページの内容だけ作成できるわけです。

今回、HTTPステータスコード404のエラーページを作成するにあたり、
初めてこの機能を使ってみましたが、とても便利ですね。


404エラーの際はこの様なページを表示します。

404 Not Found


僕のウェブサイトはarikawa.comとarikawa.com/blog/の
二つのブログを連結していますので、個別にエラーが出た方が良いです。
今回はBLOGの404エラーページを作成したいので、
/blog/フォルダの直下にし、ファイル名を「404.php」にしました。


404 Not Found フォルダ


これで、MT4側の設定は完了です。
ページが用意できたら、「.htaccess」で404エラーが出た際の
飛び先を指定してあげればOKです。
「.htaccess」以外にも「httpd.conf」で設定する方法もありますが、
レンタルサーバーは「.htaccess」でやるのが現実的です。

「.htaccess」はフォルダに置くとその配下のみを制御できますので、
今回の様にBLOGだけ404エラーを変えたい場合は/blog/直下に置きます。


記述する内容は以下です。

ErrorDocument 404 /blog/404.php


これで、arikawa.com/blog/で発生した404エラーに関しては、
自分で作ったエラーページを返してくれます。

MT4.xで関連記事を自動で表示する方法。
ってことで、プラグインを使用して設定してみました。

関連記事を手で貼るのってとても面倒です。
エントリーに自動で関連記事を表示する方法としては、
方向性的に大きく分けて3つですかね。


1.「Related Entries Plugin」を使う方法。
同じカテゴリーのエントリーがランダムに表示する。

2.「MTSetVar(Block)/MTIfタグ」を使用する方法。
MT4から追加された変数機能を用いて、
エントリーに付けられているタグを変数に格納する。

3.「TagSupplementals」プラグインを使い方法。
関連するタグを持つエントリーを関連度が高い順に取得する。

僕は「3.」の方法を採用しました。
タグさえ設定しておけば、関連度の高いエントリーが、
関連記事に表示できるはずです。
「Related Entries Plugin」も簡単で良いのですが、
同一カテゴリ内には関連性の低いエントリーも混在しているので、
あまりよろしく無いと判断しました。


設定はとても簡単です。

1.「TagSupplementals-0.10.zip (MT4専用)」をダウンロードする。

2./plugins/ディレクトリにTagSupplementals.plをアップロードする。

3.「テンプレートモジュール」→「ブログ記事の詳細」にて、
以下のタグを挿入する。
今回は<$MTInclude module="カテゴリ"$>の直前へ挿入した。


※表示の関係で<>は全角表示してあります。

<!--関連記事-->
【関連記事】
<ul><MTRelatedEntries lastn="5">
<li>
<a href="<$MTEntryPermalink$>"><$MTEntryTitle$></a>
</li>
</MTRelatedEntries>
</ul>
<!--関連記事-->


ただし、これまで僕のブログはタグを設定してなかったので、
今後はタグを設定する必要があります。
過去ログもありますし、結構面倒ですな…

久しぶりにMTのカスタマイズをして便利になりました。

MT4.xのセキュリティアップデートが公開です。
今回はMT4.12にアップデートしました。

http://www.sixapart.jp/movabletype/news/2008/06/20-1415.html

Movable Type 4.x ユーザーにとって必須のセキュリティアップデートである、Movable Type 4.12 、および Movable Type Enterprise 4.12、Movable Type Community Solution 4.03 をリリースします。このアップデートは、6月15日 (日本時間16日) に報告された、アプリケーションの脆弱性を修正するものです。具体的には、Movable Typeのブログ検索機能におけるクロスサイト・スクリプティング (悪意あるユーザーが許可なしに javascript を実行する) を修正します。シックス・アパートは、この問題の対象となるバージョン向けのアップデートを無償提供いたします。


影響を受けるバージョンが以下です。

Movable Type 4.0を含む以降バージョンすべて。ただし、Movable Type 4.2 RCはのぞく。

アップグレードする際はPerl のバージョンに気をつけましょう!!


今回はMT4.1からMT4.12へのアップデートです。
まったく問題無く、サクっとアップデートを実施することが出来た。
MTはアップデートの度に、デザイン面が受け継がれなかったり、
システム面でも面倒なことが多かったが、今回は楽だね。

以前にも書いた、「MT4.xでmt.cgiのファイル名を変更する方法」も有効です。


あと、別件でMT4.2RC2を使ってアップデートのテストをしているんだけど、
MT4.2系は大分期待できると思います。
MT3.36からMT4.2RC2へのアップデートは殆どの機能が引き継がれます。
もちろん、デザイン面もシステム面も綺麗に移行してくれています。
ただ、やっぱり動かないpluginがあったり、動かないMTタグがあったりで、
四苦八苦はしている訳ですけど、MT4.1へアップデートするよりは簡単かも。

なんか、面白いことが解ったら報告しますね。

前回、MT4.xの復元を試したと書きましたが…
バックアップと復元にはかなり振り回されました。
現象がいろいろありすぎて、全部挙げられないのですが、
覚えている現象だけでも書いておきます。


・「blog_id=」が連番になっている
・ウィジェットセットが全て外れている
・新規作成でブログ記事を書いたら再構築でエラーが出る
・本来のブログ記事のカテゴリでないカテゴリ名が付いている
・エントリーアーカイブのページに同じブログ記事が重複してしまう


これらの現象に遭遇しながらも、完全に元に戻せたのでその記録を。


まず、以下の二件については、仕様なのかもしれません。

・「blog_id=」が連番になっている
→こちらは「MT4.xの復元で「blog_id=」を変更させない方法」で解決。
・ウィジェットセットが全て外れている
→どうしようもないみたい、もう一度組みなおすしかなさそう。


そして、こちら。

・本来のブログ記事のカテゴリではないカテゴリ名が付いている
→復元する時に内容が変わってしまった様子。

ブログ記事のカテゴリ名を変更すれば直るんだろうけど再構築で、
エラーが出たので正常に復元される条件を探すしかなさそう。


・新規作成でブログ記事を書いたら再構築でエラーが出る
→ブログ記事の概要で「タグ」がどうのこうのってエラーが出たり、
 その他、再構築のエラーが出てブログ記事を書いたり修正できない様子。

根本的に上記の件もあわせてブログ記事を再構築してもエラーしない
方法が発見できれば解決しそう。


バックアップの時か復元時にXMLの内容が書き換わった可能性があるが、
復元後の挙動を見ていると、毎回違う現象が出るのでXMLは正常なのかも?
いろいろ調べていると、復元時に上手く復元できないケースがあるみたいだね。
エントリー数が多かったり、カスタマイズをしている人は、
安全策の為にバックアップは分割した方が良いかもしれません。
このMT4.xの復元機能は復元内容にバラつきが生じることがあります。


で、ここまで来るとやれることが限られている。
そもそも、分割してバックアップを取ってなかったので、
現状のXMLで完全に復元できる方法を模索するしかない。


今度は復元時に「グローバルテンプレートを上書きする 」のチェックを入れてみた。
そしたら、見事に成功。上記二項はまったく問題なくなった。

この「グローバルテンプレートを上書きする 」って機能は情報が少ないね…
機能としては理解してないが、僕の様にMTをカスタマイズしている場合は、
グローバルテンプレートを上書きした方が良いかな?
ってぐらいの感覚でしかありません。何の根拠もなしです。

で、喜びも束の間、最後にこれ。
・エントリーアーカイブのページに同じブログ記事が重複してしまう
→ブログ記事の管理画面では正常に各記事が一つエントリーされているが、
 エントリーアーカイブのページをみると記事が重複表示されている。


復元時にMTソースが重複したのかと、調べてみたが大丈夫だった。
今度ばかりは無理かと諦めかけていましたが、閃いた!!
XMLの中を確認しても該当ファイルの記載個所がなかったので、
ブログのエクスポート機能を使えば内容を確認できるな。と。
で、MT4.xにもエクスポート機能があります。

早速、エクスポートしてみました。
中を確認するとそれらしき重複箇所があります。


【変更前】
PRIMARY CATEGORY: INFORMATION
CATEGORY: INFORMATION
CATEGORY: INFORMATION
CATEGORY: INFORMATION

【変更後】
PRIMARY CATEGORY: INFORMATION
CATEGORY: INFORMATION


その他のエントリーも同様に削ってあげればOKです。
エントリー数が多いと結構面倒ですけどね。
重複を修正したファイルをインポートする前に、
「ブログ記事の管理」で全ての記事を削除しておきましょう。
そのままインポートするとブログ記事のエントリーが重複します。

ここまで作業をして、ファイルをインポートすれば正常に復元されます。


■復元時にやることのまとめ
・バックアップは分割した方が良い
・復元前に既存ブログは全て消しておく
・復元は「グローバルテンプレートを上書きする 」のチェックを入れる
・ウィジェットセットを組みなおす
・エントリーアーカイブのページに同じブログ記事が重複してしまう場合は、
 エクスポートして重複箇所を修正後、全ての記事を削除後にインポートする。


こんな感じです…、とても面倒な復元でした。

MT4.xには復元というフルバックアップの機能が備わっています。
別のブログを作成途中に復元を試す機会がありましたが、
これがなんだか面倒な機能なわけです。


オペレーション的には非常に簡単にXMLを吐けて、簡単に復元もできます。
ただ、気を付けたいのは「blog_id=」の件ですね。
安全策を取って、バックアップをとる前にブログを複製しておいたりすると、
「blog_id=」が連番になっていて、数字が続きになってしまいます。

たとえば、「blog_id=1」となるブログを複製すると、
「blog_id=2」となるブログが作成されます。
「blog_id=1」と「blog_id=2」が存在している状態で、
あらかじめ取得しておいてた「blog_id=1」のバックアップを使って復元。
そうすると、「blog_id=3」となります。内容は「blog_id=1」と同じですね。
で、「blog_id=3」になっちゃったと思って、これを消してからまた復元すると、
今度は「blog_id=4」になっちゃうわけです。。。


ようするに、ブログが一つでも残っていると連番になるみたいです。
「blog_id=」なんて別に気にしないや!って人は良いのですが、
MultiBlogの機能を使っている場合は「blog_id=」は放っておけません。
全てのブログを一度全部消してから、復元すると「blog_id=1」から
始まるのでお試しください。

MT4.xでSEO対策にMETA NAMEを設定する。
ってことですが、SEO的には基本中の基本なので、
皆さん設定されていると思います。

最近、Blogのアクセス数が三分の一まで落ち込んでしまった。
検索エンジンの挙動ってのは案外変わりやすく、
その都度対応していたら時間と労力の無駄かなとか思ってます。
だからといって、このままではマズイので、、、
SEO的に改善できる個所は貪欲に改善してみようかなと。


これまでは、TOPページも各エントリーも同じmeta nameを入れて、
あんまりmeta name設定を重視して来なかった。
各エントリーに最適なKeywordsとdescriptionを入れてみて、
どれだけSEO的に効果が上がるのか様子を見てみます。

で、ブログを書く際に投稿画面の「キーワード」項に入れた言葉が、
meta name="Keywords"に入ってくれると楽ですね。
そして、meta name="description"も抽出してくれると嬉しいな。
ってことで、以下の設定を入れましたよ。


※表示の関係で<>は全角表示してあります。

<MTIf name="main_index">
<meta name="description" content="有川晃貴のプロフィール、ライブ情報、ディスコグラフィー、楽曲視聴、ブログ等。" />
<MTElse>
<meta name="description" content="<$MTEntryExcerpt$>" />
</MTIf>
<MTIf name="main_index">
<meta name="Keywords" content="有川,宅録,DTM,写真,MP3,視聴,ライブ,Blog" />
<MTElse>
<meta name="Keywords" content="<$MTEntryKeywords$>,<MTEntryTags><$MTTagName$>,</MTEntryTags>ブログ,Blog" />
</MTIf>


メインページでの内容と各エントリの内容を判別して反映させます。
ついでに投稿画面の「タグ」項に言葉を入れた場合も、
meta name="Keywords"に反映してくれます。
しかし、過去の全エントリーにキーワードを埋めて再構築するのって、
そうとう面倒ですな。ぼちぼちやりますよ。

あ、そうそう。
MT4.xでは「設定」→「ブログの設定」→「ブログ記事」を開いて、
「概要の文字数」項を”100”に変更しておくと、descriptionに
エントリー本文の最初から100文字を表示することができます。
合わせて設定しておくと良いでしょう。

カテゴリの並び替えについては、何もしない!
ってのが僕のポリシーっていうか。

MTのバージョンが上がった時に動かなくなり困るのが嫌だったので、
標準機能をイジってしまう余計なプラグインは入れない主義だった。
その代わりと言っては何だが、カテゴリの表示については随分と
これまでも考えてきたつもりだし、運用的には結構落ち着いていた。


これまでの僕の方法。(カテゴリ作成時)
1.作成されるフォルダ名を数字にする。「00」「10」「20」
2.表示順となる「名前」の項目はフォルダ名と同じ数字にする。
3.実際に表示されるカテゴリ名は「説明」項目に入れる。

このやり方で統一してしまえば、困らなかったんだけど。
メリットとデメリットを理解した上で使う必要があった。

 【メリット】
 数字を「00」とか「10」にすることで、後で間に差し込みたいカテゴリができても、
 「11」とか「12」という数字を入れれば任意の場所にカテゴリを表示できる。

 【デメリット】
 カテゴリ表示が数字になってしまう為、ブログを書くときに数字とカテゴリが
 簡単に紐付かなく解りずらい。


エントリーがあまり増えないWebページでは全然困らないから、
この方式を使っていたんだけど...
エントリーが多いものとか、日々更新するBlogなんかはキツイよね。
このBlogはその辺を考えて、カテゴリを英語にしているので、
表記順がアルファベット順に並んでいる。


でもですね。。。
現在、新しい写真BlogやとあるミュージシャンのWebを、
MT4.xで作成していて思ったのだが、この方法だとキツイね。
カテゴリが数字だとカテゴリ数が多い場合に視認性が悪くて、
Blogを書く時に間違ったカテゴリに投稿しそう。

ってことで昔からやられている方法を実装しようかな...
最近の事情をググっていたら、このサイトが纏ってました。
で、更に調べていると、、、
こんな素晴らしい機能を提供している方を発見!


カテゴリーとフォルダを並べ替えるプラグイン(MT4以降用)


このプラグイン最強っす。
めちゃめちゃ簡単にカテゴリの並び変えを実装できました。
ありがとうございます!!

感謝の意だけでなく「ドネ―ション」してくれたら幸い。
ってことで、寄付のことドネ―ションって言うんだ...
みたいな勉強をしちゃったり、楽しちゃったりしたので、
ドネ―ションしてみることにしました。


僕が選んだのは、4番目のPayPalでドネーション。
PayPal ドネーション

¥1,000払いました。こういうの気分が良いかも。

MT3.21からMT4.1にアップデートしたことで、
カテゴリーが表示されなかった件がやっと解決した。

※以下、表示の関係で<>が全角にしてあります。

</MTTopLevelCategories>ってタグがあるらしく、
以下の様に<MTSubCatIsFirst>と</MTSubCatIsFirst>
の前と後ろで挟んであげれば従来通りうごきます。


<MTTopLevelCategories>
<MTSubCatIsFirst><ul></MTSubCatIsFirst>

</MTSubCatIsLast></MTSubCategories>
</MTTopLevelCategories>


ただし、MT3.21からMT4.1にアップデートすると、
本来のMT4.x系の構造にならず、MT3.x系を引きずるので、
それぞれ各ページにも同様にタグを挟んで上げる必要があります。

①「デザイン」→「テンプレート」→「インデックステンプレート」にある以下の項目
メインページ
アーカイブページ

②「デザイン」→「テンプレート」→「アーカイブテンプレート」にある以下の項目
エントリー・アーカイブ
カテゴリー・アーカイブ


参考にさせて頂いたサイトはこちらです。
ありがとうございます!
MT4のカテゴリ表示タグ

MT4.xでMTPaginateが使えている

|

この数日、MT3.xからMT4.1へ総入れ替え。
これまでのデザインが飽きたので、テンプレートを入れ替えたいなー。
なんて思ってましたので、とりあえず最初にお勉強。

MT4.xになると、MTPaginateが使えないって記事が多いな...
たまにMT4.xでも使える"みたい"的な非検証サイトもあって、
悩んだあげく、思い切ってMT4.1に上げてみた。

なるほどね。大分、中身が変わってますな。
編集する個所さえ覚えれば後で楽になるのかな?


ってことで、いろいろやってましたが、上手く行かず。
とあるサイトの方がトライして成功している様子なので、
僕も参考にさせて頂き成功しました。ありがとうございます!

「デザイン」→「テンプレート」→「アーカイブテンプレート」→「ブログ記事リスト」
を開いて以下を参考に設定すれば分割されます。
それと、年の為にMTPaginateは最新版に上げた方が良いかもしれません。
2008年2月3日、現在の最新はVer1.28です。
昔のバージョンがpluginsの直下にMTPaginate.plがありましたが、
このバージョンは/plugins/MTPaginateとすればOKです。


以下、表示の関係で<>が全角にしてあります。

MT4でMTPaginateを入れてみた


<MTIf name="datebased_archive">
<MTPaginate>
<MTPaginateContent max_sections="8">
<MTEntries>
<$MTEntryTrackbackData$>
<$MTInclude module="ブログ記事の概要"$>
<$MTPaginateSectionBreak$>
</MTEntries>
</MTPaginateContent>
<MTPaginateIfMultiplePages>
<div class="paginate">
<MTPaginateIfPreviousPage_>
<a href="<$MTPaginatePreviousPageLink$>">«</a>
</MTPaginateIfPreviousPage_>
<$MTPaginateNavigator style="links" format_all="All pages" place_all="after" separator=" | ">
<MTPaginateIfNextPage_>
<a href="<$MTPaginateNextPageLink$>">»</a>
</MTPaginateIfNextPage_>
</div>
</MTPaginateIfMultiplePages>
</MTPaginate>
<MTElse>
<MTPaginate>
<MTPaginateContent max_sections="8">
<MTEntries>
<$MTEntryTrackbackData$>
<$MTInclude module="ブログ記事の概要"$>
<$MTPaginateSectionBreak$>
</MTEntries>
</MTPaginateContent>
<MTPaginateIfMultiplePages>
<div class="paginate">
<MTPaginateIfPreviousPage_>
<a href="<$MTPaginatePreviousPageLink$>">«</a>
</MTPaginateIfPreviousPage_>
<$MTPaginateNavigator style="links" format_all="All pages" place_all="after" separator=" | ">
<MTPaginateIfNextPage_>
<a href="<$MTPaginateNextPageLink$>">»</a>
</MTPaginateIfNextPage_>
</div>
</MTPaginateIfMultiplePages>
</MTPaginate>
</MTIf>


ちなみに、僕は<MTEntries limit="auto">を<MTEntries limit="0">と
設定してデフォルトでは全部表示される様にしています。
あと、指定のCSSにも以下を書きます。

/* ---------- paginate ---------- */

.paginate {
text-align: center;
font-size: 80%;
}

/* ---------- paginate_end ---------- */


それにしても、MT4.1へのバージョンアップはテコずった。
この二、三日の間に劇的にアクセス数と検索ヒット率が減ってしまった...
Yahoo!やGoogleのBOTの訪問間隔が短いので、スタティックなページが
表示できない期間が長いとリスクが高いね。

以前に「mt.cgiのファイル名を変更する方法
をご紹介しました。

現在は別のブログをMT4.xで作成しています。
以前の方法は使えるのかな?
少し調べたけどMT4.xは情報が少ないね。
mt.cgiをそのまま公開するのは嫌だぁ...

ってことで、
MT3.xの変更方法を元に試されている方が
居たので僕も試してみました。

MTをインストールしたらやっておきたい事

※公式な変更方法ではありませんので完璧ではないかもしれません。

【参考設定】
1.まず「mt.cgi」を任意の名称に変更します。
  ここでは、「blog777.cgi」に変更してみます。

2.mt-config.cgiにAdminScript blog777.cgiと記述。

3./lib/MT/App.pm ファイルのmt.cgi部分をblog777.cgiに置き換え。

4./search_templates/default.tmpl の<$MTEntryEditLink$>を削除。

5./search_templates/comment.tmpl の<$MTEntryEditLink$>を削除。

※2番目の手順の時、AdminScriptとblog777.cgiの間には"半角スペース"が入る点に注意して下さい。


MT3.xの方法と違う個所は2番だけです。
MT4.xのmt-config.cgiはとてもシンプルで、
必要最小限の情報しか記載されていません。
追加で記入してあげるだけです。

Movable Type 4.01aの場合においても、
上記の設定変更が有効でした。

2019年10月

    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

Profile


音楽、ファッション、写真、Web、日記など気になることを書いています。

arikawa.com
Twitter

Googleアドセンス

アーカイブ