1. ホーム
  2. 車、バイク、自転車
  3. バイク
  4. 外装パーツ
  5. W800 STREET(19年) ロードコメット ビキニカウル クリアスクリーン 未塗装(サフェーサ仕上げ) CHIC DESIGN(シックデザイン)
2022秋冬新作 日本限定 W800 STREET 19年 ロードコメット ビキニカウル クリアスクリーン 未塗装 サフェーサ仕上げ CHIC DESIGN シックデザイン atomnet.eu atomnet.eu

W800 STREET(19年) ロードコメット ビキニカウル クリアスクリーン 未塗装(サフェーサ仕上げ) CHIC DESIGN(シックデザイン)

19250円

W800 STREET(19年) ロードコメット ビキニカウル クリアスクリーン 未塗装(サフェーサ仕上げ) CHIC DESIGN(シックデザイン)

【適合車種】W800 STREET 【適合年式】2019年 【商品説明】やや丸みを帯びたスタンダードなデザインのビキニカウル。 ●各純正色塗装に対応し、高い整流効果と精悍なスタイリングを得ることができます。 ●車両に合わせたカットラインを持ち、ノーマルライトにボルトオンで装着可能。ライト左右ラバーマウント、下部リジットマウントの3箇所での確実な固定を実現しています。 ●カウル本体はFRP多層構造、裏面サフェースマット仕上げ。 ●ポリカーボネイト製スクリーンを標準装備。

W800 STREET(19年) ロードコメット ビキニカウル クリアスクリーン 未塗装(サフェーサ仕上げ) CHIC DESIGN(シックデザイン)

スマートウォッチ 日本製センサー 体温 温度計 ブルートゥース通話機能 血圧 心拍 歩数 レディース 腕時計メンズ 健康管理 活動量計 line対応 睡眠検測 日本語中古 バルダン ドゥーズィエムクラス バレエシューズ フラットシューズ パンプス レオパード ヒョウ柄 38 24-24.5cm ベージュ レディース 【ベクトル 古着】パンツ デニム ジーンズ mp8716-裾ZIPスーパーテーパードパンツ(ブラックデニム)アクセサリー パーツ ネックレス メール便可 スチール甲丸ダエンアズキネックレスチェーン ロジウムメッキ仕上げ 全長51cm 韓国製品 chain14 メンズ レディース東洋佐々木ガラス HS強化グラス ウォーターバリエーション エレガント12ロングタンブラー 360ml T-24103HSダナー Danner ラップトップ モック2 ラバーシューズ D219105 SS22 WRAPTOP MOC2 メンズ・レディース アウトドア スリッポン スニーカー ESPRESSO 茶三菱鉛筆 消せる蛍光ペン プロパスイレイサブル 5色 PUS151ER5C(キョウエツ) KYOETSU ちゃんちゃんこお祝いセット 鶴亀甲柄 赤 紫 黄 3点セット (ちゃんちゃんこ/頭巾/扇子) (黄(?クリッピングポイント製 マフラーガスケット 適合:モンキーRカゴバッグ レディース ショルダーバッグ 肩掛けバッグ カバン 無地 可愛い おしゃれ シンプル 花 フラワー 軽量 手提げ かごバッグ 森ガール 春メッキタイプローダウンブラケット ウイルズウィン(WirusWin) マジェスティ(MAJESTY)4HCプレゼント 女性 実用的 フラットポーチ クラリス チャーム付 メイクポーチ 化粧ポーチ 小物入れ シェニール織 アーンジョー 40代 50代 60代セール価格 返品可 アディダス公式 ウェア・服 トップス adidas 3ストライプ 半袖Tシャツ 半袖 eoss22ssDISNEY ディズニー ボールペン 替え芯 1本 ミッキー ミニー親子ペアルック ベビー 親子お揃い 立体熊柄 半袖Tシャツ ベビーロンパース パパ ママ おそろい 親子コーデ 家族 ギフト プレゼント 夏休み旅行バス釣り用ハードルアー メガバス BIG GABOT(ビッグガボット) 77mm カエルシャッド送料無料◆女子高校制服セーラー服シャツフリルスカート 長袖 女の子セーラー服スカート制服スクールウェア卒業式 入学式コスチュームパーティグッズモズ バッグ トートバッグ moz VASKA 2wayベジタブルバッグ トート 2WAYトートバッグ ショルダー A4 エコバッグ レディース ZZHC-03スーパーカブ110(SUPERCUB) フロントバスケット メッシュタイプ HONDA(ホンダ)

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
')