タグ:プラグイン
WPプラグイン「Category Order and Taxonomy Terms Order」をマルチサイトで使用する場合の注意事項
WPデフォルトのカテゴリーやカスタムタクソノミーの並び替えを行うことができるプラグイン「Category Order and Taxonomy Terms Order」
マルチサイトでは使用するのに注意が必要です。
このプラグインを「サイトネットワークで有効化」で有効化してしまうと、
並び替えができないどころか、カテゴリー自体が表示されなくなります
理由までは調査していないですが、外観>メニューで保存すらできなくなってしまうので注意です。
対応方法は、「サイトネットワークで有効化」ではなく、サイトごとにプラグインを有効化すればOK
カテゴリーも表示されるようになりますし、メニューの動作も正常になりますし、並び替えもできるようになります。
総合管理者 | 2020年08月05日 | コメント(0) | トラックバック(0) | CMS関連
MTで画像一括アップロード!
メモ
大量に画像をアップロードしなくてはならない場合、FTPで一気にアップロードする方法と、MTで1つ1つアップロードする方法の2つがありますが、前者は後々管理画面から削除ができなくなるし、後者は時間がかかる。
そんなとき便利なプラグインが「MultiFileUploader」です。
ダウンロードは以下のサイトから
複数ファイルを一括でアップロードできるMovable Typeプラグイン:MultiFileUploader(スカイアークシステムさんのサイト)
解凍すると
- plugins
- mt-static
のフォルダができるので、それぞれアップロードするだけ。
プラグインが正常に導入されると「アイテム」メニューに「複数アップロード」が追加されますので、そちらから複数ファイルをアップロードしてください。
特に対応バージョンが書いていなかったので不安でしたが、MT5.031にて正常に動作しました。
スカイアークシステムさんのサイトのコメントを見てみると、パスエラーが発生しているようですが、自分のところでは特に問題なしでした。
MTのバージョンのせい?
nandani | 2010年11月24日 | コメント(0) | トラックバック(0) | CMS関連
MTにてカテゴリを絞り込んで検索する方法2
前回はこちら「MTにてカテゴリを絞り込んで検索する方法」
今回はプラグインを使用します。
この方法のメリットは複数のカテゴリで絞り込めることです。
たとえば以下のようにカテゴリ構成されているとします。
ジャンル
SF
アニメ
クライム
コメディ
ホラー
メディア
DVD
VHS
ブルーレイ
レーザーディスク
「SF×DVD」や「コメディ×VHS」のように複数カテゴリで絞り込みたい場合、前回の方法では実現不可能でした。(一見<input category="SF AND DVD" />で可能そうですができませんでした。)
そこでこちらのサイトで配布しているプラグインを使用します。
CategorySearch(Technology on Informationさんのサイト)
上記のサイトの「リリース>ダウンロードページ」から最新版をダウンロードしてください。
インストール方法は、ダウンロードしてきたファイルを解凍したのち、「plugins」の中にアップロードすればOKです。
使用方法についても上記のサイトに記述しております。
では以下使用例です。
※なお、以下で使用しているテンプレートはMT5標準で用意されているテーマ「クラッシックブログ」のテンプレートです。
1.検索ウィジェットを編集する
MTブログ管理画面の「デザイン>ウィジェット>検索」を開いてください。
その中のformタグで囲まれている部分を、まるごと以下のように書き換えてください。
<form method="get" action="<$mt:CGIPath$><$mt:SearchScript$>">
<MTTopLevelCategories>
<MTSetVarBlock name="tcid"><MTCategoryID></MTSetVarBlock>
<div>
<input type="hidden" name="CategorySearchSets" value="<MTCategoryID>" />
<select name="<MTCategoryID>">
<option value="0">すべての<MTCategoryLabel></option>
<MTSubCategories>
<MTSetVarBlock name="clabel"><MTCategoryLabel></MTSetVarBlock>
<MTCategorySearchLink type="absolute" set="$tcid" value="$clabel" op="replace" text="ignore" >
<MTIf name="selected">
<option value="<MTCategoryLabel>" selected="selected"><MTCategoryLabel></option>
<MTElse>
<option value="<MTCategoryLabel>"><MTCategoryLabel></option>
</MTIf>
</MTCategorySearchLink>
</MTSubCategories>
</select>
</div>
</MTTopLevelCategories>
<div>
<input type="text" name="search" value="<$mt:SearchString$>" />
<input type="hidden" name="CategorySearch" value="1" />
<input type="hidden" name="CategorySearchIgnoreText" value="1" />
<input type="hidden" name="IncludeBlogs" value="<$mt:BlogID$>" />
<input type="hidden" name="limit" value="<$mt:SearchMaxResults$>" />
<input type="submit" accesskey="4" value="検索" />
</div>
</form>
■追記(2010/10/27)
MTCategorySearchLinkのtypeを「relative」から「absolute」に変更しました。
2.「検索結果」テンプレートを編集する
MTブログ管理画面の「デザイン>テンプレート>検索結果」を開いてください。
「<$mt:SearchString$>」と一致するもの
の部分を
<MTSetVarBlock name="search_string"><$mt:SearchString$></MTSetVarBlock>
<mt:CategorySearchSets glue=" と ">
「<mt:CategorySearchCategories>
<mt:CategoryLabel>
</mt:CategorySearchCategories>」
<mt:CategorySearchSetsFooter>
<MTIf name="search_string">
と「<$mt:SearchString$>」
</MTIf>
の検索結果
</mt:CategorySearchSetsFooter>
</mt:CategorySearchSets>
に変更してください。
この段階でとりあえず再構築をかけてください。
ここまでで、2種類のカテゴリによる絞り込み検索ができるようになりました。
しかし、テキストフォーム(name="search")のところに検索ワードを入力してもスルーされてしまうと思います。
これは
<input type="hidden" name="CategorySearchIgnoreText" value="1" />
が記述されているためで、「CategorySearchIgnoreText」のvalueに値が入っていると、検索ワードが入っていなくても検索結果を返してくれるという利点がある代わりに、検索ワードは無視されてしまうという欠点があります。
できれば検索ワードが入っていない場合はカテゴリのみで検索し、入っている場合はそのワードでも検索するという風にしたいところです。
そこで、今回もJavascriptを使用します。
3.Javascriptを追記する。
読み込めればどこでもいいんですが、とりあえず「デザイン>ウィジェット>検索」を開いてください。
一番上に下記のソースを追記します。
<script type="text/javascript">
function searchTextCheck(){
var searchText = document.getElementById("searchText").value;
if(searchText != ""){
document.getElementById("CategorySearchIgnoreText").value = "0";
}
}
</script>
要するに、検索ボタンをクリックした瞬間、テキストフォームに検索ワードが入っていなければそのままにし、入っていればCategorySearchIgnoreTextのvalueを"0"にする、というわけです。
4.Javascriptで使用するためタグを修正する。
最後に1.で追加したform内のタグの値を少し変更します。
<form me\thod="get" action="<$mt:CGIPath$><$mt:SearchScript$>">
<MTTopLevelCategories>
<MTSetVarBlock name="tcid"><MTCategoryID></MTSetVarBlock>
<div>
<input type="hidden" name="CategorySearchSets" value="<MTCategoryID>" />
<select name="<MTCategoryID>">
<option value="0">すべての<MTCategoryLabel></option>
<MTSubCategories>
<MTSetVarBlock name="clabel"><MTCategoryLabel></MTSetVarBlock>
<MTCategorySearchLink type="absolute" set="$tcid" value="$clabel" op="replace" text="ignore" >
<MTIf name="selected">
<option value="<MTCategoryLabel>" selected="selected"><MTCategoryLabel></option>
<MTElse>
<option value="<MTCategoryLabel>"><MTCategoryLabel></option>
</MTIf>
</MTCategorySearchLink>
</MTSubCategories>
</select>
</div>
</MTTopLevelCategories>
<div>
<input type="text" name="search" id="searchText" value="<$mt:SearchString$>" onkeypress="searchTextCheck();" />
<input type="hidden" name="CategorySearch" value="1" />
<input type="hidden" name="CategorySearchIgnoreText" id="CategorySearchIgnoreText" value="1" />
<input type="hidden" name="IncludeBlogs" value="<$mt:BlogID$>" />
<input type="hidden" name="limit" value="<$mt:SearchMaxResults$>" />
<input type="submit" accesskey="4" value="検索" onclick="searchTextCheck();" onkeypress="searchTextCheck();" />
</div>
</form>
■追記(2010/10/27)
MTCategorySearchLinkのtypeを「relative」から「absolute」に変更しました。
検索ワードを入力するテキストフォームのタグに
「id="searchText"」
「onkeypress="searchTextCheck();"」
CategorySearchIgnoreTextのタグに
「id="CategorySearchIgnoreText"」
検索ボタンに
「onclick="searchTextCheck();"」
「onkeypress="searchTextCheck();"」
をそれぞれ追加し、再構築してください。
これで、複数のカテゴリによる絞込み検索ができるようになったかと思います。
いや~、それにしてもすばらしいプラグインですね。
感謝感謝です。
nandani | 2010年10月26日 | コメント(6) | トラックバック(0) | CMS関連 | JavaScript関連
Quick Commentsとjqueryとの併用の注意点
jqueryを利用して、Wordpressでページ遷移なしにコメントを投稿できるプラグイン「Quick Comments」(作成者:「をかもと」さん)
使用するにあたり、いくつか注意点があります。もしこれを使用しているのにうまく動かない場合は、こちらの「Quick Comments FAQ」をご覧ください。
なお、FAQには書かれていませんが、Quick Commentsとは別にheader.phpでjqueryを呼び出している場合にも正常に動作しなくなる場合があります。
その時は、jqueryの記述を取り除くか、「wp_head()」の前にjqueryを呼び出してください。
例)
<script type="text/javascript" src="<?php bloginfo('template_url'); ?>/js/jquery-1.4.2.min.js"></script>
<?php wp_head(); ?>
本来、Quick Commentsでjqueryを呼び出しているため、別途jqueryを設ける必要はないはずなのですが、独自に作成したスクリプトが動かなくなるケースもあります。その場合に上記の方法で対処してください。
今回参考にさせていただいたサイト
WordPress Plugins/JSeries:該当記事「Quick Comments (コメント投稿 Ajax 化)」「Quick Comments FAQ」
nandani | 2010年08月10日 | コメント(0) | トラックバック(0) | CMS関連
WordPressから直接Googleマップを設定できるプラグイン
Google Maps Anywhere」を使用すると、WordPressの記事入力フォームから直接Googleマップの地図にピンマーク(所在地マーク)を付けることができます。(ただしGoogleマップAPIが必要)
ダウンロードサイト:「WordPress Plugins/JSeries」さんのサイト。
マイマップやストリートビューにも対応。ただ上記で紹介したダウンロードページにはマイマップのやり方が書かれていませんでした。マイマップのやり方についてはこちらのページで紹介されています。
「Odysseygate.com」さんのサイト
※注意点
「Odysseygate.com」さんのサイトで紹介されていたやり方では「/wp-content/uploads/hoge.kml」という風に、「ルートからのパスを記述する」方法で説明されていました。しかし自分がテストしたサーバ(ヘテムルサーバ)ではなぜかうまくいかず、「httpから始まるURLパス」を記述することで成功しました。サーバによって設定方法が変わる可能性があるのでご注意ください。
なお、ここでいう「マイマップを使用できる」というのは、あくまで「予め作成されたマイマップを読み込める」というものです。WordPressの入力フォームから設定したピンマークがマイマップにも反映されるわけではないのでご注意ください。
今回参考にさせていただいたサイト
nandani | 2010年07月27日 | コメント(0) | トラックバック(1) | API関連 | CMS関連