June 2004 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
2006年も宜しくです♪最近はmixiとカラオケにうつつを抜かしていますが(^^;

June 05, 2004

複数Categoryなページめくりの再構築

複数Categoryなページめくり」にてphil ringnalda dot comさんの、PreviousNextInCategoryを若干改造して使用したが・・・、1こ実は気に入らない所があった。

新規エントリしたときや、更新でカテゴリーを追加したとき、同じカテゴリのエントリがホントに前後のエントリなら自動的にそちらも更新かかるが、2つ以上離れていると更新されない。

おひらは、それを回避するためにこれまで、関連カテゴリなエントリだけ別途再構築していたのだ。
rebuild 支援ツールを入れる3」にて作成した、Individualアーカイブだけの再構築でである。
しかし、面倒<おひ>というか忘れがちだし、以前の同一カテゴリのエントリーがずいぶん前のだと探すのが面倒とかまー、忘れそうである。

というわけで、若干Movabletype(おひらが使用しているのはこの時点で2.661)をいじることにした。
参照したのは、HINAGATAさんの「HINAGATA-Photo Tips #003」と、Activity Memoさんの「rebuild 支援ツール」と、PreviousNextInCategoryのプラグインソースそのものである。
感謝(ぺこ)

というわけで、早速いじってみる。

【前提】
当然だが、、PreviousNextInCategoryはすでにプラグインとして稼働しているモノとする。故にテンプレートもすでに修正済みとする。
今回再構築を追加する対象は、カテゴリ内の前後エントリのIndividual Archivesのみである。
故に、DailyやMonthlyなど他アーカイブについては、現状通りの動きを行う。
(いじりたい人はてきとーに参考にしてやってくれい(笑))

さて、いじったところはというと、上記「HINAGATA-Photo Tips #003」と同じ場所。
mt.cgiのあるディレクトリの下のlibディレクトリの下のMT.pm
(そう、ちゃんとバックアップを取ってから手をいれることは必定であるな。おひらすっこーんとしくじるし<こらこら)

mt.cgiのあるディレクトリをMT_DIRとすると
MT_DIR/lib/MT.pmというファイルである。

MT.pmの226行目あたり


return 1 unless $param{BuildDependencies};


という文字列を探す。

その直後に以下の行を追加する。

    my $cats = $entry->categories;
# previous
    for my $cat (@$cats) {
        my $prev = $entry->previous(2);
        while ($prev && !$prev->is_in_category($cat)){
         $prev = $prev->previous(1);
        }
        if ($prev) {
            $mt->_rebuild_entry_archive_type(Entry => $prev,
                Blog => $blog,
                ArchiveType => 'Individual')
                or die $mt->errstr;
        }
# next
        my $next = $entry->next(2);
        while ($next && !$next->is_in_category($cat)){
            $next = $next->next(1);
        }
        if ($next) {
            $mt->_rebuild_entry_archive_type(Entry => $next,
                Blog => $blog,
                ArchiveType => 'Individual')
                or die $mt->errstr;
        }
    }
まーしくじってるとこがあるかもしれんが、とりあえず想定通りの動きはしたはず<はずかい・・おひぢぶん

2004/7/18追記
複数Categoryなページめくりの再構築(修正)」にて上記のちょろっと修正版を載せてます。

2004/9/25追記
複数Categoryなページめくりの再構築(プラグインありなし判定)」にて上記のさらにちょろっと修正版を載せてます。(というても、プラグイン有り無し判定不用なら全く役立たずな修正)

Posted by Yacchan at June 5, 2004 10:39 PM Clip!! IB MovableType
コメント(直近6件まで表示、全33件)
Trackback: 実はAV男優も使っていた!元ホスト600人斬り、枕営業を駆使してホストクラブでトップにのし上がった私が教える。コトバと愛撫の8つの魔法で狂ったようにバンバン女性をイカせる秘術
Excerpt: 実はAV男優も使っていた!元ホスト600人斬り、枕営業を駆使してホストクラブでトップにのし上がった私が教える。コトバと愛撫の8つの魔法で狂ったようにバンバン女性をイカせる秘術続きはこちらから  【PR】200万を2年9ヶ月で...
Weblog: お気軽主婦がネットで副業生活
Tracked: February 22, 2007 12:12 AM
Trackback: アービトラージFX
Excerpt:
Weblog: アービトラージFX
Tracked: February 22, 2007 06:40 PM
Trackback: こんなのあります!無視したらもったいない゚(゚`∀´゚)゚!
Excerpt: ★こんなに丁寧なマニュアル見たこと無い(@@)!会社員のかた、OLさん、主婦の方、ともかく少しでもアフィリエイトに興味があるのでしたら、私に少し時間をください。絶対これ欲しい??!私は、これを見て、そんな衝動に駆られました。ちょっとこれを...
Weblog: 生活にうるおいを
Tracked: February 24, 2007 01:07 AM
Trackback: プリントアウトして見た方がいいです。
Excerpt: きわめて再現性の高いアドセンス必勝法です。 もろ、目からウロコです。 とにかく、諭吉アドセンスです。
Weblog: 情報商材ブログ
Tracked: March 9, 2007 03:31 PM
Trackback: CDなどが無料プレゼントされます!
Excerpt: インターネットビジネスでご活動の皆様まずは、こちらをチェックしてください。なんと、合計5万9700円相当のCDやEブック、ニュースレターに再販権まで、無料プレゼントです!■無料プレゼント1】『裕福になるための10の方法』CD版-ダン...
Weblog: お役に立つかも・・・☆プチ情報!☆
Tracked: March 19, 2007 02:32 PM
Trackback: mixiでお手軽高収入☆
Excerpt: まず、あなたにはmixiの会員になっていただきます。 簡単な自己紹介文を書...
Weblog: 内職在宅ワーク|内職で在宅ワーク
Tracked: March 20, 2007 03:30 PM
コメントする









edit for admin