「WordPressで学ぶPHP(4)通信編」を発売しました。
本書は、「WordPressで学ぶPHP(1)変数・制御構造編」「WordPressで学ぶPHP(2)データ構造編」「WordPressで学ぶPHP(3)関数編」の続編にあたり、Webブラウザとサーバー(PHP)との通信と、PHPから他のサーバーに通信することについて解説します。
リンクの挿入をより便利にするプラグイン(MT4.1/MTOS専用版)
2008年1月28日 午前9時50分
バージョン1.22に一部不具合がありました(不具合内容はこちらを参照してください)
お手数をおかけしますが、1.22をお使いの方は、1.22bにアップデートしてくださいますようお願いします。
以前から公開していた「リンクの挿入をより便利にするプラグイン」(InsertLink)のMT4版が、Movable Type 4.1/MTOSで動作しないようになっていました。
記事編集画面のテンプレートの構造が変わったことが原因です。
そこで、MT4.1/MTOS対応版を作りました。
また、バージョンアップに合わせて、記事編集画面にリンク挿入ボタン追加する方法を変えました。
これまではテンプレートを検索して置換していましたが、今回の版ではDOMでボタンを挿入するようにしました。
これまで、「インストールしてもうまく動かない」という方がときどきいらっしゃいましたが、今回のバージョンアップで、おそらく問題を解決できると思います。
なお、この版はMT4.1/MTOS専用で、MT4.0では動作しません。
1.インストール
まず、以下からプラグインのファイルをダウンロードします。
ファイルを解凍すると、「plugins」と「mt-static」の2つのフォルダができます。
これらのフォルダを、Movable Typeのインストール先ディレクトリに丸ごとアップロードします。
ただし、「mt-static」ディレクトリをMovable Typeのディレクトリとは別にしている方は、「mt-static」フォルダの内容を、サーバーの「mt-static」ディレクトリの中に丸ごとアップロードします。
これ以後、ブログ記事の編集画面でリンク挿入のボタンをクリックすると、改良版のリンク挿入画面が開きます。
また、ブログ記事の編集画面に、過去記事へのリンクを挿入するボタンも追加されます。
なお、旧版では「mt-insert-link.cgi」というファイルもアップロードしていましたが、今回のバージョンではこのファイルは不要になりました。
旧版をお使いだった方は、プラグインのディレクトリから「mt-insert-link.cgi」を削除することができます。
2.ライセンス
これまでは、当Blogではプラグインのライセンスを特に明確にしていませんでした。
しかし、MTOSがGPLv2のライセンスで公開される関係で、プラグインのライセンスを明確にすることにしました。
このプラグインは、以下のようにデュアルライセンスでご提供することにします。
2-1.MT4.1個人ライセンス/MT4.1商用ライセンスと組み合わせる場合
- 改変・再配布は自由に行っていただいてかまいません。
ただし、改変して再配布する場合、原作者のクレジットは残しておいてください。 - 無料でご利用いただくことができます。
ただし、プラグインの開発やサポートのご支援のために、ドネーションをご検討いただければ幸いです。
2-2.MTOSと組み合わせる場合
- GPLv2に従います。
- 無料でご利用いただくことができます。
ただし、プラグインの開発やサポートのご支援のために、ドネーションをご検討いただければ幸いです。
Movable Typeのプラグイン集「MT Cloud Starter Kit」をぜひご利用ください
R34
こんにちは。
MT4.01からこのプラグインを使わせていただいております(もちろん対応するバージョンで)。
MT3.xの時はmt.jsを書き換えて使っていましたが、そういった手間もなくとても便利なプラグインだと思います。
MT4.1正式版のリリースに伴い、自分のブログも4.1にアップグレードして、プラグインもMT4.1専用版に差し替えたのですが、きちんと動作しません。
プラグインの一覧にはきちんと表示されているのですが、エントリ投稿画面のリンク作成ボタンをクリックしても、デフォルトのウィンドウが表示されますし、ブログ内リンク作成ボタンも表示されません。
対処法など、ございましたらよろしくお願いします。
壱からR34への返信
>R34さん
こんにちは。
プラグインご利用ありがとうございます。
当方でも一度同様の現象が起こったことがありました。
調べてみたところ、なぜか旧版のJavaScriptが読み込まれていましたので、ブラウザのキャッシュをクリアしてみて、解決しました。
ということで、一度ブラウザのキャッシュをクリアしてみてください。
それでも改善しないとなると、原因は不明です。
R34からR34への返信
早速のご回答ありがとうございます。
ブラウザのキャッシュをクリアしたら動作するようになりました。
ありがとうございます。
お手数をおかけいたしました。
mame
こんにちは。
MT-4.25 に InsertLink-1.22b を導入したのですが、編集画面に追加されたリンクボタンをクリックしてもポップアップウィンドウが開きませんでした(Firefox, Safariのみ検証済)。
対応バージョンは MT-4.1/MTOS となっているので、MT-4.25 では動作しないのでしょうか?
もしかしたら何か設定ミスをしているのかもしれないと考え、念のため質問させていただきました。よろしくお願いいたします。
壱からmameへの返信
>mameさん
こんにちは。
こちらではMT4.25でも問題なく動作しています。また、他の方からも、MT4.25で動かなくなったという質問はいただいていません。
申し訳ありませんが、そちらの環境に依存する問題のようです。
mameからmameへの返信
>壱さま
早速のご返信ありがとうございます。
試行錯誤したところ、管理画面テンプレート edit_entry.tmpl の193行目の form タグ内の自動保存設定を0(mt:auto-save="0")にカスタマイズしていたことが原因のようでした。
どういうことかは分からないのですが、この値を通常通り( mt:auto-save="1")に戻すとポップアップウィンドウが開くようになります。
他のカスタマイズ(例えば label名を変えるなど)では問題なくウィンドウは開きました。
自動保存の間隔を延ばす設定にして、edit_entry.tmpl のカスタマイズは行わないようにすることにしました。
mon
はじめまして。
Insert Link1.22bを使わせて頂いております。
Movable Type version 4.23-ja です。
プラグインを挿入してリンクを作動できたのですが、
別アカウントでブログを書く際に、リンクしようとするとエラーが起こってしまい、リンクが出来ない状態になります。
これはパーミッションの設定なのでしょうか?
複数人で同じブログを書くのでお教え頂けると助かります。
壱
>monさん
こんにちは。
ご質問の件ですが、具体的にどのようなエラーメッセージが表示されたでしょうか。
monから壱への返信
>>monさん
>こんにちは。
>ご質問の件ですが、具体的にどのようなエラーメッセージが表示されたでしょうか。
ご返答ありがとうございます。
別アカウントでブログを書く際にリンクボタンをクリックするとポップアップでウインドウは開くのですが、
エラー文は明記されておらず、
「エラーが発生しました。」
とだけ表示されてしまいます。
壱から壱への返信
>monさん
こんにちは。
おそらく、「ブログ記事の作成」の権限がないロールを、エラーが出るユーザーに割り当てていると思います。
「ブログ記事の作成」の権限があるロールを、そのユーザーに割り当てるようにしてください。
また、いただいた状況からすると、「すべてのブログ記事の編集」の権限はオンにしているのではないかと思います。
「ブログ記事の作成」の権限がオフでも、「すべてのブログ記事の編集」の権限がオンのユーザーがこのプラグインを使えるようにするには、InsertLink.pmファイルの58行目と101行目を以下のように書き換えてください。
・修正前
$can_open = $perms->can_create_post if ($type eq 'entry');
・修正後
$can_open = ($perms->can_create_post || $perms->can_edit_all_posts) if ($type eq 'entry');
monから壱への返信
>壱さん
早速のご返答ありがとうございます。
壱さんがご提案して頂いたロールを変えたら他のアカウントでもリンクを貼る事ができました。
ありがとうございます。
また、利用させて頂きます。
なかむら
有用なプラグインを使わせていただいています。
いつもありがとうございます。
もしよろしければ教えてください。
新しいウィンドウで開く際に挿入される「target=」を「class=」に変更したいのですがどこを書き換えたら良いでしょうか?
よろしくお願いします。
壱からなかむらへの返信
>なかむらさん
こんにちは。
「target」を「class」に変えるには、変更する箇所が多数あります。
申し訳ありませんが、リンクの挿入後に手作業で「target」を「class」に変えてお使いください。
まきよせ
InsertLinkのプラグイン、とても役立っています.ありがとうございます.
MT4.15で問題なく使わせていただいていたのですが、この度別のサーバ内のMT4.27にインストールしたところ、エラーが発生してしまいました.
具体的には、編集画面のリンク用アイコンをクリックするとポップアップが開くところまでは同じなのですが、ポップアップ内が「エラーが発生しました」という表示になってしまいます.
こちらの環境における固有の問題なのか、ver4.27だから起こっている問題なのか調べましたが分からず、コメントさせていただきました.4.27で問題なく使えるのであったら申し訳ありません、その旨だけ教えていただければ助かります.
お時間ある時で構いませんので、レスいただけたら幸いです.
一ユーザー
まきよせからまきよせへの返信
先ほど書き忘れました.
InsertLinkのバージョンは1.22bをダウンロードしました.
よろしくお願いします.
壱からまきよせへの返信
>まきよせさん
こんにちは。
こちらでテストした限りでは、Movable Type 4.27でも問題なく動作しました。
まきよせからまきよせへの返信
壱 さん
コメントありがとうございます
もうちょっと、がんばってみます
まきよせからまきよせへの返信
壱 さま
先日質問させていただいたエラーメッセージの件、ユーザーのロールの設定をしたらなくなりました.
他の質問をちゃんと読んでいなくて、バージョンのせいかと思い込んでしまって・・・申し訳ありませんでした.
すばらしいプラグインをありがとうございます.