2014.04.09
MTのカスタムフィールド「チェックボックス」では、1フィールドに対して1つのチェックボックスしか作れません。
「ラジオボタン」のように複数項目を用意したい場合は、「MoreCustomFields」プラグインを利用しています。
※ダウンロードリンクが切れているみたい?
こちらからは出来ます。
・・で、複数チェックボックス(checkbox Group)でチェックした項目を書き出す場合なのですが、最初の項目がチェックされていないと出力の先頭にカンマが挿入されてしまうようです。
それについて、こちらのページのコメントで壱さんが対処法を書かれていました。
http://www.h-fj.com/blog/archives/2011/05/04-180314.php
テンプレートタグに「regex_replace="/^,\s*/",""」を追加して、
<$mt:hogehoge regex_replace="/^,\s*/",""$>
とすると解決できます。
「ラジオボタン」のように複数項目を用意したい場合は、「MoreCustomFields」プラグインを利用しています。
※ダウンロードリンクが切れているみたい?
こちらからは出来ます。
・・で、複数チェックボックス(checkbox Group)でチェックした項目を書き出す場合なのですが、最初の項目がチェックされていないと出力の先頭にカンマが挿入されてしまうようです。
それについて、こちらのページのコメントで壱さんが対処法を書かれていました。
http://www.h-fj.com/blog/archives/2011/05/04-180314.php
テンプレートタグに「regex_replace="/^,\s*/",""」を追加して、
<$mt:hogehoge regex_replace="/^,\s*/",""$>
とすると解決できます。
2014.03.31
あるブログAを更新したとき、別のブログBも再構築するマルチブログ系のプラグインはたくさんありますが、記事削除をトリガーにできるものは案外見つからなかったりします。
そんな中、こちらの「RebuildAnyTemplate」プラグインがとても良い感じでした。MT5対応。
使い方は簡単で、上記の例の場合はブログAのメインページテンプレートに
<$mt:RebuildAnyTemplate archive_type="Category" template_id="10" category_id="20"$>
を仕込むだけ。
template_id は再構築したいテンプレートのID、
category_id はカテゴリーも指定したいときにカテゴリーのIDを入れます。
記事を編集・保存してメインページが再構築されると、
このタグが実行されてブログBに再構築がかかるという仕組み。
・メインページを出力する必要がある
・テンプレート単位で指定する必要がある(元々そういう用途を想定しているため)
と多少不便な点はあるものの、
基本的にどんな操作をしても再構築されるメインページがトリガーになっているため
確実性はとても高いです。
記事一覧からの公開・非公開でも、記事削除でも実行されます。
未確認ですが指定日公開でもいけるんじゃないでしょうか。
そんな中、こちらの「RebuildAnyTemplate」プラグインがとても良い感じでした。MT5対応。
使い方は簡単で、上記の例の場合はブログAのメインページテンプレートに
<$mt:RebuildAnyTemplate archive_type="Category" template_id="10" category_id="20"$>
を仕込むだけ。
template_id は再構築したいテンプレートのID、
category_id はカテゴリーも指定したいときにカテゴリーのIDを入れます。
記事を編集・保存してメインページが再構築されると、
このタグが実行されてブログBに再構築がかかるという仕組み。
・メインページを出力する必要がある
・テンプレート単位で指定する必要がある(元々そういう用途を想定しているため)
と多少不便な点はあるものの、
基本的にどんな操作をしても再構築されるメインページがトリガーになっているため
確実性はとても高いです。
記事一覧からの公開・非公開でも、記事削除でも実行されます。
未確認ですが指定日公開でもいけるんじゃないでしょうか。
2014.03.05
以前LightBoxのタイトルを<br />なしで改行する方法を書きましたが、
現在のv2.6ではソースが変わっているため、改めまして。
ちなみにv2.0の場合はこちらでご紹介されています。
LightBoxの使い方とカスタマイズ方法
■v2.6の場合
lightbox-2.6.min.js 内を次のように書き換えてください。
html(this.album[this.currentImageIndex].title)
この部分を
html(this.album[this.currentImageIndex].title.replace(/\r\n/g, "<br />").replace(/(\n|\r)/g, "<br />"))
このように書き換え。
1箇所しかないので置換えで大丈夫です。
これで title 内の改行が有効になります。
現在のv2.6ではソースが変わっているため、改めまして。
ちなみにv2.0の場合はこちらでご紹介されています。
LightBoxの使い方とカスタマイズ方法
■v2.6の場合
lightbox-2.6.min.js 内を次のように書き換えてください。
html(this.album[this.currentImageIndex].title)
この部分を
html(this.album[this.currentImageIndex].title.replace(/\r\n/g, "<br />").replace(/(\n|\r)/g, "<br />"))
このように書き換え。
1箇所しかないので置換えで大丈夫です。
これで title 内の改行が有効になります。
2014.03.05
エクセルで、半角英数の(C)を入力すると、コピーライトマークに自動的に変換されてしまいます。「オートコレクト」機能だそうです。これを解消したいとgoogle検索したら、同様のタイトルでかなりの数の結果が表示されましたので、ニーズが多いということでしょうか。
<設定の変更方法>
ツール → オートコレクト
入力があったときに自動的に変換するオートコレクトの文字列が一覧で表示されますので、不要なオートコレクト削除すればオッケー。
全体的に、この「オートコレクト機能」をオフにしたい場合、「入力中に自動修正する」のチェックを外せばオッケーです。
よくみたら、このグラビカにも関連記事がありました。
2014.03.05
できるだけ簡単にできるアコーディオンメニューをさがしていて
下記の記事を見つけました。
jQuery アコーディオンメニュー
http://php.o0o0.jp/article/4138817358715040
もーすばらしく簡単で便利です。
デフォルトで空けておきたい部分も指定できます。
自分で作ってみたサンプル
【javascript】
----------------------------------------------
【CSS】
----------------------------------------------
【HTML】
----------------------------------------------
下記の記事を見つけました。
jQuery アコーディオンメニュー
http://php.o0o0.jp/article/4138817358715040
もーすばらしく簡単で便利です。
デフォルトで空けておきたい部分も指定できます。
自分で作ってみたサンプル
【javascript】
----------------------------------------------
$(function () { // デフォルト開く部分を指定 $('ul').eq(0).show(); $('span').click(function() { // メニュー表示/非表示 $(this).next('ul').slideToggle('fast'); }); });
【CSS】
----------------------------------------------
ul { display: none; } span { cursor: pointer; }
【HTML】
----------------------------------------------
<span>メニュー 1</span> <ul> <li><a href="#">メニュー 1-1</a></li> <li><a href="#">メニュー 1-2</a></li> <li><a href="#">メニュー 1-3</a></li> </ul> <span>メニュー 2</span> <ul> <li><a href="#">メニュー 2-1</a></li> <li><a href="#">メニュー 2-2</a></li> <li><a href="#">メニュー 2-3</a></li> </ul> <span>メニュー 3</span> <ul> <li><a href="#">メニュー 3-1</a></li> <li><a href="#">メニュー 3-2</a></li> <li><a href="#">メニュー 3-3</a></li> </ul>
2014.02.05
Windowsを使っていると、あるとき突然デスクトップに「ホームグループ」のアイコンが現れることがあります(おそらく7のみ?)。
本来非表示になっているものらしく、ショートカットではないので削除もできません。
とても邪魔・・。
このアイコンは次の手順で消すことができるようです。
1. スタートボタン > プログラムとファイルの検索 に「regedit」と入力。
2.「regedit.exe」をクリックしてレジストリ エディターを開き、下記の階層を探す。
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Desktop/NameSpace
3. {B4FB3F98-C1EA-428d-A78A-D1F5659CBA93} というフォルダがあるはずなので、
後で戻せるような形で名前を変更。(頭に _ や # をつけるなど)
4. デスクトップでF5キーを押して表示を更新。
5. ホームグループのアイコンが消えたことを確認し、3 のフォルダ名を元に戻す。
以上です。
これで再度更新してもアイコンがでなければ成功です。
こちらのサイトを参考にしました。
Windows 7 のデスクトップのホームグループのアイコンを消したい
http://pasofaq.jp/windows/desktop/namespacehomegroup.htm
本来非表示になっているものらしく、ショートカットではないので削除もできません。
とても邪魔・・。
このアイコンは次の手順で消すことができるようです。
1. スタートボタン > プログラムとファイルの検索 に「regedit」と入力。
2.「regedit.exe」をクリックしてレジストリ エディターを開き、下記の階層を探す。
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Explorer/Desktop/NameSpace
3. {B4FB3F98-C1EA-428d-A78A-D1F5659CBA93} というフォルダがあるはずなので、
後で戻せるような形で名前を変更。(頭に _ や # をつけるなど)
4. デスクトップでF5キーを押して表示を更新。
5. ホームグループのアイコンが消えたことを確認し、3 のフォルダ名を元に戻す。
以上です。
これで再度更新してもアイコンがでなければ成功です。
こちらのサイトを参考にしました。
Windows 7 のデスクトップのホームグループのアイコンを消したい
http://pasofaq.jp/windows/desktop/namespacehomegroup.htm
2014.01.20
エントリー同士を関連付けるプラグインです。
エントリーを作成する際に関連エントリーを設定しておくと、
記事テンプレートでその一覧を扱うことができます。
少し躓いた箇所があったのでメモ。
ダウンロードはこちらのサイトから。
エントリーの関連付けを行うプラグイン(MT4専用版・その1)
■使い方
その2
その3
MT4となっていますがMT5でも使用できます。
ただしすべての動作は確認していないのでご注意。
また作者様もMT5に対応させる予定はないとのことなので、
動作する範囲で利用しましょう。
■注意点
プラグインのパーミッションを変える必要があるようです。
アップロードする際、「mt-related-entries.cgi」のパーミッションを変えておきましょう。
MTのCGIファイルと同様にすれば動くと思います。
エントリーを作成する際に関連エントリーを設定しておくと、
記事テンプレートでその一覧を扱うことができます。
少し躓いた箇所があったのでメモ。
ダウンロードはこちらのサイトから。
エントリーの関連付けを行うプラグイン(MT4専用版・その1)
■使い方
その2
その3
MT4となっていますがMT5でも使用できます。
ただしすべての動作は確認していないのでご注意。
また作者様もMT5に対応させる予定はないとのことなので、
動作する範囲で利用しましょう。
■注意点
プラグインのパーミッションを変える必要があるようです。
アップロードする際、「mt-related-entries.cgi」のパーミッションを変えておきましょう。
MTのCGIファイルと同様にすれば動くと思います。
2014.01.17
外部から読み込んだPSDの更新ができればと思うことは多々ありましたが、Photoshop CCの直近のアップデートで『スマートオブジェクトのリンク(Linked Smart Objects)』が搭載されました。
http://www.youtube.com/watch?v=H6AIgoFDwlk
手元のphotoshopはまだCS6なので残念!なのですが、同様の機能をもたせるエクステンションがずいぶん以前から存在していたようです。不勉強でした...。
http://www.canlinkit.com/
このエクステンションをPhotoshopにインストールすると「CantLinkItパネル」から外部PSDの配置と更新の操作が可能になります。
更新時の挙動に特に違和感はなく、修正を素直に反映します。
純正で搭載された今となってはCCで作業した方がいろいろ安心でしょうけど、CS6でこの手の作業がほしいときには良いかもですね。
http://www.youtube.com/watch?v=H6AIgoFDwlk
手元のphotoshopはまだCS6なので残念!なのですが、同様の機能をもたせるエクステンションがずいぶん以前から存在していたようです。不勉強でした...。
http://www.canlinkit.com/
このエクステンションをPhotoshopにインストールすると「CantLinkItパネル」から外部PSDの配置と更新の操作が可能になります。
更新時の挙動に特に違和感はなく、修正を素直に反映します。
- 外部PSDをメインPSDに配置後、拡大縮小回転させた上で更新しても当然その状態は保たれる。
- 外部PSDのサイズを変更した場合、オブジェクトの中心を起点に拡大縮小が反映される。
純正で搭載された今となってはCCで作業した方がいろいろ安心でしょうけど、CS6でこの手の作業がほしいときには良いかもですね。
2014.01.15
1つのブログで、複数の検索結果テンプレートを出し分ける方法。
例えばレイアウトが違う2種類のブログ記事リストがあって、
検索フォームから検索したらそれぞれのレイアウトにあった検索結果を
表示させたいときなどに便利です。
検索フォームAで検索 → 検索結果テンプレートAで表示
検索フォームBで検索 → 検索結果テンプレートBで表示
という感じ。
■代替テンプレートを作成
まずは出し分けするもう1種類の検索結果テンプレートを作成します。
MTディレクトリの中に「search_templates」フォルダがあるので、
その中にある「default.tmpl」を複製します。
ここでは「test.tmpl」というファイル名にします。
■mt-config.cgi に記述
mt-config.cgi に、このテンプレートを使うための記述をします。
一番下に次のように追記してください。
SearchAltTemplate test test.tmpl
■検索フォームにタグを追加
代替テンプレートを使用したい検索フォームに、次の1行を追加します。
<input type="hidden" name="Template" value="test" />
<form>タグの真下あたりでOKです。
これでこの検索フォームからの結果は代替テンプレートで表示されるようになります!
例えばレイアウトが違う2種類のブログ記事リストがあって、
検索フォームから検索したらそれぞれのレイアウトにあった検索結果を
表示させたいときなどに便利です。
検索フォームAで検索 → 検索結果テンプレートAで表示
検索フォームBで検索 → 検索結果テンプレートBで表示
という感じ。
■代替テンプレートを作成
まずは出し分けするもう1種類の検索結果テンプレートを作成します。
MTディレクトリの中に「search_templates」フォルダがあるので、
その中にある「default.tmpl」を複製します。
ここでは「test.tmpl」というファイル名にします。
■mt-config.cgi に記述
mt-config.cgi に、このテンプレートを使うための記述をします。
一番下に次のように追記してください。
SearchAltTemplate test test.tmpl
■検索フォームにタグを追加
代替テンプレートを使用したい検索フォームに、次の1行を追加します。
<input type="hidden" name="Template" value="test" />
<form>タグの真下あたりでOKです。
これでこの検索フォームからの結果は代替テンプレートで表示されるようになります!
2013.12.18
MTで生成するページの文字エンコーディングを変更するCharsetEncoderプラグインですが、
ほぼ毎回といっていいほど実装するPageButeプラグイン(ページ分割プラグイン)と
合わせると上手く動きません。
それについては小粋空間さんのページで対処法を紹介されています。
PageButeプラグインにコードを1行追加するという簡単なものなのですが、
PageButeのバージョン3.4.2向けだったため最新のバージョン3.5.7(おそらく3.5.6以降)ではコードの追記場所が変わっているようでした。
で、プラグインが書けないなりに動く場所を探してみたのでメモしておきます。
■PageBute 3.5.7
580行目、
if($page_count == 1) {
の直前に
MT->run_callbacks('page_bute', \$output, %opt);
を追記。
$output =~ s/\Q$garbage{IFPAGENOEMPTY}\E|\Q$garbage{IFPAGENOEMPTY_END}\E//g;
の下なら大丈夫なんだろうと思います。
上述の通りだいぶ手探りなので、
もし、どこどこのほうが良いだとか、こうしないと上手く動かないよ、などがありましたら是非お知らせください。
ほぼ毎回といっていいほど実装するPageButeプラグイン(ページ分割プラグイン)と
合わせると上手く動きません。
それについては小粋空間さんのページで対処法を紹介されています。
PageButeプラグインにコードを1行追加するという簡単なものなのですが、
PageButeのバージョン3.4.2向けだったため最新のバージョン3.5.7(おそらく3.5.6以降)ではコードの追記場所が変わっているようでした。
で、プラグインが書けないなりに動く場所を探してみたのでメモしておきます。
■PageBute 3.5.7
580行目、
if($page_count == 1) {
の直前に
MT->run_callbacks('page_bute', \$output, %opt);
を追記。
$output =~ s/\Q$garbage{IFPAGENOEMPTY}\E|\Q$garbage{IFPAGENOEMPTY_END}\E//g;
の下なら大丈夫なんだろうと思います。
上述の通りだいぶ手探りなので、
もし、どこどこのほうが良いだとか、こうしないと上手く動かないよ、などがありましたら是非お知らせください。