一つ置きに記事のスタイルシートを変えてみる

div class="styleA<MTIf name="__even__">  styleB</MTIf>">
以下でもOKです。
<div class="<mt:if name="__even__">styleA</mt:if><mt:if name="__odd__">styleB</mt:if>">

画像を一つ置きに変えるなどの応用にも。
<MTIf name="__odd__"><img src="/img/imageA.gif" alt="" /></MTIf>
<MTIf name="__even__"><img src="/img/imageB.gif" alt="" /></MTIf>


覚書までに。

__first__
初回の繰り返しであれば1

__last__
最後の繰り返しであれば1

__odd__
奇数回の繰り返しであれば1

__even__
偶数回の繰り返しであれば1

__counter__
現在の繰り返し回数

<mt:Entries>で最新記事を除いて表示する

<mt:Entries offset="1">

offsetモディファを使います。
"0"は全件表示になります。
lastnモディファと組み合わせて使えます。

<mt:Entries lastn="10" offset="1">

最新記事1件を除いて、10件まで表示、
というようなふうに。

べんり。

TinyMCEで emoddyを使う方法

TinyMCEはWYSIWYGエディターのプラグインです。MTで記事投稿の際エディタソフトのような使用感があります。スマイリー(顔アイコン)が挿入出来ますが、絵文字の挿入はありません。
そこで、絵文字を使用可能にするプラグイン「emoddy」を、TinyMCEの中に追加する方法を調べたので、レポートします。


参考サイトはコチラです。


<1>まず、TinyMCEをインストールします。(すでにしてある場合は飛ばして下さい)
このページからダウンロードページへ誘導してくれます。

<2>次に、emoddyをインストールします。
からダウンロード、フォルダ名を「emoddys」に変えます。
「mt-static/plugins/TinyMCE/lib/jscripts/tiny_mce/plugins」にそのフォルダをアップします。

<3>
すでにあるTinyMCEの設定ファイルにemoddyを認識させる作業をします。
「mt-static/plugins/TinyMCE/js/initialize.js」のファイルをダウンロードしてエディタで開きます。
「plugins : "safari・・」という記述にemoddys,を追加します。
→「plugins : "emoddys,safari・・」

<4>
MTのシステムのプラグインの設定画面で「TinyMCE」を開き、「エディターに表示するボタンの設定 」をカスタムに変更、
既存のボタンの名前が羅列しているのでカンマ(,)をおいて「emoddys」を追記します。で完了です。
system_plugin.gif

新規投稿などで確認してください。おひさまマークがemoddyです。
btn.gif
emojipanel.gif

ブログの振り分け~PC版とモバイル版~

プラグインやサービスを使う手もありますが、PC版のページと携帯版のページを作るのが面倒でないなら、それぞれのテンプレートを作るのもシンプルで良いです。

<1>携帯版インデックスページを作る
MTで「インデックステンプレートを複製」(ファイル名の左側のチェックボックスを入れて、アクションのプルダウンからテンプレートの複製を選択)します。
Dreamweaverなどでざっとhtml組んで(手打ちでももちろんいいですが)複製したインデックステンプレートにコピーペーストし、テンプレートの設定画面でファイル名をPC版とは別の名前にしたあと、保存・再構築をかけます。

<2>携帯版のブログ記事ページを作る。
以下のサイトを参照しました。
http://webdesigner.hikonet.net/mt/20090110.php
アーカイブテンプレートで、PCのブログ記事のテンプレートを複製します。
テンプレートの設定で新しいアーカイブマッピングを作成にし、種類を「ブログ記事」パスのところは私は「m/%y/%m/%d-%s%x」としました。最初のm/はmディレクトリに携帯関係のファイルを入れる決まりにしたからです。
保存をクリックします。

携帯インデックスページに戻り、プログ記事へのリンクを
<a href="<$mtBlogURL$>m/<$MTEntryDate format="%Y/%m/%d-%S"$>.html"><$mt:EntryTitle$></a>
と設定します。再構築をかけます。
これで、携帯版ブログ記事が
http://ドメイン/m/2011/08/12-09.html
などのように生成されます。

<3>同じ要領で携帯月別ブログ記事リストを作成する
月別ブログ記事を複製し、アーカイブマッピングは「m/%y-month/%m/%d-%s%x」、種類が月別、インデックスページじ記述するリンクは、
<a href="<$mt:BlogURL$>m/<$MTArchiveDate format="%Y-month/%m/%d-%S"$>.html"><$mt:ArchiveTitle$>(<$mt:ArchiveCount$>)</a>
にしました。

これで、各プログ記事と、月別記事のページが生成されます。

さて、うまく行かなかったのが、カテゴリ別ブログ記事のページです。
考え方は同じはずなのに、何がいけないのか、ページ生成されないし。
この仕事にいつまでもかかりっきりになってる訳にもいかないし。
そこで。

いや、大したことしてません。すみませんもったいぶって。
カテゴリ用にMT新規で作りました。別のMTにカテゴリ関係だけ飛ばして、記事はインクルードで対応しました。
長くなってしまったので、詳しくは、次回にて。m(_~_)m

MTOSで、カテゴリに画像を割り当てる

カテゴリごとに画像を割り当てます。
正確に言うと、カテゴリの管理画面に、カスタムフィールドを追加します。
カテゴリと対になるもので、テキスト入力出来るものを作ります。ここに画像のファイル名を入力して、テンプレート側で画像が表示できるHTMLタグを設定しておきます。

参照ページはこちらです。(感謝)
Under the Bridge
MT4.1:プラグイン作成におけるDBへのフィールド追加について(カテゴリ編)


具体的には以下です。

<1>プラグイン作成
---------------------------
package MT::Plugin::SubitemCat;
use base 'MT::Plugin';

use strict;

use MT;
use MT::Plugin;
use MT::Template::Context;
use MT::Entry;

# register plugin
my $plugin = __PACKAGE__->new({
    name => 'SubitemCat',
    key => 'SubitemCat',
    version => '1.00',
    author_name => 'your name',
    description => 'Sub item of Cat',
    schema_version => '1.00',
});
MT->add_plugin($plugin);

# initialize registry
sub init_registry
{
    my $plugin = shift;
    $plugin->registry({
        object_types => {
           'category' => {
              'sort_index_custom' => 'string(255)',
           },
        },
        tags => {
            function => {
                'CategorySortIndex' => sub{&_hdlr_sort_index_custom;},
            },
        },
    });
    
}

sub _hdlr_sort_index_custom {
    my ($ctx, $args) = @_;
    my $tag = 'CategoryIndexAdd';
    (my $category = $ctx->stash('category')) || return $ctx->_no_category_error('MT' . $tag);
    return $category->sort_index_custom || '';
}

1;
-----------------------------

これで CategorySortIndex というMTタグが存在するようになります。
SubitemCat.plとして、mtフォルダ直下「plugins」ディレクトリに入れます。
任意で「SubitemCat」などの名前のフォルダに入れます。

次に管理画面にカスタムフィールドを表示させるためのファイルを作ります。
mt直下「tmpl」内「cms」内の「edit_category.tmpl」をダウンロード、以下ソースを追加します。


------------------------------
(省略)
    <fieldset>
        <h3><__trans phrase="Outbound TrackBacks"></h3>
<mtapp:setting
    id="ping_urls"
    label="<__trans phrase="Trackback URLs">"
    hint="<__trans phrase="Enter the URL(s) of the websites that you would like to send a TrackBack to each time you create an entry in this category. (Separate URLs with a carriage return.)">"
    help_page="categories"
    help_section="categories_urls_to_ping">
    <textarea name="ping_urls" id="ping_urls" cols="" rows="" class="full-width short"><mt:var name="ping_urls" escape="html"></textarea>
</mtapp:setting>
    </fieldset>



<!-- ここから追加部所 Category Sort Add -->
    <fieldset>
    <h3>Input Category Sort Index</h3>
<mtapp:setting
    id="sort_index_custom"
    label="Category Sort Index Input">
    <div class="textarea-wrapper">
        <input name="sort_index_custom" id="sort_index_custom" class="full-width" maxlength="100" value="<mt:var name="sort_index_custom" escape="html">" class="wide" />
    </div>
</mtapp:setting>
    </fieldset>
<!-- ここまで追加部所 Category Sort Add -->







<mt:setvarblock name="action_buttons">
    <button
        type="submit"
        accesskey="s"
        title="<__trans phrase="Save changes to this category (s)">"
        class="save action primary-button"
        ><__trans phrase="Save Changes"></button>
</mt:setvarblock>
<mt:include name="include/actions_bar.tmpl" bar_position="bottom" hide_pager="1" settings_bar="1">
</form>

</div>
<mt:include name="include/footer.tmpl">

------------------------------

保存したら、mt直下「alt-tmpl」内「cms」内にアップします。そうすると、MTが優先的にそちらを読みに行きます。

管理画面「.../mt/mt.cgi」に再度サインインすると、バージョンアップを知らせる画面が現れると思います。そうしたらまずは成功。
カテゴリの管理画面を見てみると「Category Sort Index Input」というタイトルのカスタムフィールドが新しくあると思います。

テキストも入力できますが、今回は画像のファイル名を入力しておきます。
画像もアイテムやFTPを使ってアップしておきます。

最後にテンプレートのカテゴリ表示に以下のようなHTMLタグを追加します。。
--------------------------------

<mt:Entries>

<mt:IfNonEmpty tag="EntryCategories">
<mt:EntryCategories>

<img src="<$mt:BlogURL$>/img/<$mt:CategorySortIndex$>" alt="<$mt:CategoryLabel$>" />

</mt:EntryCategories>
</mt:IfNonEmpty>
                            
</mt:Entries>

--------------------------------

上記で、指定した画像にカテゴリ名のaltが入って表示されます。

利用方法としては、カテゴリのリスト表示などで個別のアイコン画像を頭につけたりとか、リスト自体を画像で組んだり出来ますね。

長くなってすみません。
5  6  7  8  9  10  11  12  13  14  15

▲トップへ戻る

* FEED


presented by 地球の名言