読者登録
メールアドレスを入力して登録する事で、このブログの新着エントリーをメールでお届けいたします。 解除は→こちら
現在の読者数 0人
QRコード
QRCODE
※カテゴリー別のRSSです。
アクセスカウンタ
プロフィール
yasukawa
浜松在住WEBデザイナーが仕事のことについて頑張って書いてみる。
オーナーへメッセージ

WEBデザインのことなら株式会社シーポイントへ

株式会社シーポイント
静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス 2F
電話:(053)478-7111


顔認識技術 覚書

2012年01月24日13:50



■OpenCV ライブラリ(画像処理)
http://opencv.jp/

■Processing+OpenCVで顔検出を使ったり強いられたりする方法 - むだな ものを つくる
http://d.hatena.ne.jp/stamefusa/20120117/1326816113
(スクリプト作者による説明)

□(記事紹介)顔認識技術でガンダムAGEの名場面を再現することを......強いられているんだ!(動画あり) : Kotaku JAPAN
http://www.kotaku.jp/2012/01/age_shiirareteirunda.html

□体認識ライブラリ JMyron
http://webcamxtra.sourceforge.net/

□プログラミング言語
http://processing.jp/  

スマートフォンサイトを魅せるぞ

2010年12月18日01:57



iPhone に最適化したWEBデザイン。
時代はこっち方向に加速しているようで。

グラフィック系なら、こんな悩みないかもな。
などと思いつつ。

買ってみました、専門書のたぐい。

HTML5+CSS3で作る 魅せるiPhoneサイト iPhone/iPad/iPod touch対応



とりあえず HTML5 と CSS3 を把握しないと。

僕の駆け出しの頃の時代は、こういう本が売って無くて、自分で試行錯誤するか、英語サイトなら技術的なことが詳しく載ってるところがあるので、辞書をひきながら調べたりしていました。


いい時代だなー。

っていうか、勉強したい需要があるわけだから、制作するよりもノウハウ売る側になっちゃえば儲からね?

・・・と妄想したりもしたけど。


結局、どっちにしろ勉強が必要だと把握した。OK!



こういうの勉強し出すと面白くて止まらなくなったりして、気付くとバカコンテンツを量産してたり。
HTML5 はいろんな可能性をもってるし、CSS3 はビジュアル関係が充実してて、デザイナじゃなくてもセンス良いの作れそうなかんじだし、多分、面白い世界が待ってるんだろうな。
勉強机の前に座ったことがない僕でも、それくらいの予感はする。

とりあえず、まだそんなに荒らされていない、足跡のない新雪の積もった土地のような世界。
まだデザインルールが確立してない、初期のWEBのようなかんじ。

「いま現在」というよりは「この瞬間」やっときたいっていう貪欲さを自分の中に感じます(客観的表現)。
年末年始に、いろいろいじってみたいですね。


徹夜あけって無駄にテンションあがるね!  

Javascript 文字コード 文字化け

2009年12月30日12:07

忘れないうちに覚書。
コードがおかしい時には、文字コードを疑ってみる。

読み込む時に指定してしまうのがいいみたい。

<script type="text/javascript" src="hogehoge.js" charset="utf-8">


HTML側が シフトJISの場合でもこれで動くけどなんでだろ?
サーバ側の Content-Type ヘッダが UTF-8 なのだと解釈したいけど、実際の設定が見られないからよくわからない。
というか、たぶんこのファイル自体の文字コードいじれば解決するのか。でもHTMLと文字コード合わせたいし、どうするべきなんだろ。

■その他
スクリプト値の方を変換
document.charset='UTF-8';
  

読み込んだテータの改行を削除する

2009年06月30日16:39



xml データ内に改行がある時、そのままだと最初の1行目しか表示しないので、1行に変換して入れ込む時の手法、覚え書き。

xml データ の内容
<description>応援メッセージ
がんばれ高校球児
テスト投稿</description>


ActionScript

//読み込んだ文字列内の改行コードを削除する
mCheerMsg = mCheerMsg.split( "\r" ).join( "" );
mCheerMsg = mCheerMsg.split( "\n" ).join( "" );

  

管理しやすいWEB構成

2009年06月02日09:09

WEBを取り巻く状況というのは、とても移り変わりが激しいです。
そして公開している情報を頻繁に更新できるのが、WEBの強みです。

でも更新しまくっている間に、サーバースペース(FTPでアップする場所)で、どれが必要なのかどれがゴミファイルなのか、迷って削除するにできない、ということもあると思います。

そんな状態に陥らないための、経験に基づく僕なりの制作ガイドライン。



全ページで使うヘッダーやフッターで使われている画像やCSSは、「share」というディレクトリに入れます。
そして、個別ページで使われている画像などの素材は、「そのファイルと同じレベル(階層)に作ったディレクトリに入れる」というルールにします。

すると、hogehoge.html を削除する時に、その下の画像フォルダやCSSを削除すれば、ページで利用しているゴミ素材も一緒に削除できることになります。

また、クライアント側から「new_hogehoge.html」というページの新しいデザイン案を指定したテストサーバ上にアップしてほしい、と頼まれるような場合でも、全部のファイルをアップロードしなくても、「share」の中身さえアップすれば、そのデザインは過不足無く見せられることになります。


このルールをガイドラインとして徹底し意識付けすることで、同じプロジェクト内・同じチーム内のメンバーでも、サイトの構造やファイルの位置について把握しやすいようにすることができ、複数メンバーで同時進行するような大プロジェクトでもスムーズに制作できるようになります。


ページを作ってから、「あの画像どこに置いたっけ?」とすぐに思い出せない構造は、精神的にも良くないし、作業の進捗も芳しくないです。
自分で分かりやすい構造のルール化によって、すぐに思い出せるようにすることで、更新作業はスムーズにいきます。

楽なのが一番ですね。  

Flash で 一定時間待つ

2009年05月25日09:09

Flash で一定時間経過してから次のフレームへ行きたい時のスクリプト覚え書き。
function wait() {
clearInterval(timerID); // ループすると二重に起動するのでリセット
gotoAndPlay( jump );
}
timerID = setInterval(wait, waitTime); //waitTime/1000秒実行しながら待つ

for 分で回すと、CPUに負荷がかかったり、その間ボタンを受けつけなかったりする場合があるから setinterval の方が有効らしい。
ループしないムービーならリセットの必要が無いっぽいけど、二重に起動するとわけがわからなくなる。  

エイジングフィルタ:時間の概念

2009年03月04日00:00

新らしく取得したドメイン名では、SEO効果が得られにくい・・・。
これは、Google特有の現象なのですが、エイジングフィルタ(Aging Filter)と呼ばれるものです。

この発動条件は実際に検証してもよく分からず、はっきりとはしていないのですが、実際にいくつかのドメインで開設から半年ほど検索結果上位に表示されないという現象がおきています。

これはGoogleが、時間経過の多いドメインを評価することで、乱立するスパムサイトを除外しようとしていることは分かるのですが、一番きてほしい時期「さぁ、開設したからみんなみにきてよ!」という時に誘導ができなういということは、ちょっとガッカリですね。  

MySQL 文字化け

2008年05月18日03:05

PHP Version 4.3.*
mysql 3.23.* 

このバージョンだと文字コードeuc-jp固定みたいで、設定がそもそもないみたい。
文字化け直らないので、php.ini の設定を変えるコトに妥協する。

default_charset = UTF-8
[mbstring]
mbstring.internal_encoding = UTF-8
mbstring.http_output = UTF-8

■無駄だったこと
・DB接続時「SET NAMES UTF8」というクエリ発行
・my.cnfファイルの設定
 default-character-set=utf8
 skip-character-set-client-handshake
 ↑そもそもエラーになるんだけど・・・バージョン低すぎるのかな。


  

【Flash】ブログパーツ開発(1)

2008年04月14日00:38



自分だけが分かればいい覚え書き。

■ActionScript3.0だと、E4Xとやらを使えば、XML関係が処理しやすいらしい。
■XML読み込み

最初、1つ1つ子ノードまで書いてたんだけど、とても全部やってたら日が暮れてしまうので配列ライブラリ。
でも、すげー重い。1000行くらいからハングアップするらしい
(いまどき・・・)

↓資料
XML Path Language (XPath)
2.5 Abbreviated Syntax
http://www.w3.org/TR/xpath#path-abbrev
日本語訳

(基本)
格納用配列インスタンス名 = XMLオブジェクト,"階層"

連続した記事の項目データをタグごと縦に抜き出す(クエリー)
 /node情報名
 ※/text()を最後につけると、中身だけ。/node情報名[番号]で指定

属性抜き出す
 /@属性名

とにかく抜き出す
 //テキスト/text()

----
あと、日付の変換?  

情報デザイン試験

2008年03月13日13:22





先月受けたんだけど、合格したよ!
合格率は、27%だそうです。  

OpenPne インストール&設定

2007年08月05日01:17

mixi みたいなSNSを作れるという OpenPNE をインストール。
実はインターフェイスデザインは既に仕事でさせてもらって経験済みだけど、自分なりの改造もしてみたくなって、自鯖に組み込んでみたよ!

■OpnePNE
http://www.openpne.jp/

FTPなんかでファイルをセットアップ後、以下を変更

# chown -R apache:apache /var/www/pne/
 ディレクトリ所有者をApacheユーザに変更

# chmod -R 777 /var/www/pne/var/
 可変ディレクトリを全部書き込み可能に


■MySQL

# mysql -u root -p パスワード
  ログイン

(DBを接続するユーザを新規に作る場合)
mysql> grant all privileges on ユーザ名P.* to openpne@localhost identified by 'パスワード'; 

mysql> create database openpne;
  DB作成

mysql> exit


■MySQLにDB初期設定

mysql -u ユーザ名P -p openpne < /var/www/pne/setup/sql/mysql41/install/install-2.8-create_tables.sql
  「mysql40」と「mysql41」があるので、動かない場合もう片方を試す
Enter password:パスワード

# mysql -u openpne -p openpne < /var/www/pne/setup/sql/mysql41/install/install-2.8-insert_data.sql
Enter password:パスワード

★phpmyadminからでも可能。
homeから新規で「openpne」作成。
sqlメニューから「テキストファイルの場所:」で2つの sql文 読み込んで実行。


■OpenPNE設定ファイル # vi /var/www/pne/config.php
---PSS先に作っておく---------------------------
# mkpasswd -l 56
  56文字のパスワード作成
--------------------------------------------------

//--- 必須設定

// Web上の絶対パス(URL)(最後にスラッシュを付けてください)
define('OPENPNE_URL', 'http://club.【ドメイン】/');

// DBサーバ設定
$GLOBALS['_OPENPNE_DSN_LIST']['main'] = array(
'dsn' => array(
'phptype' => 'mysql',
'username' => '【ユーザー名P】',
'password' => '【パスワード】',
'hostspec' => 'localhost',
'database' => 'openpne',
'new_link' => false,
),
);

// DB暗号化キー(56バイト以内のASCII文字列)
define('ENCRYPT_KEY', 【56文字の暗号】');

// メールサーバードメイン
// 携帯メール投稿の宛先などのドメイン名に使われる
define('MAIL_SERVER_DOMAIN', '【ドメイン】');


これだけが最低限で、あとはSSLやメール設定など

■サーバ設定
(サブドメイン使わず、ディレクトリでやる場合)
# echo "Alias /【ディレクトリ名】 /var/www/pne/public_html" > /etc/httpd/conf.d/openpne.conf
  conf.d の中に設定ファイルつっこんで、public_html を見に行くように設定
# /etc/rc.d/init.d/httpd reload
  再起動

●ファイルサーバ側 httpd.conf

<VirtualHost 192.168.0.1:80>
ServerAdmin メアド
DocumentRoot /var/www/pne/public_html
#ServerName club.【ドメイン】
ServerName pne
</VirtualHost>

●ルータサーバ側 httpd.conf

<VirtualHost *:80>
DocumentRoot /var/www/pne
ServerName club.【ドメイン】
ProxyPass / http://pne/
ProxyPassReverse / http://pne/
</VirtualHost>


# vi /etc/hosts

192.168.0.1 pne

完成! でけたー!
http://club.gundam.bz/

  

MT3.35にバージョンアップ

2007年05月07日01:08

今まで面倒くさそうだったので避けていた自鯖での Movable Type のバージョンアップ作業ですが、暇つぶしに買ったはずの雑誌の内容(MTを使ったデザインの実現)が熱かったので、思わず急遽実施。

前にテンプレートやらプログラム部分やら、かなり改造したので手間がかかることを覚悟していたのですが、作業メモ(その1)(その2)を書いておいたおかげで鼻歌まじりでできた!

新機能としてタグなんかが追加されてるので DB いじるかと思ったら、管理画面にログインしたら勝手にスクリプトが走って書き換えてくれた。six apart ニクいね!

以下、主な改造点====================================

■バーチャルドメインで動作させるため、プログラムへのパスを変更。
MTBlogYRL を使用して表示する。

<$MTCGIPath$>
 ↓
<$MTBlogURL$>mt/

■検索結果表示画面
管理画面内テンプレート→システム→検索結果画面からテンプレートの編集ができるようになった。
search_templates/default.tmpl を触らなくてよい。


■管理画面にボタンを追加

\tmpl\cms\edit_entry.tmpl 536行目あたり


write('<img title="pre" onclick="return formatStr(document.entry_form.text, \'pre\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_pre.gif" alt="pre" width="26" height="19" />');

write('<img title="span" onclick="return formatStr(document.entry_form.text, \'span\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_span.gif" alt="span" width="26" height="19" />');


write('<img title="h4" onclick="return formatStr(document.entry_form.text, \'h4\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_h4.gif" alt="h4" width="26" height="19" />');

write('<img title="h5" onclick="return formatStr(document.entry_form.text, \'h5\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_h5.gif" alt="h5" width="26" height="19" />');

write('<img title="h6" onclick="return formatStr(document.entry_form.text, \'h6\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_h6.gif" alt="h6" width="26" height="19" />');


write('<img title="ul" onclick="return formatStr(document.entry_form.text, \'ul\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_ul.gif" alt="ul" width="26" height="19" />');

write('<img title="ol" onclick="return formatStr(document.entry_form.text, \'ol\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_ol.gif" alt="ol" width="26" height="19" />');

write('<img title="li" onclick="return formatStr(document.entry_form.text, \'li\')" src="<TMPL_VAR NAME=STATIC_URI>images/formatting-icons/org_li.gif" alt="li" width="26" height="19" />');




■StyleCatcher を動かす
mt/plugins/StyleCatcher/stylecatcher.cgi
上記を755に。

テンプレートを対応させれば、自由にデザイン変更させることができる。
デザイナーにとっては、かなり面白い機能。
これ使ってなにか今までにないような仕事ができそう。

■WidgetManager を動かす
mt/plugins/WidgetManager/widget-manager.cgi
755に。
メインではない左右のカテゴリーなんかが表示されているカラムをドラッグして、視覚的に並び方を操作できるという機能。これ凄い・・・。
このインターフェイスを実現させたことで、テンプレートが変更されてもHTML側のカスタマイズをそのままにすることも可能にしてるっていう点もすごい。これうまく使ったらいろいろできそう。
とりあえずひとつ思いついたので、仕事の合間に遊んでもみる!

テンプレートに挿入するモジュールで「Widget: 名前」という名前にすると、Widget内に表示されるみたい。
ウチのは再構築短縮のため、共通する部分はすべて単一ファイルにしてインクルードさせちゃってるから、インクルードファイルの記述をモジュールに書いちゃえば、両方の長所を使える。
<?php include($MODULEpath."/モジュール化したファイル名"); ?>

$MODULEpath は、ローカルパス。

■タグクラウド
Widget に最初からタグクラウドというのがはいってるので、それを表示させる。クラス名が指定されてあったので、CSSをいじって、人気度で文字の大きさが変えられるようにする。

■エントリー内にタグが表示されるようにする。
<MTEntryIfTagged>
<div class="entry-tags">
<h4 class="entry-tags-header">タグ : </h4>
<ul class="entry-tags-list">
<MTEntryTags>
<li class="entry-tag"><a href="<$MTTagSearchLink$>" rel="tag"><$MTTagName></a></li>
</MTEntryTags>
</ul>
</div>
</MTEntryIfTagged>

CSSをいじって、横に表示されるようにする。

使い勝手の感想とかは、数日適当にいじった後に。  

文字化けに美乳

2006年09月19日19:28

文字化けに美乳

goo注目ワード ピックアップ・・・文字化けに美乳

JIS、シフトJISには用いられないコードを挿入することで、そのホームページがEUCで作成されていることをコンピュータに認識させるHTMLハックともいうべきテクニックみたい。

ちなみにyahooは「京」でした。

シーポイントにはなんていれましょう。
もう誰も止められませんね。

   

誤字対策

2006年07月17日18:16

てぃーだ関連のテキストが誤字が多いのが気になっていましたが、この前自分の書いたブログを見たら、思いっきり誤字だらけになっていたので、ちょっと誤字対策を考えてみました。
誤字が多い部分は、メンタル的にも余裕のない時というか、時間が無くて焦っていたり、仕事がうまくいかずにイライラしている時だったかもしれないと分析。

見直しをしても誤字をスルーしてしまっているので、かなり集中しないと発見は難しそう。

そこで発想を変えてみた。

IBM ホームページ・リーダー Windows版 3.04 - Japan

自腹で購入。
(※なんか生産終了で、現在は店頭でも扱っていないっぽい)

IBMがバリアフリーを掲げていたときに開発された音声ブラウザ。
アクセシビリティツールとして使うのはモチロンのこと、これでテキストを音読させてみれば、誤字があるところは読み取れずに失敗してしまうので、目で文字を追うよりは発見しやすいかもしれない。

目がダメならば耳で、というアイデアだ。

とりあえず実験的に自分で導入してみる。

ホームページ・リーダー バージョン 3.04
日本アイ・ビー・エム (2001/07/19)
売り上げランキング: 1,879
おすすめ度の平均: 4
4 ホームページ・リーダー使用感


   

認知言語学

2006年07月10日23:17

認知言語学
認知言語学
posted with amazlet on 06.07.10
大堀 寿夫
東京大学出版会 (2002/12)
売り上げランキング: 49,297
おすすめ度の平均: 4.5
4 著者独自の認知言語学
5 「認知言語学」入門の決定版!


豊橋の「精文館」は専門書も多く種類も豊富なので、暇になるとふらふらと行ってしまうのですが、前々から興味を持っていた認知言語学の本を買ってきました。


SEOが注目される昨今なので、文書構造中のキーワードが重要視されると思うのですが、それをデザイン的な観点から記述できればと思います。


認知言語学って何さ?という人には、下のページがオススメ。

オムライスでわかる認知言語学

  

お寿司の食べ方

2006年01月05日00:14

Documentary On Japanese Sushi

Documentary On Japanese Sushi
※日本語の音声での解説があります。

ビジネスマナー。  

ライブドア次世代テクノロジーセミナー

2005年12月21日00:44

MovableType改造覚え書き

2005年11月28日00:15

金曜の夜遅く、帰り道で車とめられて警察官に「このへんで殺人事件あったんだけど、○○日なにしてた?」って尋問されました_| ̄|○


Movabletypeでページ分割、画像アップロード先自動入力、タグ挿入ボタンの追加機能をつけよう。

■アーカイブページが長いのでページを分割、「次のページを読む」「前のページへ」を表示



<div class="blog">直後(ページ上部に各ページのショートカット表示)
<!-- MTPage分割-->
<MTPaginate>

<MTPaginateIfMultiplePages>
<div class="PgaeDivision">
<MTPaginateIfLastPage_>
<a href="<$MTPaginatePreviousPageLink$>">&#9664;</a>
</MTPaginateIfLastPage_>
<MTPaginateIfFirstPage_>
<a href="<$MTPaginateNextPageLink$>">&#9654;</a>
</MTPaginateIfFirstPage_>
<MTPaginateIfMiddlePage_>
<a href="<$MTPaginatePreviousPageLink$>">&#9664;</a>
<a href="<$MTPaginateNextPageLink$>">&#9654;</a>
</MTPaginateIfMiddlePage_>
<$MTPaginateNavigator format_all="ALL " placement_all="after" separator=" | " format_current="&lt;font size=+1&gt;%d&lt;/font&gt;">
</div>
</MTPaginateIfMultiplePages>


<MTPaginateContent max_sections="10">
<!-- MTPage分割END-->



<MTEntries>は、「lastin」属性を指定しない。

</MTEntries>直前
<$MTPaginateSectionBreak$><!-- 分割処理 -->



"blog"クラス閉じタグの前(ページ下部に「次のページ」とプルダウンショートカットメニュー表示)
<!-- 分割処理START -->
</MTPaginateContent>

<MTPaginateIfMultiplePages>
<div class="PgaeDivision">
<MTPaginateIfLastPage_>
<a href="<$MTPaginatePreviousPageLink$>">&#9664;&nbsp;前のページを読む</a>
</MTPaginateIfLastPage_>
<MTPaginateIfFirstPage_>
<a href="<$MTPaginateNextPageLink$>">次のページを読む&nbsp;&#9654;</a>
</MTPaginateIfFirstPage_>
<MTPaginateIfMiddlePage_>
<a href="<$MTPaginatePreviousPageLink$>">&#9664;&nbsp;前のページを読む</a> |
<a href="<$MTPaginateNextPageLink$>">次のページを読む&nbsp;&#9654;</a>
</MTPaginateIfMiddlePage_>
</div>
<div class="PgaeDivisionFoot"><$MTPaginateNavigator format="%d ページ目" style="popup" format_all="全部読む"></div>
</MTPaginateIfMultiplePages>


</MTPaginate>
<!-- 分割処理END -->



イメージ画像のアップロード先を日付で自動入力


MTアップロード先
tmpl/cms/upload.tmplを修正
<script type="text/javascript" language="javascript">
<!--
var today = new Date();
var num_year = today.getYear();
var str_year = String((num_year < 2000) ? num_year + 1900 : num_year);
var num_month = today.getMonth() + 1;
var str_month = (num_month < 10) ? "0" + num_month : String(num_month);
var dir = "img/";
var slash = "/";
document.forms[0].extra_path_archive.value = dir + str_year + slash + str_month;
//-->
</script>

※アップロード先が固定なら直書き

投稿画面にタグ挿入ボタンを追加


edit_entry.tmpl に追加(350行目あたり)
spanの場合、
write('_<a href="javascript:;" onclick="return formatStr(document.entry_form.text, \'span\')">span</a>');

MT投稿画面
どうせ自分しか使わないからボタンはイラネ( ´∀`)つ ミ□
テキストリンクで押しにくかったら後で作ってみよ。  

単独のMovableTypeを複数PHP化してモジュール化

2005年11月07日01:33

複数のサイトを1つの Movable Type で動かす

SPAMブラックリストの共有、cron処理の一括など、複数のタスクを立ち上げないことで少しでも負荷がかからないように、1つだけインストールしたMTを使って複数のドメインのブログを制御する。


 

バーチャルドメイン設定(WEBサーバ)
 /etc/httpd/conf.d/virtualhost.conf
<VirtualHost *:80>
ServerName ドメイン指定
DocumentRoot 格納ファイルの絶対パス
ErrorLog logs/エラーログのファイル名(分離する場合に適宜)
CustomLog ログ記述方法(上記ある場合)
</VirtualHost>


MTへのシンボリックリンク作成

# ln -s /var/htdocs/html/mtadmin /var/htdocs/bbb/mtadmin

[root@tengallon ~]# ls -l /var/htdocs/bbb/
lrwxrwxrwx 1 root root 23 11月 6日 01:01 mtadmin -> /var/htdocs/html/mtadmin


MTのPHP化

再構築の負荷軽減と高速化・アクセス解析入れ込み・メンテナンスのし易さの恩恵を得るためのPHP化。
基本的には出力ファイルの拡張子をphpにするだけ。

設定 → 公開 → 「アーカイブの拡張子」欄をhtmlからphpに変更

※テンプレートはxhtmlなので、php化すると動かない。
xhtmlは最初にxml宣言(<?xml .... ?> )を入れなくてはいけないがPHPの書き方と一緒のためエラーになる。
この1行目の宣言を削除!・・・・ではなく、echo文にして宣言を文字列として出力する。

といいつつ、ドットファイル(.htaccess)にPHPタグ短縮形の使用不可記述をすればテンプレートをいじる必要がなかったりする。(ヒャッホイ)
php_flag short_open_tag Off

xml宣言にはこだわりたいよね(意味深
 

CGIPath とテンプレートへの表示

MovableType はインストール時にプログラム本体へのURLパスを設定し、そのパスを「トラックバック先」などのURLに変換して表示する。
バーチャルドメインとシンボリックリンクで構成した場合、元々インストールしてあるドメインのパスがテンプレートに表示されてしまう。これだと、いざトラックバックしようとした利用者が「URLが違う!」と混乱してしまうため、この文字列をバーチャルドメインに変換する。

テンプレート → アーカイブ → エントリー・アーカイブ
(テンプレート内に記述)
<div id="trackbacks-info">
<MTIfPingsAccepted><p>このエントリーのトラックバックURL:<br />

<?php
$DefaultSetting = "メインのドメイン";
$VirtualSetting = "バーチャルドメイン";
$TBdisplay = str_replace($DefaultSetting, $VirtualSetting, "<$MTEntryTrackbackLink$>");
print($TBdisplay);
?>

</p></MTIfPingsAccepted>
</div>

PHP化しといてよかった。ありがとうPHP様!
他にもうまい方法があったり、良い記述の仕方があるのかもしれないがこれぐらいしか思いつかなかった。


ToDo:
・カテゴリ内ページが長い場合に「次へ」を表示してページを分ける(PHP)
・テンプレートの同じ部分を全てモジュール化
・究極・記事のモジュール化(PHP)
・flashにrssを読み込んで記事へリンク(Flash、xml)
・アフィリエイトスクリプト整頓
・ユーザビリティ・テスト(ご協力お願いします)
・重複トラックバックを弾くプラグイン


ガンダム  

Movable Type 3.2 新機能

2005年10月09日16:49

旧バージョンから変更・追加された新機能や気付いた点。
CLOGと比較して使えるかな。

クイック投稿

見ているページのアドレス・タイトル・記事を1クリックで投稿できる機能。
以下の項目を自由に設定。


あとは「お気に入り」か右クリックのコンテキストメニューから呼び出すと、自動的に投稿画面が立ち上がる。


迷惑コメント/トラックバック管理機能

チェックしたコメント・トラックバックに「迷惑コメント/トラックバック」ボタンを押すことでブラックリストに追加し、以降その投稿者からの送信をブロックする。その投稿は自動的に非表示になる。
また迷惑コメント/トラックバックに対し、迷惑の度合いを1~10の値で評価し、判断基準値より低い値のコメントとトラックバックは、自動的に非表示になる。さらに非表示になったものは指定の日数を経過すると自動的に削除される機能もある。
これらは標準搭載された SpamLookup プラグインで実現され、迷惑のフィルタとして、IP、投稿者、リンク、キーワードなどが詳細に設定できる。

ログの表示の仕方

何分前、何日前という表示になり、感覚的に分かりやすくなった。


エントリー・アーカイブのファイル名のカスタマイズ

旧バージョンではエントリーのタイトルで自動生成していたファイル名を、投稿時に自由に設定できるようになった。

検索・置換機能の強化

検索・置換機能が異常に充実。テンプレートの中の文字列まで置換できるため、すごく便利・・・。


編集画面にフォルタ

編集したい記事を探す時などに便利になった。例えば「映画」というカテゴリ名でフィルタをかけて、映画カテゴリの記事だけ表示させることができる。

ファイルのアップロード画面に、ブログ名を表示

単純だが、親切設計。