blog宣伝計画

ブログ宣伝の一環として、談話室にバナーを付けようという話が出た。ということで、試しに作ってみた。

ちょっとシンプル過ぎだろうか?割と彩度が高めなwww.kyoto-u.comではほとんど目立たないような気もする…。しかしblog.kyoto-u.comの他のページもそうだが、私の趣味で作るとこういう色遣いになってしまうので、これはこれで仕方がないと思っていただこう。

悪のりしてアニメーションGIF版も作ってみた(そういえばGIFの特許、期限が切れたんだったな)。

セオリーとして「無料」を強調してみたが…冷静に考えれば無料なのはある程度当たり前なので、もう少しバランスを見直すべきかも知れない。それから最後の「スタッフのブログも公開中」という文章は、やはりちょっと弱すぎ&位置が下すぎだろうか…。…いやしかしあまり強調してしまうと後で引けなくな(略

それはそうと、この程度の議題ならばこういう形で公開討議してしまっても良いような気がするが、いかがだろう?>スタッフの方々。

カテゴリー: General | 4,685件のコメント

blogコンテンツ現状

以前作成中と書いた”ブログタイトル変更用スクリプト”だが、ブログコンテンツ自体に反響がなさすぎるので、まあいいかと捨て置いてある。10人締め切りとか言いながら1人しか来てないものなあ…(苦笑。要るはずがない。この調子で行けば当分必要になることはないだろうから、改良中のフレームワークが形になったら、その時に試運転を兼ねてきちんとした形に書き直すこととしよう。

…で、ふと、そもそもブログ自体どれくらい見られているのか気になったので、ごくごく簡単に概算してみた。こんな感じで。

grep -v mt\.cgi /path/to/log |
perl -ne 'print "$1\n" if(/^(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3})/);' | uniq | wc -l

結果。公開から3日間での合計閲覧数は、…335。含むスタッフ。
…あまり私が気を配っても仕方がない部分ではあるが…どうなんだろう…この数字は。

カテゴリー: General | 1件のコメント

権限問題・その後

ユーザーに「Blogの設定」を許可するか否か。今のところ許可しないという方向に進みつつある。しかしながらどうしても不満は残る。ほんのささやかな設定変更もできないというのは、サービスとして大きな欠点だと思うからだ。

担当者によると、Blog設定の中で特にユーザーニーズが高いのは

  • Blogのタイトル変更
  • アーカイブの設定

だろうとのことだ。現在、これらについては個別に問い合わせを貰って対応する、という提案が承認されつつあり、「ユーザー登録フォームに『希望ブログ名』を追加してくれ」という要求が暗に私の処へ来ているようだ(笑。

しかしながら…個人的にそれは癪だ。ブログ名などという些細な設定について、逐一人手を介さねばならないというのが何とも気に食わない。それは本当にちょっとしたことである、はずだ。MT APIを使うまでもなく、要はmt_blog の blog_name を書き換えればよいだけだと容易に推測が付く。ならばPHPで、拙作のフレームワークを使って書けばすぐだ。認証はPEARのAuthを使い、認証情報にはmt_authorをそのまま使えば良い。

…と、グダグダ書いてはみたが、やはり時間が足りないことには違いないか。Blogサービス開始は、既に当初の予定を2日過ぎている。いくら何でも検証期間が足りない。ついでに言うと拙作のフレームワークは丁度バージョンアップ作業中で微妙な状態にある。

…というわけで素直に項目を追加しておきました。これで一応の開始準備は整ったと言えるのだろうか。

カテゴリー: General | 2件のコメント

権限に関する問題

MTの権限管理は本当に微妙だな…。ただブログのタイトルを変更可能にしたいだけなのに、「BLOGの設定」を有効にすればローカルのパス情報まで書き換え可能になってしまう…。いくら何でもこれはマズイ…。

カテゴリー: General | コメントする

ブログ関連コンテンツ検討

早速SQLを考えていくこととしよう。まずは「ブログ一覧」。これは簡単かと思ったが、意外と面倒くさかった。

select blog_name, blog_site_url , author_name
from mt_blog B, mt_author A, mt_permission P
where B.blog_id=P.permission_blog_id and P.permission_author_id=A.author_id
and (author_id != 1 or (author_id=1 and blog_id=1));

MTの場合、一つのWebログに対して複数の投稿者を登録できるようにするため、「ユーザ一覧」「ブログ一覧」「ユーザとブログの権限関係」それぞれが別テーブルになっている。そこで一覧として取り出すには、まずこれら3つを結合してからでなくてはいけない。さらに、これは本来望ましくない状態だが、現在はユーザID1のユーザが全体の管理者を兼ねており、権限テーブルにおいて全てのブログに出現する。これを避けるための条件が最後の行である(単にauthor_id != 1では自身のブログが出力されなくなってしまうため、こういう形になっている)。

次に最新のエントリーN(ここでは15)件。

select entry_title, blog_name, date_format(entry_created_on, '%Y/%c/%e, %T') as created_on,
concat(blog_archive_url ,lpad(entry_id, 6, '0'), '.', blog_file_extension) as entry_url
from mt_blog B, mt_entry E
where B.blog_id=E.entry_blog_id and entry_status=2
order by entry_created_on desc limit 15;

エントリーへのURL生成部分がかなり苦しい。上記では日ごとのアーカイブ生成を前提としているわけだが、これは今後変わらない保証はない。「最新」エントリーなんだから、素直にトップのURL+アンカーとするべきか…要検討といったところか。

「コメントが付いたエントリー一覧」については、トラックバックとの絡みもあって色々とややこしい。だからそれはもう少し後で検討することにして、早々に実装作業に入ろうかな。他スタッフを急かす意味でも(笑。

カテゴリー: General | コメントする

ブログ関連コンテンツの方針

せっかくRDBMSに移行したので、ここらでブログ関連コンテンツについて検討しようと思う。ファイルベースのBerkeley DBと違い、RDBMSではデータ構造の把握が容易である。ごく普通にSQLが書けて、ごく普通にプログラム中からDBにアクセスする手段があれば、基本的にはどのようなことも可能なはずである。

(無論、それが余り上手いやり方ではないことは心得ている。特定の環境、バージョンに依存したコードを書くのは出来る限り避けるべきだからだ。特にMTには専用のPerl APIが用意されている。普通はそれを使うべきだろう。敢えて私が直接DBからデータを引っ張ってくる方法を採るのは、単に興味の問題に過ぎない。というか、今後の気分次第で素直にPerl APIを使用することになるかも知れない)

具体的な話に入る。コンテンツとして必要そうなのは…

  • ブログ一覧(タイトル、URL、作者、…)
  • 最近更新されたエントリーN件(ブログタイトル、エントリータイトル、更新日時、…)
  • 最近コメントがついたエントリーN件(上記に加えコメント日時、総コメント件数、…)

こんな感じだろうか。まあ初めからそうカチッと決めておく必要もないので、今後、少し手を動かしながら色々検討していきたい。

カテゴリー: General | コメントする

RDBMSに移行

何もかも消して構わないとのことだったので、有無を言わさず再インストールしてみた。とりあえず自分の分だけ作ってみたが、一応はうまくいっている様子。データベースにも間違いなく反映されている。これでハックするのがかなり楽になったかな。

カテゴリー: General | 275件のコメント