サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
iPhone 16
www.apstars.com
2009年11月14日 16:22 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) お題 「複数のブログがある場合、投稿したエントリ中にアイテム(画像)が存在する場合はリスト化し、そのリスト中の画像には画像そのもののへのリンクではなく当該エントリへのリンクを貼る」 Movable Type 5 のベータ版で作りました。 どんな風に見える? このブログのトップページ(http://www.apstars.com/blog/)の、サイドバー「photo」の写真リストのような感じになります。 複数ブログにまたがった場合でも新しいアイテムを順に取得できます。 コード <!-- インクリメントカウンタの初期化 --> <$mt:setvar name="counter" value="0"$> <MTBlogs> <MTEntries lastn="0">
2007年10月22日 19:29 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) MTAuthor関連を使う必要がありえるので、下調べを行った。方法は昨日のAsset関連調査と同じく、テンプレートを作成して簡単に。 Author情報吐き出しテンプレート インデックステンプレートへ、名称「Author調査用テンプレート」、出力ファイル名「author.html」として、したのコードを貼り付けて再構築する。以後このテンプレートのみの再構築でauthor.htmlへ調査結果が吐き出される。 <h2>登録ユーザでのAuthor情報</h2> <MTAuthors lastn="1"> <ul> <li>MTAuthorAuthIconURL=<$MTAuthorAuthIconURL$></li> <li>コメントしたユーザーがどのサービスのアカウント
2008年11月 4日 12:36 | Writer: yoshi | 記事本文 | コメント(3) | トラックバック(0) 昨日、思わぬ方から、当ブログ記事およびmtde.infoサイトへの記事への言及をいただいた。 ううむ...プラグインなのか? (今回はダイナミックパブリッシングなんだよ...) で、早い話、「切り捨て、切り上げ、四捨五入の演算は、JavaScriptかプラグインでしかできないのか?」ということである。理由はダイナミックパブリッシング対応のページで演算を行いたいから、とある。そして、Junnamaさん自らのお手本コードが掲載されている。 ...むむ...それは一秒も考えていなかった...なので、私も独自に、テンプレートタグのみで「切り上げ、切り捨て、四捨五入」コードを書いてみることにした。 MTSetVarTemplateを使用する このようなときに、MTSetVa
2009年5月11日 23:03 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 再び嵌った。が、改善した。覚え書きしておく。 jpegのexif取得のプラグインコードかいてて困ってたこと。 XAMPP環境でアイテムの追加(画像なんか)すると、 「Premature end of script headers: mt.cgi」 とゆうエラーが出てて、ストップしてしまう。開発どころではない。 「ああ、いろいろいじったもんな。こりゃ再インストールするべ」と軽い気持ちで着手。 それからが地獄でした...。 XAMPP1.7.1インストールとか調整→(略するが)なんか駄目 XAMPP1.6.6aに戻す。ここまでで一時間以上経過 そして直っていることを願いつつアイテム追加...すると 「Premature end of script head
2008年1月14日 15:57 | Writer: yoshi | 記事本文 | コメント(2) | トラックバック(0) Movable Type 4.1以降でしか動作しない。 先ほどのカテゴリ並べ替え(MT4.1:カテゴリの並べ替え(カスタムフィールド+ハッシュ変数))を更に拡張し、場所によって表示したい・したくないなどの機能を拡張したサンプル。 これも、プラグインは用いないが、カスタムフィールドを用いる。 準備1 下準備については、「MT4.1:カテゴリの並べ替え(カスタムフィールド+ハッシュ変数)」エントリも併せて参照のこと。ソートオーダー用のフィールドも必要となるからだ。 今度の場合も、カスタムフィールドで新しいフィールドを作成する。 システムオブジェクト:カテゴリ 名前:この実験では手抜きで「タイプA」とした。「表示タイプ1」や「食い物関係」「旅行関係」とかでもいい。 説明:
2009年2月15日 14:17 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 以前、MT4.xの環境でQRコード画像を生成するプラグインを作ってた。わかんないことなどがあり、MTにおいて実用できるレベルにまで到達しては居なかった。今日時間があったので、発作的にやってみた。 こんなケースで使えるかも モバイル対応のサイトで、QRコードをエントリ毎に出力したい。しかしよくあるQRコード画像生成サービス(こういうの http://www.star-click.ne.jp/e-poket/search/cgi/qr/)などを使うのは制約が多い・面倒・サービス終了時の生成画像のファイルのリンク切れなどが心配、そんな方へいいのではないか? 準備 perlモジュールとしてGD::Barcodeを使用する。 ローカル環境で実験する場合は、環境がXAMPPなど
2009年2月15日 17:35 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) JPEGファイルにはEXIF情報というデータが埋め込まれている。これを用い、エントリを投稿したときにアップロードした画像のシャッタースピード、撮影日時、カメラのメーカー、モデル名、GPS情報などを利用できるようになる。 EXIF情報とは。 1994年に富士フィルムが提唱したデジタルカメラ用の画像ファイルの規格。JEIDAによって標準化され、各社のデジタルカメラに採用されている。最新版はExif 2.2(Exif Print)。TIFF形式で画像についての情報や撮影日時などの付加情報を記録できるほか、縮小画像(サムネイル)を記録することができる。画像形式はRGB無圧縮方式やJPEG方式など複数の形式をサポートしている。 こんなケースで使えるかも フォトログなどで、使用
2009年2月 4日 22:09 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 「MT4のテンプレートタグとプラグインでサインカーブを描くことが出来るか?」というお題をやってみた。ほとんど発作的に。この例は一般的に役には立たんが応用すれば色々使えそうな感じ。 準備 少し準備が要る。三角関数は確かMTでは使用できないと思うので、以下プラグインを用いた。 MT4.1:MTの計算機能を拡張するプラグイン(CalcExp) コード <MTSetVarTemplate name="WaveDat"><MTSetVar name="tmp1" value="$x"><MTSetVar name="tmp1" value="3.141592" op="*"><MTSetVar name="tmp1" value="180" op="/"><MTCalcExp
2009年1月22日 23:58 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 使いではあると思われるが、なかなか日の目を見ないMTSetvarTemplateテンプレートタグの使用サンプルのひとつ。 AAのクマーのバリエーションを手抜きで書く。 以下サンプルコードを貼って書いてみた。 Normal ∩___∩ | ノ ヽ / ● ● | クマ──!! | ( _●_) ミ 彡、 |∪| 、`\ / __ ヽノ /´> ) (___) / (_/ | / | /\ \ | / ) ) ∪ ( \ \_) Nerupo ∩___∩ | ノ ヽ / + + | 寝るぽ | ( _●_) ミ 彡、 |∪| 、`\ / __
2007年5月 5日 07:09 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) Rico JavaScriptのブロックの角丸化は、エントリページの body onloadのindividualArchivesOnLoad(commenter_name) とバッティングすることがある。私の環境では、エントリページのみ角丸が出来なかった。解決策は? 修正点1 修正前 <body onload="individualArchivesOnLoad(commenter_name)"> 修正後 <body> 修正点2 以下コードをbody内に追加する。テンプレート後半で構わない。 追加コード <script type="text/javascript"> <!-- individualArchivesOnLoad(commenter_name); //-
色んな方法がある。大きく分けると3種類。 乱数を用いる用途としては、色々考えられる。MTのデフォルトにはその機能がない。 JavaScriptを用いる JavaScriptで乱数を得るときは以下のようなコードでいい。 ただしサーバーサイドでなんかの処理(テンプレートの処理分岐など)を行いたい場合には、使えない場合が多い。使途は狭いか? MT4.1で乱数を取得したい場合 <MTSetVarBlock name="RndValue"> <SCRIPT language="JavaScript"> <!-- document.write(Math.floor(Math.random() * 10)); //--> </SCRIPT> </MTSetVarBlock> <MTGetVar name="RndValue"> プラグインを用いる 個人的にはこれが一番使いやすいと思う。再構築を行うとき、
2008年5月 6日 09:52 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) Movable Typeの計算機能を拡張するプラグインを作成しました。 SetVar系のテンプレートタグには変数を用いた演算機能はあるのですが、...ちょっと貧弱で直感的にわかりづらいです。 ダウンロード http://www.apstars.com/blog/download/calcexp.zip 制限事項:何もなし。勝手に使ってください。しかし使った結果には一切責任を持ちません。また、今のところプラグインの配布にはあまり熱心ではないので、将来的にリンク切れてたらスイマセン。 本当はmtde.infoのほうで解説・配布しようかと考えています。 適用 解凍したファイルを親フォルダ(calcexp)ごとpluginsフォルダへ放り込んでください。 仕様 テーマは「直
2007年12月31日 15:02 | Writer: yoshi | 記事本文 | コメント(2) | トラックバック(0) 昨日のコードでは、htmlソースへ謎の空白行が大量に生成されて、いかにも見栄えが悪い。何とかならないだろうか?と思い、改造してみた。結果、OKのものが出来たので公表してみよう。原形をとどめないほどにコードが変わった。 なお、配列やなんかをバンバン使っているんで、1月末にリリース予定のMT4.1でないと動作しないと思う(MT4.0では試してはいないんだが)。今はベータ版(MT4.1b2)で作成している。 理解を深めるためのコード 実装コードは少しソースの見通しが悪いので、改行とインデントとコメントつきのコードを以下に。 <MTIfNonZero tag="AssetCount"> <!-- counter変数をゼロで初期化する --> <$mt:setvar nam
2008年5月 5日 16:29 | Writer: yoshi | 記事本文 | コメント(2) | トラックバック(0) 先日作成した「営業日(休日)をイッパツで表現するカレンダープラグイン」であるが、テンプレートって何?という人が少しでも使いやすいようにと、ブログごとに設定をつけた。 alt-tmplフォルダへ拡張した設定画面を置き、追加したDBフィールドとの連携を図っただけである。 プラグインを入れると、ブログの設定画面が下図のようになる。 Input Target Month ここには、カレンダーで表示したい年と月を「2008/05」のようなカタチで入力する。 Input Holiday Data ここには、休日とする日をカンマ区切りで「5,6,12,13,20,21,28,29」という具合に入力する。 拡張されるテンプレートタグ MTHolidayCalendarCurrent
2008年4月29日 14:06 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) MT4LP5の4次会のとき、「MTで構築するサイトで、そこがお店屋さんとかで、「今月のお休みの日」を表示できるカレンダーがあるといいですよね」という話になり、どうやったらそんな小難しいことができるんだろう...と思った。 ちょうど横にいたThe blog of H.Fujimotoの壱さんと「初心者がこれを実現するには、ユーザーインターフェイスがないと苦しい?」とか「エントリポストの際に、「休日」というデータフィールドが必要なのか?」などと話していたのですが。 エントリは毎日書くものではないという前提、かつ、休日を表示するということは未来の予定を表示するということ。なので、前もってデータとして与えておかねばいけない、これは確定。 MTの標準テンプレートタグで組もうに
2008年4月25日 23:20 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) メモ的に。 ファンクションタグ、ブロックタグ、モデファイア、コールバックを生成する最小単位のプラグイン。レジストリを使用する。 ちなみに現在のところ読んでいる資料はこちら↓。英語サイトだが、コードはどうせ英語なんだし、フィーリングで読める。 http://www.movabletype.org/documentation/developer/ ※2008/05/06 コールバックを追加 ファンクションタグ プラグインで拡張したファンクションタグである<MTSampleFunction>と記述すると、「This Is Sample」を返すだけのサンプル。 package MT::Plugin::SampleFunction; use MT::Plugin; use b
2008年2月11日 01:54 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 新しいサイト用に、Asset関連の記事を書いている。 その中から、「MT4.1:イメージの幅指定で高さを自動的に計算(Asset系)」という記事があるのでピックアップしてみよう。 ばらばらな画像サイズの、幅を指定するだけで全ての画像の幅を統一する。高さは演算した縦横比より自動的に演算して調整する。つまり縦横比は変わらない。 あくまでもサンプルであり、実験記事である。かなり未完成かも コード <p>画像幅を200に設定。</p> <MTSetVar name="UserWidth" value="200"><!-- 0でオリジナルサイズ、1以上で幅を基準に高さもサイズ演算 --> <MTAssets type="image" lastn="10"> <MTIf nam
2008年1月17日 23:32 | Writer: yoshi | 記事本文 | コメント(5) | トラックバック(0) Movable Type 4.1ベータ3で、「年タイトルつき月別アーカイブ(1月で新年切り替え)」というお題にチャレンジ。 各年は、1月からを新年として扱う。 サンプルコード <MTSetVar name="IncIndex" value="0"> <MTSetVar name="TopYear" value="None"> <MTArchiveList archive_type="Monthly"> <MTSetVar name="IncIndex" op="inc"> <MTSetVarBlock name="LopYear"><MTArchiveDate format="%Y"></MTSetVarBlock> <MTIf name="LopYear" ne=
2007年5月13日 15:19 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) みつけた。既出であった。 XHTML 1.0 StrictやXHTML 1.1での話。 わたしは今まで、イメージのfloat回りこみ解除には <br style="clear:both;" /> などと書いていたが、これは br要素のclear属性は、その機能をそのまま代替する方法は存在しないが、親要素であるブロックレベル要素にCSSのclearプロパティを適用して代替する(インライン要素であるbr要素に直接clearプロパティを指定することはできない)。 のとおり、駄目である。 CSSに p { clear: both; } と書くのも、何となく...抵抗がある。pはclearするとは限らないし、そもそもここにclear:both;と書くのは何となく短絡的な気がし
2008年1月 5日 22:50 | Writer: yoshi | 記事本文 | コメント(7) | トラックバック(0) 「外部ブログのRSSを読み込み自サイトへ読み込み」ということをやってみた。やっていること自体は難しくはないが、設定関連でちょっとつまづいた。覚え書きとして。 なお、このブログ(Under the Bridge)は、CORESERVERに存在する。.htaccessやパーミッションについても触れておこう。 出力結果 ためしに、シックス・アパートの3つのRSS+ここのRSSとAtomを読み込んでみた。 Six Apart - Movable Type News Movable Type 7周年記念キャンペーン実施しますアフィリエイトキャンペーン実施中です(10月10日まで)2008年8月7日に発表したセキュリティアップデートの正式版提供開始[重要] Movable T
2008年1月14日 18:22 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) (どんだけ拡張しているんだろうか...) Movable Type 4.1以降でしか動作しない。 先ほどの「MT4.1:カテゴリの並べ替え+表示切り替え(カスタムフィールド+ハッシュ変数)」を更に拡張し、現在のカテゴリ位置・エントリ位置をstrongタグで強調表示し、さらに現在のカテゴリを展開する機能を付加したサンプル。 早い話が下の画像のようなカテゴリリストを作る。 サンプルコード コードだけじゃわかりづらいんで、コメントとインデントつけた。 <!-- 使用変数初期化 --------------------------------------------------------------> <!-- 現在のエントリ名 --> <MTSetvarBlock na
2008年1月14日 13:36 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) Movable Type 4.1以降でしか動作しない。 先日のカテゴリ並べ替え(MT4.1:カテゴリの並べ替え(プラグイン使わず))を、実用に耐えるように拡張したサンプル。 プラグインは用いないが、カスタムフィールドを用いる。 準備1 カスタムフィールドで新しいフィールドを作成する。 システムオブジェクト:カテゴリ 名前:ソートオーダー 説明:わかればいい。入力方法の説明とかを書いてればいい。 種類:テキスト 必須?:どっちでもいい。 規定値:0000 ベースネーム:勝手につくがそのままとした。 テンプレートタグ:CategorySortOrder 準備2 すべてのカテゴリにソートオーダーとなる数値を与える。単純な番号ではなく上の桁はゼロ埋めしておくこと。 つまり、
2008年1月 9日 12:44 | Writer: yoshi | 記事本文 | コメント(2) | トラックバック(0) ちょっと昼休みなんでMT4いじってた。工作? いわゆるMTTagInvokeプラグインと同じようなものではないかとおもうが、「そのエントリと同じカテゴリ内のエントリ一覧取得」というものを、テンプレートタグだけで実現してみた。サンプルソースはたったの4行である。 MT4.01で問題なく動作する。 ソース <MTSetVarBlock name="nowCat"><MTEntryCategory></MTSetVarBlock> <MTEntries category="$nowCat"> <MTEntryTitle> </MTEntries> 解説 MTEntriesのcategoryモデファイヤにカテゴリ名の変数を渡せれば簡単。そのエントリの属するカテゴリはMTEn
2008年2月17日 18:56 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) 現在、Feed系のテンプレートタグをいじっている。ここで、ちょっと面白い発見をした。 以前書いた、「外部ブログのRSSを自サイトへ読み込み」だが、もっと簡単な方法を発見した。もしかしたら広く知られる方法なのかもしれないが... 2008/02/20 追記 ※(重要)このサンプルで生成するリストは、サンプルどおりにやるとすると、MTFeedIncludeテンプレートタグがある該当部分を再構築せねば、最新の情報にはならないぽい。つまり、再構築時の取得Feedでリストを静的に作成しているということ。...使えない予感がした。 色々なサンプル ここのRSS.xmlをリスト化 <p>RSS</p> <MTFeed uri="http://www.apstars.com/blo
2008年1月26日 00:59 | Writer: yoshi | 記事本文 | コメント(5) | トラックバック(0) 以前MT4.1ベータで散々テストしていた「サムネイル画像エントリリストの改造(さらにチューン)」の内容を、正式なMT4.1でGoodな挙動を示すように改造してみた。 仕様としては サムネイルリストクリックで該当エントリへリンク インデックスページでは全エントリの最新画像を10件 カテゴリページではそのカテゴリに属するエントリのサムネイルのみ表示 エントリページではそのエントリが属する同じカテゴリに属するエントリのサムネイルのみ表示 サムネイル表示画像数は最大10件 というもの。リストはDLタグでマークアップ。配列使った、いかにもMT4.1らしいコード。 動作サンプルは、このブログのサイドバーを見て頂くといい。この記事のコードをそのまま貼っている(画像、ちょっと数が少
2008年1月27日 10:07 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) MT4.1で乱数を取得できないかを、検証してみた。 MTのみではどだい無理なんだが、JavaScriptとのあわせ技で何とかなりそう。 サンプル <MTSetVarBlock name="RndValue"> <SCRIPT language="JavaScript"> <!-- document.write(Math.floor(Math.random() * 10)); //--> </SCRIPT> </MTSetVarBlock> <MTGetVar name="RndValue"> 実行結果 上記コードを貼ってみた結果。0から9までの値が出る。ページをリロードするたびに違う値にもなる。 変数RndValueに格納された値: 結果と考察 むむむ...Java
2007年10月24日 18:38 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) ウェブページを幾つかフォルダ階層付きで書いていくと、「トップレベルのウェブページのみ抜き出したいなあ」と思うことがあった。それについてのtips。 まずはサンプル <MTPages no_folder="1"> <MTPagesHeader> <ul> </MTPagesHeader> <li><a href="<$MTPagePermalink$>" title="<$MTPageTitle$>"><$MTPageTitle$></a></li> <MTPagesFooter> </ul> </MTPagesFooter> </MTPages> このコードのどこが...? 何も変哲も無いが、ミソはno_folder="1"モデファイアである。これは、確かリファレ
2008年1月12日 01:40 | Writer: yoshi | 記事本文 | コメント(0) | トラックバック(0) Junnama Online (Mirror):MTのテンプレートタグでFizzBuzz。 どうしてプログラマに・・・プログラムが書けないのか? 1から100までの数をプリントするプログラムを書け。ただし3の倍数のときは数の代わりに「Fizz」と、5の倍数のときは「Buzz」とプリントし、3と5両方の倍数の場合には「FizzBuzz」とプリントすること。 今時間あるし、やってみるか。ただしMT4.1ベータで行う。 コード <mt:for var="x" from="1" to="100"> <MTIf name="x" op="%" value="15" eq="0"> <p>fizzbuzz</p> <MTElse> <MTIf name="x" op="%" v
次のページ
このページを最初にブックマークしてみませんか?
『www.apstars.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く