1. ホーム
  2. キッチン、日用品、文具
  3. キッチン、台所用品
  4. 調理器具
  5. ハリオ  HARIO 耐熱ガラス片口ボール4個セット 実用容量:100ml・200ml・400ml・800ml
いいスタイル 年末年始大決算 ハリオ HARIO 耐熱ガラス片口ボール4個セット 実用容量:100ml 200ml 400ml 800ml atomnet.eu atomnet.eu

ハリオ  HARIO 耐熱ガラス片口ボール4個セット 実用容量:100ml・200ml・400ml・800ml

330円

ハリオ  HARIO 耐熱ガラス片口ボール4個セット 実用容量:100ml・200ml・400ml・800ml

●便利な4サイズ!軽くて持ちやすい!

●耐熱ガラスだから電子レンジや熱湯でも使えます。

●片口だから注ぎやすく混ぜやすい!

●指にフィットする持ちやすい形状です。

●重ねて収納できて省スペース。

●ソースやサラダなどを作ってそのままテーブルへ。

●目安目盛り付き(※S・M・Lサイズのみ)


■商品仕様■

 サイズ
  SS:径82mm・高50mm
  S:径105・高60mm
  M:径131・高70mm
  L:径160×高80mm

 実用容量
  SS:100ml
  S:200ml
  M:400ml
  L:800ml

 材質
  本体:耐熱ガラス(耐熱温度差120℃)

 原産国:日本

※食器洗い乾燥機のご使用ができます。






ハリオ  HARIO 耐熱ガラス片口ボール4個セット 実用容量:100ml・200ml・400ml・800ml

ショートパンツ ワイドパンツ 2色 レディース ショート丈 ボトムス ハイウエスト ポケット付き 美脚 ゆったり 着痩せ Aライン 短パン パンツ 春夏 OL 着回しドーチェ シザーケース MSB-7775 ブラック万年筆 helico 〈諏訪 匠〉 特別生産品 ( 限定品 ) 14Kペン先 コンバーター両用式 RAIGO 雷轟 RAIGO / 高級 ブランド プレゼント おすすめ 男性 女性 人気カジュアルシューズ メンズ ハイカット 運転靴 ドライビング コンフォート 防滑 ウォーキング 柔軟 お洒落 アウトドア 紳士用 ウォーキング 手作り 通気性抜群シューズ バレエシューズ Liberty Doll / スクエアトゥフラット美脚バレエパンプス(1129)ラルグス 全長調整式車高調 スペックS ソリオ MA15S 取付セット アライメント込 LARGUS Spec S 車高調整キット サスペンションキット ローダウン コイルオーバー仲田錦玉 九谷焼玉盃 渦打青粒盛金鉄仙唐草 内金彩和食器 織部間道文 長角皿 トレー 手造り おうち カフェ 食器 陶器 前菜 焼き物 おしゃれ うつわ 軽井沢 春日井白山陶器 ブルーム デザートカップ 10cm革ケアキット/防水スプレー どちらかプレゼント!カステルバジャック CASTELBAJAC セカンドバッグ RONDEAU ロンド 085204 牛革 メンズバッグ 紳士バッグキーホルダー レディース かわいい 肉球 猫 本革 日本製 イニシャル キーリング チャーム ギフト カワイイTOYOTAトヨタ純正部品 プレミアムホーン ノア 80系 品番:08522-28040rizoma rizoma:リゾマ フルードタンク[BAKB-1010M-0500] SWAGE-LINE(スウェッジライン) イージーオーダーブレーキホース 汎用 500mmエルスペース レディース ボトムスのみ 水着 L Space Women#039;s Monroe Topエルバイン アウター メンズ 正規販売店 elvine ジャケット ナイロンジャケット COLE NYLON JACKET FUNCTION STRETCH 193004 110 BLACK☆ カーズS6 子供用 包丁 まな板 はさみ 通販 セット キッズ包丁 子供包丁 ディズニー おしゃれ かわいい 女の子 男の子 キャラクター グBose SLink REV SLV II SoundLink Revolve II Bluetooth speaker Luxe SilverVW トゥーラン ビートル イオス フロント ロアアーム コントロールアーム ボールジョイント 左右セット 1K0407365C 1K0407366C

MTContentNextタグ、MTContentPreviousタグを出力ファイル名(ベースネーム)でソートする方法

December 14,2021 11:55 PM
Category:[コンテンツタイプ]
Tag:[MovableType]
Permalink

MT7のMTContentNextタグ、MTContentPreviousタグを出力ファイル名(ベースネーム)でソートする方法を紹介します。

1.問題点

MTContentNextタグ、MTContentPreviousタグは、デフォルトの機能では「出力ファイル名」でソートすることができないようです。

公式ページでは、MTContentNextタグ、MTContentPreviousタグに設定できるdate_fieldモディファイアの説明として次のようになっています。

'modified_on', 'authored_on', 'created_on' または 日付/時刻型のフィールドの ID, ユニークID, または名前を指定すると、指定されたフィールドの日時よりも新しいコンテンツデータを呼び出します。指定がない場合は、authored_onが利用されます。

ということで、別の手段を使って出力ファイル名でソートする方法を紹介します。

2.出力ファイル名でソートする

ここではMTContentNextタグ、MTContentPreviousタグの代わりに、テンプレートタグを使ってソートする方法を紹介します。

テンプレートは下記になります。このテンプレートをコンテンツタイプアーカイブの任意の位置に設定してください。赤字の「コンテンツタイプ名」には自コンテンツタイプ名を設定してください。

<mt:ContentIdentifier setvar="identifier">
<mt:setvar name="flag" value="0">
<mt:Contents content_type="コンテンツタイプ名" lastn="0" sort_by="identifier" sort_order="ascend">
  <mt:if name="flag" eq="1">
    <mt:setvarblock name="prev_page"><a href="<mt:ContentPermalink>">前のページ</a></mt:setvarblock>
    <mt:setvar name="flag" value="2">
  <mt:elseif name="flag" eq="0">
    <mt:if tag="ContentIdentifier" eq="$identifier">
      <mt:setvar name="flag" value="1">
    <mt:else>
      <mt:setvarblock name="next_page"><a href="<mt:ContentPermalink>">次のページ</a></mt:setvarblock>
    </mt:if>
  </mt:if>
</mt:Contents>
<mt:var name="next_page"> | <mt:var name="prev_page">

3.解説

まず、コンテンツアーカイブページの出力ファイル名をsetvarモディファイアで変数identifierに保持します。

<mt:ContentIdentifier setvar="identifier">

フラグとして使う変数flagに0を設定します。

<mt:setvar name="flag" value="0">

コンテンツデータの情報を取得するブロックタグを実行します。「sort_by="identifier"」を設定しているので、出力ファイル名でソートされます。

<mt:Contents content_type="コンテンツタイプ名" lastn="0" sort_by="identifier" sort_order="ascend">
    :
</mt:Contents>

ブロックタグ内部でMTIfタグを実行します。フラグはまだ0なのでブロック内は実行されません。

  <mt:if name="flag" eq="1">

次にMTElseIfタグを実行します。

  <mt:elseif name="flag" eq="0">

フラグは0なので、MTElseIfブロック内部を実行します。

MTElseIfブロック内部はさらにMTIf文になっています。

    <mt:if tag="ContentIdentifier" eq="$identifier">
      <mt:setvar name="flag" value="1">
    <mt:else>
      <mt:setvarblock name="next_page"><a href="<mt:ContentPermalink>">次のページ</a></mt:setvarblock>
    </mt:if>

MTContentsブロックタグ内で実行している出力ファイル名(tag="ContentIdentifier"の部分)が、現在再構築中のページの出力ファイル名(変数identifier)と等しいか判定します。

    <mt:if tag="ContentIdentifier" eq="$identifier">

等しくなければ、MTElseタグのブロックを実行し、MTContentsブロックタグ内で実行している出力ファイル名を使ったリンクを変数next_pageに保持します。この処理はMTIfタグの出力ファイル名がマッチするまで毎回実施します。つまりマッチする直前のリンクを取得している訳です。

    <mt:else>
      <mt:setvarblock name="next_page"><a href="<mt:ContentPermalink>">次のページ</a></mt:setvarblock>

出力ファイル名がマッチすると、変数flagに1を設定します。

    <mt:if tag="ContentIdentifier" eq="$identifier">
      <mt:setvar name="flag" value="1">

このMTIf文は変数flagが0の場合しか実行されないので、これでMTIf文の処理を終了します。

変数flagが1となったので、外側のMTIfタグブロックが実行され、MTContentsブロックタグ内で実行している出力ファイル名をリンクとして変数prev_pageに保持します。このリンクはつまり、マッチした直後のリンクとなります。さらに変数flagに2を設定します。

  <mt:if name="flag" eq="1">
    <mt:setvarblock name="prev_page"><a href="<mt:ContentPermalink>">前のページ</a></mt:setvarblock>
    <mt:setvar name="flag" value="2">

これでMTContentsブロックタグ内の処理は行われなくなります。

MTContentsブロックタグを抜け、最後に、変数next_pageと変数prev_pageの内容(前後ページのリンク)を出力します。

<mt:var name="next_page"> | <mt:var name="prev_page">

前後ページのリンクはMTContentsブロック内部で表示する方法もあると思いますが、出力ファイル名が最後にマッチした場合など制御が複雑になりそうなので、MTContentsブロック終了後に表示するようにしました。

Comments [0] | Trackbacks [0]

Movable Typeの本文フィールドの表示オプションを有効にしたりドラッグできるようにする「BodyFieldCustomizerプラグイン」(MT7版)

December 8,2021 11:55 PM
Category:[記事投稿・編集]
Tag:[]
Permalink

Movable Typeで本文・追記フィールドの動作をカスタマイズする「BodyFieldCustomizerプラグイン」を公開します。

このプラグインは以前公開した「BodyFieldCustomizerプラグイン」のMT7版です。

1.機能

ブログ記事またはウェブページの本文・追記フィールドの表示オプションを有効にします。

プラグイン適用前

プラグイン適用後

また、本文・追記フィールドをドラッグできるようにします。

プラグイン適用前(クリックで拡大)

プラグイン適用後(クリックで拡大)

それぞれの機能は独立して選択できます。両方を同時に利用することも可能です。

2.価格

価格:\5,000-(税別)/1インストールMT(購入前に必ず動作確認してください)

上記リンクよりご購入後、プラグイン製品版のダウンロードURLをメールにてご連絡致します。

3.ダウンロード・インストール

展開した中にあるBodyFieldCustomizerフォルダをpluginsディレクトリにアップロードしてください。

システム管理画面の「ツール」→「プラグイン」で「BodyFieldCustomizer~」が表示されればインストール完了です。

4.プラグインの設定

プラグインを適用したいウェブサイト・ブログの「ツール」→「プラグイン」をクリックし、「BodyFieldCustomizer」→「設定」をクリックして、利用したい機能を選択し、「変更を保存」をクリックします。

Comments [0] | Trackbacks [0]

MT7のTinyMCE5にボタンを追加する方法

December 7,2021 12:03 AM
Category:[TinyMCE]
Tag:[TinyMCE]
Permalink

これは「Movable Type Advent Calendar 2021」7日目の記事です。

MT7のTinyMCE5にボタンを追加する方法を紹介します。

注:プラグインではなく、ファイルを直接編集しています。

ここでは、wysiwygモードではなく、HTML編集モードに切り替えた場合のh2要素および、h3要素用のボタンを追加してみます。

変更前

変更後

たまにはこういうエレガントでない、ゴリゴリのカスタマイズもいいんじゃないかと(笑)。

カスタマイズの前提として、TinyMCE5のプラグインを有効にしておいてください。

1.ボタン表示の設定

まず、ボタンを表示する設定です。

mt-static/plugins/TinyMCE5/lib/js/adapter.js

に"plugin_mt_source_buttons2"を追加します。

       :
            // Buttons using in source mode.
            plugin_mt_source_buttons1:'mt_source_bold mt_source_italic mt_source_blockquote mt_source_unordered_list mt_source_ordered_list mt_source_list_item | mt_source_link mt_insert_file mt_insert_image | mt_fullscreen',
            plugin_mt_source_buttons2:'mt_source_h2 mt_source_h3',
            // Buttons using in wysiwyg mode.
            plugin_mt_wysiwyg_buttons1:'bold italic underline strikethrough | blockquote bullist numlist hr | link unlink | mt_insert_html mt_insert_file mt_insert_image | table',
       :

追加する名前(mt_source_h2、mt_source_h3)は任意の名称でOKです。

複数のボタンを追加する場合、半角スペースで区切ります。区切り線を入れたい場合は、パイプ"|"を記述します(こちらも半角スペース区切り)。

また、同じファイルの変数suffixへの代入をコメントアウトします。

    var suffix = '';
    if(jQuery('script[src*="tinymce.min"]').length){
        // min
//        suffix = '.min';
    }

この設定をしておかないと、次項で設定するファイルのファイル名がplugin.min.jsになってしまいます。

2.ボタン定義の追加

1項で追加しようとしているボタンの定義を追加します。具体的には、

mt-static/plugins/TinyMCE5/lib/js/tinymce/plugins/mt/plugin.js

の"ed.addMTButton"が並んでいる一番最後に、下記の赤色部分を追加します。

       :
          ed.addMTButton('mt_source_h2', {
              tooltip : 'source_h2',
              text : '&lt;h2&gt;',
              mtButtonClass: 'text',
              toggle: true,
              onclickFunctions : {
                  source: 'h2'
              }
          });
          ed.addMTButton('mt_source_h3', {
              tooltip : 'source_h3',
              text : '&lt;h3&gt;',
              mtButtonClass: 'text',
              toggle: true,
              onclickFunctions : {
                  source: 'h3'
              }
          });
/*
          var filterd_attrs = [];
          var regexp = new RegExp(/^on|action/);
       :

addMTButton()の第1パラメータには1項で設定した名称を指定します。

第2パラメータのハッシュの意味は次の通りです。

  • tooltip:ツールチップ(指定した名称を使って、さらに3項のファイルで表示内容を定義)
  • text:表示するボタン
  • mtButtonClass:ボタンのクラス。ここでは"text"固定
  • toggle:"true"にすると、終了タグを挿入するまでボタン色が反転
  • onclickFunctions:クリックしたときの動作。指定した名称で別ファイルに定義

3.ツールチップの設定

mt-static/plugins/TinyMCE5/lib/js/tinymce/plugins/mt/langs/plugin.js

に、下記の赤色部分を追加します。

       :
    // HTML mode
    "source_bold": trans('Strong Emphasis'),
    "source_italic": trans('Emphasis'),
    "source_blockquote": trans('Block Quotation'),
    "source_unordered_list": trans('Unordered List'),
    "source_ordered_list": trans('Ordered List'),
    "source_list_item": trans('List Item'),
    "source_h2": 'h2要素',
    "source_h3": 'h3要素',
       :

キーは2項の"tooltip"の内容を設定し、値には表示させたい文字列を設定します。

値の部分は、本来、

trans('...')

と記述してローカライズに対応すべきですが、ここでは表示させたい文字列を直接記述しています。

4.クリック時の動作を追加

準備が少し面倒です。

編集するファイルは、

mt-static/js/editor.js

なのですが、改行やスペース文字が除去されていて、編集がやや難しいです。

ということで、私は、editor.jの内容を

https://beautifier.io/

で一旦整形し、editor.jsに上書きしてから作業しました(元の内容はバックアップしておいてください)。

ここではその前提で話を進めます。

mt-static/js/editor.js

に、下記の赤色部分を追加します。追加位置は"MT.EditorCommand.Source.prototype.commands['default']"がある行の直後です。

       :
    MT.EditorCommand.Source.prototype.commands['default'] = {
        h2: function(command, userInterface, argument, text) {
            this.execEnclosingCommand(command, '<h2>', '</h2>', text);
        },
        h3: function(command, userInterface, argument, text) {
            this.execEnclosingCommand(command, '<h3>', '</h3>', text);
        },
        fontSizeSmaller: function(command, userInterface, argument, text) {
            this.execEnclosingCommand(command, '<small>', '</small>', text);
        },
       :

ハッシュのキー"h2"や"h3"は、2項の"onclickFunctions"のハッシュキー"source"の値と対応させてください。

"function(command, userInterface, argument, text)"の部分は何も考えずにそのまま使ってください。編集が必要なのはexecEnclosingCommand()の第2、第3パラメータの開始タグ名と終了タグ名のみです。

execEnclosingCommand()は、選択文字列がある場合は自動的にタグで括り、選択文字列がない場合は開始タグを挿入(ボタンが反転)、文字を入力してもう一度ボタンをクリックすれば終了タグを挿入してくれるという、便利関数です。

この関数は、

mt-static/js/editor.js

に実装されています。

クリック時の挙動を変更したい場合は、独自関数をここに書いてもいいでしょう。

これでブラウザをリロードしてHTML編集モードに切り替えれば、冒頭のボタンが表示されると思います。

5.その他

TinyMCEをカスタマイズするときはブラウザの開発者モード(F12)を有効にしておくと、typo等はコンソールにエラーが表示されるので便利です。

Comments [0] | Trackbacks [0]
 1  |  2  |  3  |  4  |  5  | All pages
')