KYS-LABの最新情報http://www.kys-lab.com/,AllFeed2011-12-21T05:40:02ZKouyusha 1.00-ja「写植の時代」展tag:www.kys-lab.com,2011:/sasaki//2.1862011-12-21T05:40:02Z2011-12-26T00:47:15Z 大阪DTPの勉強部屋さん主催の「写植の時代」展。 写植や版下世代の人たちだけで...SASAKItype_main.jpg

大阪DTPの勉強部屋さん主催の「写植の時代」展

写植や版下世代の人たちだけではなく、文字や組版に興味ある人やデザイナーさんもぜひ行ってみましょう! きっと、明日の制作の糧となるはずです。

私も微力ながら、今回のチラシをデザイン制作させていただきました。

typesetting_flier.jpg

日時

2012年2月17日(金)~21日(火)

展示時間 14時~21時
※19日(日)は閉館
展示を観るのは無料

場所

クリエイティブネットワークセンター大阪 メビック扇町

〒530-0025 大阪市北区扇町2-1-7
扇町キッズパーク 3F 交流スペース(3)

内容

モリサワ MC-6型の実機展示と写植体験

  • 17日(金)19時30分 「写植の時代」解説講座
  • 20日(月)19時30分 「写植の時代」解説講座
  • 21日(火)19時30分 「写植の時代」を語る[座談会]

3つの催しには参加費500円

詳細はコチラにて!

]]>
InDesign CS 5.5 で 縦書きに対応した EPUB 3 の電子書籍作成tag:www.kys-lab.com,2011:/sasaki//2.1852011-07-20T05:20:48Z2011-07-22T07:13:14Z 電子書籍の新規格「EPUB 3」は、 HTML 5 や CSS 3 をベースに...SASAKIepub3_main.gif

電子書籍の新規格「EPUB 3」は、 HTML 5 や CSS 3 をベースにしているため、ビデオやオーディオなどのマルチメディアに対応したコンテンツや、JavaScript によるインタラクティブなコンテンツの作成が可能となります。

また、いままでの EPUB では表現できなかった日本語の縦書きとルビ、圏点などの機能が実装されています。

今回は、EPUB 3 への書き出しに対応している「InDesign CS 5.5」を使用して、EPUB 3 の縦書きとルビ機能を試してみました。

InDesign CS 5.5 から EPUB 書き出し

テキストの素材は、青空文庫さんから太宰治の「走れメロス」をダウンロードしました。ありがとうございます。

青空文庫

縦書きに組版

InDesign でルビを入れて縦書きで組んでみました(とりあえず組んだので、文字組みに関する突っ込みはナシの方向で)。

タグを書き出し

本文や見出し、文中の縦中横などを「段落スタイル」と「文字スタイル」で設定しておくと、書き出される CSS にもスタイル設定が引き継がれるので、必ず設定しておく。

各スタイルから「タグを書き出し」で書き出されるタグを編集できるようですね。

すべての書き出しタグを編集

「段落スタイル」と「文字スタイル」のオプションメニューから「すべての書き出しタグを編集」を選ぶと、複数のスタイルのタグやクラス名の編集が一括でできるので便利。

スタイルの設定ができたら、EPUB への書き出し。

一般目次

【ファイル → 書き出し】で「EPUB 書き出しオプション」は、「一般」と「画像」はデフォルトで、「目次」の「CSS オプション」の「埋め込みフォントを含む」はチェックをはずしました(※フォントを埋め込んでも、正常に表示しなかったので)。

Dreamweaver で編集

■ HTML ファイルの編集

EPUB ファイルの拡張子を「.epub」から「.zip」に変更後、解凍。「OEBPS」フォルダにある HTML ファイルを開く。

EPUB ファイルの解凍と圧縮方法は、以前 EPUB に動画を埋め込んだ記事を参考にしてくださいませ。

iPhoneのiBooks用EPUBに動画を埋め込む - STAFF_01 [KYS-LAB]

HTML ファイルを開くと、XHTML 1.1 形式で書き出されてますね。EPUB 3 の記述は HTML 5 ベース(XHTML5)だったはず。InDesign CS 5.5 からは EPUB3 への書き出しにに対応しているとのことだが、このへんはアップグレードで解消されていくのかな? 設定を見落としていたらスミマセン。

とりあえず、HTML 5 の記述に修正していく。

自動で書き出された DTD と html の属性を変更。

(変更前)
<?xml version="1.0" encoding="utf-8" standalone="no"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 //EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml">
(変更後)
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2011/epub" lang="ja" xml:lang="ja">

link 要素に設定する type 属性も省略できるので削除しました。

(変更前)
<link href="template.css" rel="stylesheet" type="text/css" />
(変更後)
<link href="template.css" rel="stylesheet" />

■ CSS ファイルの編集

つづいて、CSS ファイルを開く。

body タグに縦書きに反映させるベンダープレフィックスを追加(「-epub-」と「-webkit-」)。

body {	writing-mode : vertical-rl;	-epub-writing-mode : vertical-rl;	-webkit-writing-mode : vertical-rl;}

■メモ( writing-mode のプロパティ)

このプロパティは行送り方向を設定する。

horizontal-tb
行送り方向は上から下。横書き。
vertical-rl
行送り方向が右から左。縦書き。
vertical-lr
行送り方向が左から右。縦書き。

Windows では MS 明朝以外のフォントでは縦書きにならなかったので、使用フォントを変更。

font-family : "Hiragino Mincho ProN W3", "@MS 明朝", serif;

本文の文字サイズをブラウザ標準サイズの 1em に。

font-size : 1em;

■ content.opf ファイルの編集

タイトルと著者名を追加。

	<dc:title> 走れメロス</dc:title> 	<dc:creator> 太宰治</dc:creator> 

EPUB の確認

現時点では EPUB 3 に対応した正式なリーダーがまだ出ていないとのことなので、EPUB 3 に対応した Web ブラウザ「Google Chrome」で確認。その他、バリデートや各種リーダーでもどのように表示するのか一応確認してみました。

■「Validate EPUB」で確認

とりあえず、修正した EPUB が正しいのか、「Validate EPUB」でチェックしてみました。

「Validate EPUB」は、EPUB をバリデートして構文チェックをしてくれる便利な Web サービスです。
Validate EPUB

Validate EPUB

エラーでまくり。。。(140個も)
まだ EPUB 3 には対応していないのか、「ruby」要素は許容してないよ的なエラー内容も。

■「Google Chrome」で確認

GoogleChrome

気をとりなおして「Google Chrome」で確認。お、縦書きで表示されますね。ルビもちゃんとふられてます。

■「iBooks」で確認

iBooks

現時点(2011.7.20)では、EPUB 3 に対応してませんが、iPhone の「iBooks」で一応確認。うーん、やはり縦書きで表示されない。

■「Stanza」で確認

Stanza

「Stanza」でも確認。やはり縦書きで表示されませんでした。

■「espur(エスパー)」で確認

espur

EPUB 3.0 に対応している PC 専用リーダー「espur(エスパー)」で確認。あ、縦書きで表示されていますね。ページ送りは逆になってましたが。サンプルの「草枕」ではきちんとページ送りできていたので、ボクの設定がおかしいんだと思います。

espur(エスパー):縦書き用電子書籍リーダー/eBook Reader for EPUB3(EPUB Enhancements for Japanese Text Layout)

■Murasaki

今回は検証してませんが、Mac な方には「Murasaki」という EPUB リーダーが縦書きに対応しているそうです。

Murasaki - Simple EPUB Previewer

感想

InDesign 5.5 になって、EPUB の書き出しがかなり便利になっていますが、完全に自動化ってわけにはいきませんね。

EPUB 3 については、対応したリーダーが出ていないので、広がっていくのはもう少し先かもしれません。今回は正式なマニュアルもなく、自分で調べた範囲内で制作したので、工程で間違っている箇所もあるかと思います。コメント等で突っ込んでいただけたら嬉しいです。

サンプルソース(追記)

HTML と CSS のソースは、「jsdo.it」に上げときました。

走れメロス - jsdo.it - Share JavaScript, HTML5 and CSS

参考サイト

EPUB 3.0 - 電子書籍の表現力

EPUB 3に見る日本語組版機能

制作基本チュートリアル

]]>
Dreamweaber CS 5.5 の「PhoneGap」でスマホのネイティブアプリ制作tag:www.kys-lab.com,2011:/sasaki//2.1842011-07-07T10:07:58Z2011-07-09T01:20:30Z 前回、Dreamweaber CS 5.5 の「jQuery Mobile」対...SASAKIphonegap_main.gif

前回、Dreamweaber CS 5.5 の「jQuery Mobile」対応機能で、スマートフォンサイトのサンプルを作ったので、今回は、これも 5.5 で新しく追加された「PhoneGap」の機能で、Android のネイティブアプリケーションに変換してみました。

PhoneGap とは

Nitobi 社が開発したクロスプラットフォーム・モバイルアプリケーションの開発フレームワークで、HTML + CSS +JavaScript を用いて、iPhone / Android のネイティブアプリケーションを開発できます。通常 Objective-C や Java を習得しないとできないことを代わりにゴニョゴニョしてくれる非常にありがたいオープンソースソフトウェア。

PhoneGap 公式サイト

PhoneGap の変換工程

スマートフォンサイトが完成したら、PhoneGap でアプリに変換。

アプリケーションフレームワークの設定選択

まず最初に、【サイト → モバイルアプリケーション → アプリケーションフレームワークの設定】で Android SDK のパスを設定する( Mac 版は iOS も可能)。

アプリケーションフレームワークの設定

「簡易インストール」で任意の場所に Android SDK をインストール(今回はデスクトップに)。

ネイティブアプリケーション設定

続いて、【モバイルアプリケーション → アプリケーション設定】で、アプリ名や作成者名、アイコンなどの画像を設定。

※アイコン画像(36 x 36 px)とスタートアップスクリーン画像(320 x 480 px)は、あらかじめ PNG 形式で作成しておこう。

ビルドおよびエミュレート

最後に、【モバイルアプリケーション → ビルドおよびエミュレート → Android 】でスマホアプリに一発変換。
※DW が機嫌のいい時とわるい時があるみたいで、エミュレータが開いてくれないことがある。

変換中

変換中...

エミュレータ画面1

お、Android が起動

エミュレータ画面2

ロックを解除して

エミュレータ画面3

アプリを選択すると

エミュレータ画面4

アイコンが表示された

エミュレータ画面5

スタートアップ画面も

エミュレータ画面6

jQuery Mobile で作成したサイトもちゃんと表示しました!


たったこれだけの作業で、スマホアプリが作成できるってスゴイっすね(内容はともかく...)。こんなボクでも何か作れるんじゃないかって勘違いさせてくれますわ(笑

]]>
Dreamweaber CS 5.5 の「jQuery Mobile」対応機能tag:www.kys-lab.com,2011:/sasaki//2.1832011-06-28T01:52:20Z2011-06-28T05:11:00Z 5月下旬に発売された「Dreamweaber CS 5.5」がスマートフォン対...SASAKIjqm-main.gif

5月下旬に発売された「Dreamweaber CS 5.5」がスマートフォン対応機能が強化されたとのことなので、「jQuery Mobile」を少し触ってみました。

jQuery Mobile とは

jQuery Mobileとは、iPhone、Android、Windows Phone、BlackBerry などのスマートフォンに対応したサイト構築するためのフレームワーク。jQuery のプラグインとして動作します。

■ jQuery Mobileのダウンロードページ

jQuery Mobile

Dreamweaber CS 5.5 の jQuery Mobile 作成手順

新規作成

【ファイル > 新規】で、「サンプル作成」から「モバイルスターター」 → 「jQuery Mobile (CDN)」を選択すると、

4ページ分のテンプレート

4ページ分のテンプレートが自動で出来上がる。

ウィンドウサイズ

ウィンドウサイズもいくつか用意されており、「320 × 480」を選択すると iPhone のサイズに。

ライブビュー

デザインビューを「ライブビュー」に切り替えると、実際の画面を確認できる。

基本のテンプレートが用意されているので、こんなぐらいのサイトなら、あっちゅーまに出来てしまいます。

jQuery Mobile のカスタマイズ

現時点(2011.06.27現在)で、jQuery Mobile のBETA版がでているので、最新版を読み込むように変更(デフォルトでは前のバージョンの Alpha 版を読み込むように設定されている)。

<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.css" /><script src="http://code.jquery.com/jquery-1.6.1.min.js"></script><script src="http://code.jquery.com/mobile/1.0b1/jquery.mobile-1.0b1.min.js"></script>
ページタイトル

<h1>のタイトルを書き換えると、ページのタイトルが変わります。

<div data-role="header">	<h1>KYS-LAB</h1></div>
ブログのfeed読み込み

Back ボタンを追加したい場合は、下記を header に追加(Alpha 版ではツールバーにデフォルト表示)。

    <a href="#page" data-rel="back">Back</a>

つづいて、各ページのコンテンツ部分。2ページ目に弊サイトブログの feed を読み込ませました( Google AJAX Feed API を利用。参考記事: Google Feed APIで3分マッシュアップ)。

ajaxのリンク先が php の場合、うまく認識してくれなかったので、通常のページ移動をさせるために、a タグの属性に「rel="external"」を追加しました。 プロフィールページ

3、4ページ目はそれぞれプロフィールと問い合わせ先を追加しました。スクリプトを書かずにマークアップだけで構築できるのはとても便利。

jQuery Mobile サンプルページ

KYS-LAB(スマホバージョン)

凝ったスマホサイトやアプリを作るわけじゃなければ十分かも。今後、スマホをターゲットにしたサイトやアプリは必須だと思うので、その他の機能もちょっとずつ覚えよっと。

参考サイト

jQuery Mobile [基礎編]

jQuery Mobile使用時によく使いそうなマークアップのリストと動作サンプル - かちびと.net

[JS]jQuery Mobileでスマフォ対応ページをはじめて作成する際に役立つコード集とつまづきやすいポイント | コリス

jQuery Mobile Beta1へのアップデートについてまとめたメモ ::ハブろぐ

↓このぐらいカスタマイズできたらスゴイっすね。
jQuery Mobile Examples - JQM Gallery

]]>
「KYS-LAB」サーバー移転のお知らせtag:www.kys-lab.com,2011:/sasaki//2.1822011-06-14T06:27:43Z2011-06-16T05:02:17Z 「KYS-LAB」は本日6月14日から明日にかけてサーバー移転をします。しばら...SASAKIMove.gif

「KYS-LAB」は本日6月14日から明日にかけてサーバー移転をします。しばらくサーバーにつながりにくくなるかと思いますが、何卒ご了承くださいませ。

【追記】サーバー移転メモ(2011.06.16)

主要コンテンツの移転はほぼ完了しました。いやぁ、CMSだけでも7つあったのでなかなか大変でした。

以下、サーバー移転でハマったんで自分用メモ。同症状でもサーバーによっては解決しない可能性が高いので、鵜呑みにしないでくださいね。

■WordPress

【問題】ログイン画面に入ろうとすると「application/x-httpd-php」を開こうとする!
【解決】前サーバーで、PHP を CGIモードで動かすために記述した wp-admin 内の「.htaccess」を削除。
【問題】Cookie を削除しても「自動転送がループ」エラーで管理画面にさえ入れない!
【解決】WP(同バージョン)を再インストール後、phpMyAdmin から DB をインポート。

■MovableType

【問題】ダイナミックパブリッシングのページが全て真っ白に!
【解決】古い「.htaccess」を削除。いったんスタティック設定で保存後、再度ダイナミック設定で保存し「.htaccess」を新規に自動作成。

■PHP

【問題】プログラムの動作に不具合が!
【解決】サーバにインストールされてる「PEAR」確認。必要なパッケージがなければインストールし、「php.ini」の記述(パスなど)も見直す。
]]>
GIMPスーパーテクニック「デジタルアートを作成」tag:www.kys-lab.com,2011:/sasaki//2.1812011-05-30T01:55:42Z2011-05-30T02:30:46Z 「GIMPスーパーテクニック教本」(晋遊舎)にて作例を1点執筆しました。 「光...SASAKIgimp2011.jpg

「GIMPスーパーテクニック教本」(晋遊舎)にて作例を1点執筆しました。

「光輝く天空を翔るペガサス」作例

GIMP作例

「馬と鳥の写真(上)からペガサスのCG(下)に」

月と宇宙空間を一から作成後、馬と鳥の羽の写真を合成・加工し、ペガサスのCGを作成しました。

素材画像

詳しくは、ムックを見てください~ (^_^;

]]>
アートなデジタル額縁「FRAMED*」tag:www.kys-lab.com,2011:/sasaki//2.1802011-05-10T01:29:13Z2011-05-10T01:43:04Z 昨年、モリサワ文字文化フォーラムで、中村勇吾氏がチラッと話されてたデジタルな額...SASAKIframed.jpg

昨年、モリサワ文字文化フォーラムで、中村勇吾氏がチラッと話されてたデジタルな額縁「FRAMED*」が正式に公開されました。

「FRAMED*」公式サイト

ソフトウェアアート/映像/モーショングラフィックといった様々な形式の表現を、暮らしの中で日常的に体験して頂けるようデザインされた新しい「額縁」。それが「FRAMED」です。

via 中村勇吾氏のTwitterより

ほんと素敵ですね。

確か、デバイスから海外の企業と共同で開発しているとおっしゃっていたので、それなりのお値段になるでしょうが、インテリアに欲しい!(そんなシャレた家に住んでへんけど)

]]>
WordPress 3.1 「アップロードファイルの設定」tag:www.kys-lab.com,2011:/sasaki//2.1792011-03-08T02:13:10Z2011-03-08T02:23:15Z WordPress 3.1 でサイトを構築していて、アップロードファイルのサイ...SASAKIwp_uploadmain2.gif

WordPress 3.1 でサイトを構築していて、アップロードファイルのサイズで少しハマったんでメモ。

投稿画面でお客さんから送られてきた PDF データを挿入しようとしたら、「●●.pdfは、エラーのためアップロードに失敗しました このファイルは、このサイトのアップロード上限を超えています。」のエラー表示。

アップロードサイズが1MBって

よく見ると、「アップロードファイルの最大サイズ:1MB」となっていました。1MB って。

ボクたちのような仕事をしていて、画像や PDF のサイズを変更できれば別ですが、ふつう一般の方でそこまで気をつけて、サイズを調整されないはずです。デジカメで撮った大きい画像もバンバン掲載していかれるでしょうし、アップロードファイルサイズの上限値を上げる必要があります。

「.htaccess」や「php.ini」でアップロードファイルの上限値変更

ファイルサイズの上限値を変更しようとググってみると、「.htaccess」や「php.ini」ファイルで設定するとのこと。

WordPressのインポート機能で2MB制限を突破する方法 - IDEA*IDEA ~ 百式管理人のライフハックブログ

php.iniを編集してインポートできるファイル・サイズを増量する 初めてのWordPress&PC

が、上記サイトを参考に設定を変えても WordPress 3.1 では、エラーをはき出したり、上限値が変更されませんでした。おそらくバージョン 2.9以下の WordPress なら可能なんだと思います(※試していません、ゴメンなさい)。

アップロードファイルの設定

あっちこち、ダッシュボード内をさがしていると、「サイトネットワーク管理者」>「設定」>「アップロード設定」にありました(※「サイト管理」のほうではありません。サイトネットワーク管理者」です。慣れるまでややこしい)。アップロード容量や最大サイズ、可能なファイル形式など、ここで設定できます。

アップロード設定

「アップロードファイルの最大サイズ」が「1500KB」になってました。いくらなんでもデフォルトで 1500KB はないやろって。

最大ファイルが増えた

とりあえず、アップロードファイルの最大サイズを「30000KB(30MB)」まで増やすと、「29MB」に変更されました。1MB 減るのもよくわからんが。

マルチサイト化していない WordPress 3.1 の場合

これは、ネットワーク化(マルチサイト化)設定をしないと出てこないのかなと思い、ネットワーク化していないシングルシステムの WordPress 3.1 を調べてみると、上記のようなアップロードファイルの設定画面が見当たりませんでした(今のところ2011.3.8)。

デフォルトで200MBって

その代わりにアップロードファイルの最大サイズが 200MB となってます。なんで 200MB やねん。差ありすぎやん。まぁ、もっと本読んで勉強せなあきませんな。

]]>
jQuery で可変グリッドレイアウトtag:www.kys-lab.com,2011:/sasaki//2.1782011-02-08T08:03:33Z2011-02-08T08:22:43Z 可変グリッドレイアウトとは、ブラウザのウインドウサイズを広げたり縮めたりする...SASAKIliquid_main.jpg

可変グリッドレイアウトとは、ブラウザのウインドウサイズを広げたり縮めたりすると、コンテンツが再配置されるグリッドレイアウトのこと。一昨年ぐらいから流行ってますよね。

トップページでも試してみようと思いながらも、ずっとほったらかしてたので、突然思い立ってやってみました。

Smart Columns w/ CSS & jQuery

リキッドレイアウト上に、配置されたコンテンツの幅や空きスペースをうまいことゴニョゴニョしてくれる優れものスクリプト(※jQuery.jsが必要)。

解説とスクリプトは下記サイトからどうぞ。

Smart Columns w/ CSS & jQuery

Smart Columns w/ CSS & jQuery | jQuery Tutorials | Web Design Tutorials and Front-end Development Blog by Soh Tanaka

トップページに導入

当ブログのトップページに導入してみました。サイドバーは固定で表示させたかったので、コンテンツエリアだけを CSS でリキッドレイアウトにしました(IE6 では少しくずれるのはご愛敬)。

トップページ

STAFF_01 [KYS-LAB]トップページ

お時間ございましたら、ウィンドウの幅を変更してみてください。こんなことが、簡単にできてしまうのが jQuery のスゴイところですねー。開発者に感謝。

こちらのプラグインもすごそうっす。いずれ試してみようと思います。

可変グリッドレイアウトのjQueryプラグイン書いたよ | Xlune::Blog

参考サイト

[JS]リキッドレイアウト上のカラムの幅や数を自動調整するスクリプト -Smart Columns | コリス

2カラムリキッドレイアウトのCSSサンプルソース|floatレイアウトサンプルソース

]]>
WordPressの勉強-08「ネットワーク化した各ブログの情報を取得」tag:www.kys-lab.com,2011:/sasaki//2.1772011-01-06T06:49:24Z2011-01-06T07:02:24Z Wordpress 3.0 から、ネットワーク化すると複数のブログを管理できる...SASAKIwp-switch_main.gif

Wordpress 3.0 から、ネットワーク化すると複数のブログを管理できるマルチサイトの運営が可能になりました。そうなると、追加した各ブログの情報(新着情報やページ情報など)を取得したい場合が増えてきますよね。

Movabletype では「 MultiBlog 」で、複数ブログの情報をテンプレートタグで簡単に取得できたので、Wordpress も何か似たようなタグがあるだろうと調べてみると、WPMUで使用されていた「switch_to_blog 」という関数を利用するとのこと。

それまでは、各ブログの RSS からタイトルやパーマリンクを抜き出して、最新情報に表示させていたけど、表示が重いしリアルタイムに反応してくれなかったので困っていました。これで一気に解決っす。

switch_to_blog() 関数

ポイントは、「 switch_to_blog() 」の引数にサイト(ブログ)のIDを入れ、各ブログに切り替えて情報を取得する。

<?php switch_to_blog(サイトのID) ?> 

サイトの ID は、ダッシュボード内で調べることができます。

サイトID

ダッシュボード内の「サイトID」

処理が終わると、最後に元のブログに戻す記述を忘れないように。

<?php restore_current_blog(); ?>

サンプルコード

【新着情報サンプル】

例えば、子ブログの新着情報を親ブログに表示させる場合なら、こんな感じで記述できます。

<?php// ブログIDが2の情報を取得する場合switch_to_blog(2);?><dl><?php// 最新記事の5件を表示query_posts('showposts=5');while(have_posts()) : the_post();?><dt><?php the_time('Y年m月d日'); ?></dt> <dd><a href="<?php the_permalink() ?>" rel="bookmark"><?php the_title(); ?></a>(<?php $cat = get_the_category(); $cat = $cat[0]; { echo $cat->cat_name ;} ?>)</dd><?php endwhile; ?>

【サイトマップサンプル】

簡単なサイトマップならこんな感じで取得できます。

<?phpecho "<h1>サイトマップ</h1>";// 各ブログの情報を格納$blog_list = get_blog_list();// 各ブログの情報をID順で表示させるforeach (array_reverse($blog_list) as $blog) {	// ブログIDを切り替える	switch_to_blog($blog['blog_id']);		// 各ブログの概要	echo "<h2>";	bloginfo('description');	echo "</h2>\n";		// 各ブログのページリスト	echo "<ul>\n";	wp_list_pages('title_li=');	echo "</ul>\n";		// 元のブログにもどる	restore_current_blog();}?>

「 switch_to_blog 」は、ネットワーク化してマルチサイトを管理する場合、必ず必要となってくる機能だと思います。

参考サイト

switch_to_blog:マルチサイトのポータルを作成する | Goldmine1969 :: BLOG

#WordPress マルチサイトネットワーク内の各ブログから最新の投稿1件を取得し時系列で並べる方法 | umbrella_process blog

]]>
WordPressの勉強-07「ウィジェット作成」tag:www.kys-lab.com,2010:/sasaki//2.1762010-12-07T07:24:27Z2010-12-07T07:54:08Z WordPress では「ウィジェット」機能を使うと、サイドバーやフッターの項...SASAKIwidget_main.gif

WordPress では「ウィジェット」機能を使うと、サイドバーやフッターの項目の中身や並び順を、管理画面から簡単にレイアウトできます。

その中の「テキスト」ウィジェットを使用すると、任意のテキストや HTML が作成できます。ただ、PHP や WordPress の機能を活用しようと思えば、やはり新規にウィジェットを作成しておいたほうが便利ですね。

で、今回はオリジナルウィジェットの作成方法のメモ書き。

ウィジェットの作成

【大まかな流れ】

  1. WP_Widget クラスを継承するサブクラスとしてウィジェットを定義。
    • ウィジェットのコンストラクタ
    • widget()
    • update()
    • form()
    の各メソッドに処理を記述。
  2. widgets_init フックに作成したウィジェットを登録。
  3. 作成したコードを「 functions.php 」に追加。

【サンプルコード】

//クラス名は任意class クラス名 extends WP_Widget {	//コンストラクタ クラスと同じ名称	function クラス名() {		// ウィジェットの初期設定		$widget_ops = array('classname' => 'ウィジェットのクラス', 'description' => 'ウィジェットの概要')		$this->WP_Widget('ウィジェットID', 'ウィジェット名', $widget_ops);	}	function widget($args, $instance) {		// ウィジェットのコンテンツ出力	}	function update($new_instance, $old_instance) {		extract($args);		echo $before_widget;		echo $before_title . ウィジェットのタイトル . $after_title;		//ウィジェットの内容		echo $after_widget;	}	function form($instance) {		// 管理画面のウィジェットに出力するフォームを記述(オプションの設定など)		// $instanceには保存したオプションが連想配列で引き渡される。	}}//MyWidgetInit関数function MyWidgetInit() {	//ウィジェットのクラス名を登録	register_widget('クラス名');}//widgets_initアクション時にMyWidgetInit関数を実行add_action('widgets_init', 'MyWidgetInit');

複数ブログを管理する場合、同じ内容の項目を別データに作成しておき、「 include 」で読み込むだけのウィジェットを作成していると、修正があれば元データをいじるだけなので便利なはず。

参考サイト

WordPress のウィジェットを自作してみる(ただし 2.8以降用) - digitalbox

WordPress カスタムウィジェットの作り方 ≪ nulldesign

ASCII.jp:WordPress 2.8登場!新ウィジェットAPIの使い方

]]>
PHP の勉強「複数の外部 CSV ファイルを連想配列に」tag:www.kys-lab.com,2010:/sasaki//2.1752010-11-17T10:14:31Z2010-11-17T11:03:04Z 今回は、CSV ファイルを読み込んで、連想配列にする勉強をしてみました。配列に...SASAKIphp_img.gif

今回は、CSV ファイルを読み込んで、連想配列にする勉強をしてみました。配列にすることによって、各データの値が参照できるようになるので重宝するはず。

なにぶん、PHP の勉強を始めたばかりなので、ソースにムダがあると思いますが、大目に見てね。こうしてコードをさらすことで、上達すると思うので。多分。

外部の CSV ファイル

サンプル用に2つの簡単な CSV ファイルを用意しました。

基本的に、 CSV はエクセルから書き出されることが多いので、文字コードを「 Shift-JIS 」、ダブルクオーテーションなしの「,(カンマ)」区切りにしています(一行目は項目名)。

text1.csv

ID,ソフト名01,Illustrator02,Photoshop 03,InDesign04,Flash05,Dreamweaver06,After Effects

text2.csv

ID,説明01,お絵かきソフト02,レタッチソフト03,編集ソフト04,アニメーションソフト05,コーディングソフト06,動画ソフト

PHP コード

<?php//外部ファイルを配列に$csvFiles = array("text1.csv","text2.csv");//読み込んだファイルの配列に対して繰り返し処理foreach($csvFiles as $key){	//読み込んだファイルの各行のデータを文字列に格納して返す	$str = @file_get_contents($key);	//SJISからUTF-8に変換	$str = $str = mb_convert_encoding($str, "UTF-8", "SJIS");	//ファイルの改行を<br />に置換(置換する文字は何でもよい)	$array = str_replace("\r\n", '<br />', $str);	//<br />を区切り文字として分割	$array = explode('<br />', $array);			foreach($array as $koumoku => $value){		if($value){			if($koumoku == 0){ //項目名(一行目)は$headerに格納				$header = explode(',', $value) ;			}else{				$item = explode(',', $value) ; //その他は$itemに格納				//「CSV名」、「ID」($item[0])をキーに連想配列作成				$assoArray[$key][$item[0]] = array_combine($header, $item);			}		}	}}print_r($assoArray); //出力確認?> 

出力結果はコチラ

【 MEMO 】

  • CSV を読み込む時は、「fgetcsv」という関数があるようですが、PHP5 から Shift-JIS エンコードの場合、文字列が「"..."」(ダブルクオーテーション)で囲まれていないと、読み込めない文字もあるらしいので、「 file_get_contents 」関数でファイルの中身を丸ごと変数に格納。
  • 変数 $str に入れたファイルを「 mb_convert_encoding 」関数で Shift-JIS から UTF-8 文字コードに変換。
  • 「 str_replace 」関数で、CSV ファイルの改行を置換し、「 explode 」関数で分割して配列に格納。
  • CSV の一行目(項目名)と項目をそれぞれ「 $header 」と「 $item 」の配列に格納。
  • 「 array_combine 」関数で、CSV 名と項目名の連想配列を作成。

参考サイト

PHPスクリプト講座:array()による配列生成 -- そふぃのphp入門

PHP5でfgetcsvが正常に動作しない : ::yossy.blog::

PHP: array_combine - Manual

]]>
PHP の勉強「開発環境の構築メモ( XAMPP の導入)」tag:www.kys-lab.com,2010:/sasaki//2.1742010-11-17T08:11:29Z2010-11-17T08:22:20Z これからはデザイナーでも、サーバサイドのスクリプトもある程度わかっていないとっ...SASAKIxampp_main.jpg

これからはデザイナーでも、サーバサイドのスクリプトもある程度わかっていないとってことで、「 PHP 」の勉強も始めました。

あれもこれも覚えるのは大変ですが、「 WordPress 」も PHP で開発されているので、勉強しておいて損はないはず。

今回は、自分用に PHP 開発環境の簡単なメモ書き。

XAMPP

XAMPP

PHP をローカルの Windows で開発するために、「 XAMPP 」をインストールしました。

XAMPP は、 PHP の開発に必要な PHP や Apache 、MySQL などのソフトがパッケージ化された無償のソフトで、Windows 版も Mac 版もあります(最新バージョンは 1.7.3、2010年11月17日現在)。

■ XAMPP for Windowsインストールページ

apache friends - xampp for windows

■ XAMPP for Mac OS X インストールページ

apache friends - xampp for mac os x

■ XAMPP に梱包されている主なソフト

  • Apache(Webサーバー)
  • MySQL(データベース)
  • PHP( PHP5 と PHP4 )
  • PEAR( PHP のライブラリ)
  • PHPMyAdmin( MySQL の管理)
  • その他

Eclipse+PDT

なお、PHP の開発には「 Eclipse+PDT 」が便利なようです。

Pleiades - Eclipse プラグイン日本語化プラグイン

今のところ、Adobeの「Dreamweaver」を PHP のエディタにしていますが、今後「 Eclipse 」も試してみようと思います。

これから少しずつですが、 PHP も触っていきますよ。しっかし、やることいっぱい。。。

参考サイト

[XAMPP+Eclipse PDT] WindowsでPHP開発環境 / LiosK-free Blog

XAMPPによるサーバー設置メモ

ド素人によるPHP開発環境構築・ツール紹介(Mac・Windows) |高橋文樹.com

]]>
Twitter で「禁煙」tag:www.kys-lab.com,2010:/sasaki//2.1732010-10-01T08:39:01Z2010-10-05T00:53:14Z いよいよ今月からタバコが値上げされましたね。 たばこ、4年ぶり値上げ=過去最大...SASAKIkinen_main.gif

いよいよ今月からタバコが値上げされましたね。

たばこ、4年ぶり値上げ=過去最大、1箱110~140円 (時事通信) - Yahoo!ニュース

ボクも一ヶ月前までは、ヘビースモーカーで毎日二箱以上吸ってました(計40~50本)。飲みに行ったら、それこそ60本以上スパスパ。

今回の大幅値上げは、ただでさえ少ないおこづかいをさらに圧迫させ、まともな生活ができないだろうと判断したので、「2010年9月1日」に禁煙を決意しました。

自分のような意志の弱いヘビースモーカーでも、本当にタバコがやめられるのか不安でしたが、禁煙してかれこれ一ヶ月が経ちます。

単なる自分の禁煙体験談ですけど、禁煙しようか悩んでいるヘビースモーカーさんたちに参考になればと思います。痛いほど気持ちが分かるので。

ボクでもやめられたんで、皆さんも絶対にやめられます!

禁煙のきっかけ

禁煙のきっかけは、もちろん今回の大幅値上げですが、ある友人の言葉が引き金になりました。

以前からタバコを値上げすることは分かっていたし、10月になる前にやめれたらええやろ、と緩い感じでずっと吸い続けていました。

値上げまであと一ヶ月ちょっという、まだ残暑厳しい8月のある日、友人家族が家に遊びに来たときのことです。

その友人は二年前に禁煙に成功していて、タバコを吸ってるボクを見るなり、


「え!まだ吸ってんの?」(ニヤリ)


と、その言葉の後には「かわいそうに」とか「アホちゃう」みたいな言葉がつづきそうな感じで、ちょっぴり上から目線で言われたような気がしました。

いや、本人はそんな気がなかったとは思います。喫煙者の単なる被害妄想ですな。

でもね。自分でもずっと疑問に思っていたんです。「なんで吸ってるんやろ」と。

体に悪いと知っていながら、惰性で吸い続けて二十年以上。風邪ひこうが、肺が痛かろうがゴホゴホ咳き込みながらタバコを吸ってました。完全にニコチン中毒。

絶対にタバコをやめる気もなかったし、タバコがタブーな話題には耳をふさいでいました。

それが、なんで急にやめようと思ったか。

カチンとはきましたが、友人の「え!まだ吸ってんの?」の一言で、気づいたんです。当たり前のことに。

「ほんまや、なんでこんなに気分悪いのにタバコ吸ってるんやろ」と。

いや、ほんま急に気づいた(気づくの遅すぎ!)。

「昼飯代を削って、タバコ買ってるって、たいがいアホやで」と。

さらに、

「禁煙なんか絶対無理やって思われてるのも腹立つ。もし、タバコやめたら、オレめちゃカッコよくね?」

って、自分のテンションを無理矢理上げました。

今まで、これといった努力をしてこなかったけど、禁煙できたらマジすごいわって思ったら、いてもたってもいられなくなり、絶対にその日でやめてやると決意しました。

それが、「2010年9月1日」の事でした。

Twitter を利用して禁煙

タバコグッズ

禁煙前日に捨てたタバコグッズの一部

ボクの禁煙方法は二つ。

一つは「気合い」です。

禁煙外来や禁煙グッズを利用するなど、色んな禁煙方法がありますが、ボクは何も利用しませんでした。「気合い」のみです。

そんなの長続きしないだろうと思われますが、どんな方法を使おうが、結局は本人の意志の強さであり、「気合い」やろうと。禁断症状もどんとこい!ってな感じで、ニコチンガムやパッチも一切利用しませんでした。

電子タバコも購入しませんでした。聞くところによると「ハンコ」をくわえてる感じだとか。そんな偽物くわえるんやったら、本物のタバコを吸うわと。

もう一つは、「Twitter」です。

禁煙についてつぶやくと、フォロワーさんや検索でみつけられた方からアドバイスやはげましを受けるようになりました。これは、本当にうれしかったですね。あと、みんなの前で宣言したんだから、吸ったらカッコわるいですよね。

自分だけが監視しているとどうしても甘くなるので、Twitterでつぶやきながら、どんどん自分を追い込んでいきました。

あとまぁ、吸いたくなったらつぶやいてたので、ストレス発散にもなりました。

約一ヶ月間の悪戦苦闘するつぶやきを、Twitter のツィートをまとめるサービス「Togetter」にまとめています。

Togetter - 「元ヘビースモーカーの禁煙日記」

節煙はダメ、一気にやめる

まず、最初のつぶやき。

【禁煙計画】あしたから、タバコを一本ずつ減らす (予定)

2010-08-31 16:32:21

これ、禁煙初心者が必ずやって、100%挫折するそうです(笑)。未練たらたらなのは分かりますが、やめておいたほうがいいです。

「節煙」や「減煙」でググってみてください。禁煙よりしんどいようです。

で、ボクも節煙はやめてスパッと禁煙する決意をしました。

【禁煙 1 日目】節煙ではなく、一気にやめることにした。きょうは朝から一本も吸ってないぞ。どこまで続くのか? #kinen

2010-09-02 09:29:16

あと、必ずけじめをつけたほうがいいです。いわゆる「卒煙式」。

ボクも最後のタバコをくゆらせながら、厳かに実行しました。

本気出すため、ライターと灰皿を処分した。

タスポもハサミで切り刻んで捨てた。← めちゃ勇気いった。

2010-09-02 09:32:35

このようにタバコグッズは全部処分したほうがいいです。タスポなんか5ミリ間隔ぐらいに切り刻みましたよ。自分の顔の部分を切ってると、うっすらと涙が出てきました。

でも、このぐらいやらないとダメなんです。このときの何とも言えない寂しさは、一生忘れないでしょう。一人卒業式みたいな感じ。

禁断症状

で、平日にいきなり医者にもいかず禁煙を始めたもんだから、強烈な禁断症状が出てきます。

なんか、めまいがしてきたぞ。禁断症状? きょうは、まったく仕事に集中できない。 #kinen

2010-09-02 15:49:14

体を動かすたびに、立ちくらみのようなめまいが。ドヨーンとした頭痛もずっと続いてました。

でも、このぐらいの症状がないと、禁煙する意味がないっていうか、楽してやめたくなかったんです。それ相当の罰を自分に与えたかったので。ちょっとM?

その後、禁煙の決意を強固にしたのが、これです。

家族の前で正式に「禁煙宣言」。娘が感激して大泣き。これは絶対に裏切られないぞ。親として男として。 #kinen

2010-09-02 21:21:51

これは効きました。娘の涙を見たとき、胸がしめつけられるような思いでした。今までもさんざん「おとうさん、タバコやめて!」って言われてましたし。

それでも、最初の三日間はほんときつかったです。

禁断症状ピーク。。。ぐわー!!!

2010-09-03 20:20:05

@Hiroshi0831 ぎりぎりのところで踏ん張ってます。く、くるちぃー

2010-09-04 02:16:47

【禁煙 3 日目】今までの人生の中で、一番がんばってんじゃねぇーかって思う。そう思わないとやってられない。 #kinen

2010-09-04 08:53:12

今までいかに、がんばってなかったかというか(笑)、苦しんでますねー。

あと、今もときどき顔出すもう一人の自分がいるんです。

【たまに顔を出すもう一人の自分】簡単にタバコを止められるわけないやんけ。頭では分かっていても出来へんのが人間とちゃうんか。簡単に止められたら以前の自分を全否定するというか、そんな軽い問題ちゃうわ。それ相当の苦しみを味わな値打ちないんじゃ。ヘビースモーカーをなめんな! #kinen

2010-09-24 23:43:17

魂の叫びかと(笑)。相当イライラしてますね。これも日が経つうちに少しずつなくなってきます。

口寂しさは?

禁断症状はなくなっても口寂しいので、飴や昆布などを口に入れてました。

「ノンシュガー果実のど飴」の白桃味うまっ♪

2010-09-07 09:28:25

「ノンシュガー ミルク酪園」キャラメルミルク味、うまっ♪

2010-09-09 13:29:50

「おしゃぶり昆布」うまっ。とまんなう。

2010-09-12 10:43:46

今でも、会社の机には飴を常備しています。

体調の変化

体調の変化もあらわれてきました。

【禁煙 10 日目】犬並みに嗅覚がするどくなった気がする。特にタバコの臭いに敏感。あと、味覚も変わってきたっぽい。塩っからいものが、より塩っからく感じる。なんで? #kinen

2010-09-11 08:41:17

ニコチンでふさがれていた嗅覚と味覚が復活しだしました。

@629lov あと、なぜかブラックコーヒーが嫌いになりました(毎日飲んでたのに)。天然水ばっかり飲んでます。おなかタップタプっす。

2010-09-11 08:49:34

コーヒーはタバコとセットだからでしょう。ほんとブラックコーヒー飲まなくなりました。今はミルクたっぷりのカフェオレ。

禁煙してから眠気がひどい。もう寝ます。おやすみなさい ZZz...

2010-09-13 21:46:49

これは、禁断症状の一つかもしれませんが、以前はニコチンが脳みそを覚醒させていたのかも。

禁煙のメリット

まず、これが一番大きいでしょう。お金の節約。

@works014 すでに、6000円(タバコ代 × 10日間)節約できましたよ。やめると、焼酎もっと呑めますよー!

2010-09-11 10:19:26

次に、これ

出かける前や帰る前に、タバコの火の元チェックをしなくていいのも楽だ。 #kinen

2010-09-08 09:06:57

火の元チェックは、何回もしていたから結構面倒くさかったんですよね。

【禁煙 15 日目】顔色がよくなったって言われるようになった。 #kinen

2010-09-16 13:12:31

女性ならなおさらでしょう。くすみがとれます。

【禁煙 17 日目】ウチのおかんに「禁煙してん」と電話したら、かなり喜んでた。ちょっと照れくさかった。 #kinen

2010-09-18 13:22:56

いくつになっても、子どもの健康を願わない親はいません。ちょっとした親孝行かも。

【禁煙 19 日目】家族で行動するとき、超スムーズと好評☆ 今までどんだけタバコの休憩時間をとってたんかと。 #kinen

2010-09-20 13:54:06

これも団体行動では大切ですよね。家族間のしょーもないケンカもなくなります。

【禁煙 23 日目】きのう、近所の子どもたちと鬼ごっこをしたけど、息切れしなかった。筋肉痛だけど。 #kinen

2010-09-24 10:42:41

息切れがなくなる。なんか、いいことだらけっすね。

禁煙のゴール

これ難しいですね。人によって異なるでしょうし。10年やめていた人が突然吸い始めることもあるそうです。なので、自分で目標を決めたらいいと思います。

ボクの場合は、まず1ヶ月としました。その次は3ヶ月、そして1年と延ばしていってそのうち忘れられたらいいかなと。それと、飲み会で吸わなかったら、まず成功といっていいのではないでしょうか。

飲み会に行くと、必ず現役スモーカーたちにいじられます。

【禁煙 25 日目】飲み会で、煙を吹きかけられたり、目の前にタバコを置かれたり、いっぱいイジワルされたけど、耐えたよボク。 #kinen

2010-09-26 05:50:42

自分もしたことがあるので、罰だと思って耐えましょう(笑)。

そして、値上がり前日のツィート。

【禁煙 29 日目】いよいよ明日からタバコの値上げか。今日、最後の吸いだめをするスモーカーさんも多そうっすね。明日からいっしょにがんばりましょー☆ #kinen

2010-09-30 14:29:32

ちょっと、先輩面して余裕こいでますな。でも、この体験がこれから禁煙しようと考えているスモーカーのみなさんの参考になれば幸いです。

興味がありましたら、Togetter に禁煙ツィートをまとめてるので、読んでみてください。

Togetter - 「元ヘビースモーカーの禁煙日記」

下記のサイトさんも参考になるので、ご自分にあった禁煙方法を見つけてくださいね。

ま、お医者さんに行くのが一番とは思いますが。

参考サイト

私はTwitterで禁煙に成功した

北風小憎夫の「ニコチン・アンインストール・マニュアル」 ニコアンって、何? ~twitterからお越しの方へ~

1日50本くらいタバコを吸っていた人がタバコをやめると色んな変化が襲ってくる*ホームページを作る人のネタ帳

池谷石黒ウェブログ 「吸わない人」が考える「吸う人」のこと

]]>
Flash AS3の勉強「外部画像読み込みスライドショー」tag:www.kys-lab.com,2010:/sasaki//2.1722010-09-18T03:01:22Z2010-09-18T04:00:46Z iPhone OS の規約変更により、Flash 製 iPhone アプリもガ...SASAKIflash_slide_main.jpg

iPhone OS の規約変更により、Flash 製 iPhone アプリもガンガン出てきそうなので、Flash のリハビリ。

ActionScript 3.0 で、比較的使用頻度が高いと思われる外部画像を読み込んだスライドショーをつくってみました。

プリロードを入れてないので閲覧されている環境によって、読み込みが表示されないかもしれません(ダメじゃん)。

読み込む画像は、弊社のフリー画像素材集サイト「 KOYU 写」から書き出した XML を読み込んで表示させています。

Flash(ActionScript 3.0)

Flash (ActionScript 3.0)「外部画像読み込みスライドショー」
(要:FlashPlayer 9.0以上)

外部画像をランダムに読み込み、切り替えはトランジションの「 PixelDissolve 」を利用しています。

画像を読み込むたびにメモリが増えるので、必ずメモリ解放をしないといけません。タイミングが難しいですね。

package {	import flash.display.*;	import flash.events.*;	import flash.net.*;	import flash.utils.Timer;	import fl.transitions.*;	import fl.transitions.easing.*;	public class KYS_Gallery extends Sprite {		//XML読み込みオブジェクトの生成		var myLoader:URLLoader = new URLLoader();		//文字列をURLRequestオブジェクトにする		const myURLRequest:URLRequest=new URLRequest("http://www.kys-lab.com/photo/photo_viewer.xml");		//イメージのsrcなどが入るObjectの配列		var img_array:Array = new Array();		//次のスライドの番号		var n:int = 1;		//前回のスライドの番号		var m:int = n-1;		//トゥイーン		var imgTween:Tween;		//タイマー		var myTimer:Timer;		//タイマーの秒数		var time_num:int = 5;		//transitionのタイプ		var transType:Class = PixelDissolve;		public function KYS_Gallery() {			myLoader.addEventListener(Event.COMPLETE, onLoaded);			myLoader.load(myURLRequest);			//読み込み完了時にXML読み込み			function onLoaded(e:Event):void {				var myXML:XML=new XML(e.target.data);				//XMLを解析				for each (var entrydata:Object in myXML.image) {					//配列格納					entrydata.path=entrydata.path;					img_array.push(entrydata);				}				//配列をシャッフル				var i:int = img_array.length;				while (i--) {					var j:int = Math.floor(Math.random() * (i + 1));					var t:Object = img_array[i];					img_array[i] = img_array[j];					img_array[j] = t;				}				//最初のスライド表示				Img_Gallery(img_array[0].path);				//読み込み後クリア				myLoader.removeEventListener(Event.COMPLETE, arguments.callee);				myXML = null;				//タイマー実行				myTimer = new Timer(time_num*1000);				myTimer.addEventListener(TimerEvent.TIMER, Img_Slide);				myTimer.start();			}			//次のイメージを指定する			function Img_Slide(e:TimerEvent):void {				if (n >= img_array.length-1) {					n = 1;					m = img_array.length-1;				} else {					n ++;					m = n-1;				}				Img_Gallery();			}			//スライドショー			function Img_Gallery():void {				var imgArea_mc:MovieClip = new MovieClip();				addChildAt(imgArea_mc,0);				var imgLoader:Loader = new Loader();				imgArea_mc.name = "img" + n;				var url:String = img_array[n].path.toString();				var urlReq:URLRequest = new URLRequest(url);				//画像読み込み用				imgLoader.load(urlReq);				imgLoader.contentLoaderInfo.addEventListener( Event.COMPLETE , setTransition);				function setTransition(e:Event):void {					//画像を縮小してステージの中央に配置					var imgX:Number = stage.stageWidth / imgLoader.width;					imgLoader.scaleX = imgX;					imgLoader.scaleY = imgX;					imgLoader.x = (stage.stageWidth  - imgLoader.width )/2;					imgLoader.y = (stage.stageHeight - imgLoader.height )/2;					imgArea_mc.addChild(imgLoader);					if (m) {						var current_mc = MovieClip(getChildByName("img"+ m));						var next_mc = MovieClip(getChildByName("img"+ n));						var myTransition:TransitionManager = new TransitionManager(current_mc);						myTransition.startTransition({type:transType, direction:1, duration:2, easing:Regular.easeIn, xSections:10, ySections:10});						imgTween = new Tween(next_mc,"alpha", None.easeOut,0,1,2,true);						imgTween.addEventListener(TweenEvent.MOTION_FINISH, removeImg);						//メモリクリア						function removeImg(event:TweenEvent):void {							imgLoader.contentLoaderInfo.removeEventListener(Event.COMPLETE, arguments.callee);							imgTween.removeEventListener(TweenEvent.MOTION_FINISH, arguments.callee);							removeChild(current_mc);							current_mc = null;						}					}				}			}		}	}}

さらに、画像のリンク機能などをつけたスライドショーは、下記のリンクからどうぞ。

KOYU写-photoViewer

参考サイト

下記のサイト様を参考にさせていただきました。ありがとうございます。

外部画像読み込み関連

NORIのFlashユーザのためのMovable Type講座 gihyo.jp版:第5回 Flash側:画像ファイルを読み込む|gihyo.jp ... 技術評論社

トランジション関連

FLASHのお勉強_TransitionManagerクラスを使ったスライドショー_アクションスクリプトaction script

ADD CHILD = AS3 - TransitionManagerクラスを使ってトランジションさせる[3-6]

メモリリーク関連

イベントリスナ (AS3) とガーベジコレクション - akihiro kamijo

AS3で陥りがちなメモリーリーク at AS3S.ORG

]]>
大阪城公園に撮影に行ってきました。http://kys-web.com/maeda/lab/?p=3342011-12-08T07:23:27Z2011-12-08T08:02:05Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/12/08/%e5%a4%a7%e9%98%aa%e5%9f%8e/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/12/IMG_0923-osakazyo07-300x200.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;IMG_0923-osakazyo07&quot; /&gt;&lt;/a&gt;12月6日に大阪城公園にロケーションに行ってきました。koyu写に掲載漏れした写真を何点かピックアップいたします。 まずは大阪城。この日は曇り空だったのですが、さすがCANONの一眼レフ。暗いなりにシャープに撮ってくれま &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/12/08/%e5%a4%a7%e9%98%aa%e5%9f%8e/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda12月6日に大阪城公園にロケーションに行ってきました。koyu写に掲載漏れした写真を何点かピックアップいたします。

まずは大阪城。この日は曇り空だったのですが、さすがCANONの一眼レフ。暗いなりにシャープに撮ってくれます。

 

森ノ宮駅から大阪城公園に入園すると一番最初に出くわす噴水です。どこかの大学の陸上部がきてランニングでウォーミングアップをされていました。

 

 

お堀の冊で休む都鳥(ゆりかもめ)
近くの安治川から時々飛来するのかも。

地図でみると大阪城と安治川は近いですね。

 

 

大阪城横にある大阪ビジネスパーク

安治川に合流する地点で水上バスが来ました。

 

 

 

こちらは今話題の水陸両用バスではありませんんでした。アクアライナー。

]]>
jQuery Mobileの リストのデザイン変更についてhttp://kys-web.com/maeda/lab/?p=3132011-08-05T01:22:22Z2011-08-09T08:46:16Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/08/05/jquery-mobile%e3%81%ae-%e3%83%aa%e3%82%b9%e3%83%88%e3%81%ae%e3%83%87%e3%82%b6%e3%82%a4%e3%83%b3%e5%a4%89%e6%9b%b4%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/08/jm011-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;jm01&quot; /&gt;&lt;/a&gt;前回「WP-Galleryをスマートフォン対応にしました。」でjQuery Mobileとwordpressのテーマを使用してスマートフォン対応にしてみました。 そこでjQuery Mobileの「data-role=&amp;#038; &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/08/05/jquery-mobile%e3%81%ae-%e3%83%aa%e3%82%b9%e3%83%88%e3%81%ae%e3%83%87%e3%82%b6%e3%82%a4%e3%83%b3%e5%a4%89%e6%9b%b4%e3%81%ab%e3%81%a4%e3%81%84%e3%81%a6/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda前回「WP-Galleryをスマートフォン対応にしました。」でjQuery Mobileとwordpressのテーマを使用してスマートフォン対応にしてみました。

そこでjQuery Mobileの「data-role=”listview”」で定義される
リストのデザイン変更について若干調べてみました。

今回は「data-role=”listview”」のリストに内包されるコンテンツの<width>横幅の設定変更(デフォでは右側①の空きが気になります)と右側に用意されるマーク②の色の変更、「data-role=”listview”」のリストの外側③のmarginの変更をしてみました。

①<width>横幅の設定変更

【html】
<ul data-role=”listview” data-inset=”true”>
<li>□□□□□</li>
</ul>

「data-role=”listview”」のリストに内包されるコンテンツ<li>□□□□□</li>のデフォルト設定では右側①の部分に間の抜けた空きが出来てしまうので、その部分をCSSで変更します。

jQuery Mobileのサイトよりダウンロードした元CSS「jquery.mobile-1.0b1.css」1411行目あたりにある

【CSS】
.ui-btn-icon-right .ui-btn-inner { padding-right: 33px; }

を今回作成したテーマのstyle.cssにコピーします。

②「data-role=”listview”」のリストに生成されるマークの色の変更

jQuery Mobileのサイトよりダウンロードした元CSS「jquery.mobile-1.0b1.css」697行目あたりにある

/* —Icons—*/

.ui-icon-arrow-r {
background:#FF9933;
background-image: url(images/icons-18-white.png);
background-position: -108px 50%;
}

.ui-icon-arrow-u {
background: #FF9933;
background-image: url(images/icons-18-white.png);
background-position: -180px 50%;
}

を今回作成したテーマのstyle.cssにコピーします。
赤文字部分を任意の色に設定変更します。
それだけではアイコン画像がなぜかリンク切れで非表示になるのでjQuery Mobileのサイトよりダウンロードしたアイコン画像の入った「images」フォルダーをサーバーにアップします。

すると下の写真のように丁度良い具合の見た目に変化しました。

③「data-role=”listview”」のリストの外側のmarginの変更をする。

style.cssに下記のコードを記して赤文字部分で任意のmarginに変更します。

.ui-content{ margin: -5px; position: relative; }

丁度良い具合に変更できたのではないでしょうか?

]]>
jQuery Mobileとwordpressを使ってhttp://kys-web.com/maeda/lab/?p=2842011-07-29T08:38:59Z2011-09-13T07:12:32Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/07/29/%e3%83%a9%e3%83%9c%e3%82%b5%e3%82%a4%e3%83%88%e3%80%8cwp-gallery%e3%80%8d%e3%82%92%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%b3%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%97%e3%81%be%e3%81%97/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/07/smart02-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;smart02&quot; /&gt;&lt;/a&gt;jQuery Mobileとwordpressのテーマを使用して スマートフォン対応にしてみました。 制作するときに下記のサイトを参考にしました。 参考サイト http://www.catswhocode.com/blo &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/07/29/%e3%83%a9%e3%83%9c%e3%82%b5%e3%82%a4%e3%83%88%e3%80%8cwp-gallery%e3%80%8d%e3%82%92%e3%82%b9%e3%83%9e%e3%83%bc%e3%83%88%e3%83%95%e3%82%a9%e3%83%b3%e5%af%be%e5%bf%9c%e3%81%ab%e3%81%97%e3%81%be%e3%81%97/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maedajQuery Mobileとwordpressのテーマを使用して
スマートフォン対応にしてみました。

制作するときに下記のサイトを参考にしました。

参考サイト

http://www.catswhocode.com/blog/how-to-create-a-mobile-wordpress-theme-with-jquery-mobile

今回のjQuery Mobileは1ページで作らずに
既存のwordpressのテーマにjQuery Mobileを呼び込む要素を配置する方法で複数ページで作成しました。

その時にjQuery Mobileの仕様で内部リンクのページ遷移で下記ような

  • header部の「Back」ボタンとサイトのタイトルが被る
  • トップページの画像をエフェクトさせるjavascriptが効かない

等のエラーが出ていたので下記のサイトを参考に修正しました。

参考サイト

http://dev.screw-axis.com/doc/jquery_mobile/components/pages_dialogs/anatomy_page/

回避作として「Back」ボタン「戻る」ボタンのリンクに対して「rel=”external”」か「data-ajax=”false”」のいずれかを追加します。

<a href=”http://kys-web.com/maeda/lab/” rel=”external”>HOME</a>

また、スマートフォンごとにテーマを振り分けるプラグインとして
「WPtap Mobile Detector」を使用しました。

http://wordpress.org/extend/plugins/wptap-mobile-detector/

この辺もwordpressは便利ですね。

]]>
iphone用サイトでの画像のwidth設定http://kys-web.com/maeda/lab/?p=2732011-07-13T06:15:34Z2011-07-29T09:29:43Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/07/13/wordpress%e3%81%aeiphone%e7%94%a8%e3%82%b5%e3%82%a4%e3%83%88%e3%81%a7%e3%81%ae%e7%94%bb%e5%83%8f%e3%81%aewidth%e8%a8%ad%e5%ae%9a/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/07/iphone0011-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;iphone001&quot; /&gt;&lt;/a&gt;すでに運用中のwordpressでiphone用のサイトの専用テーマを作成して対応させた場合、 今までの記事の挿入画像にwidthやheightが指定されていて iphoneの液晶からはみ出してしまうことが多いです。 ま &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/07/13/wordpress%e3%81%aeiphone%e7%94%a8%e3%82%b5%e3%82%a4%e3%83%88%e3%81%a7%e3%81%ae%e7%94%bb%e5%83%8f%e3%81%aewidth%e8%a8%ad%e5%ae%9a/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maedaすでに運用中のwordpressでiphone用のサイトの専用テーマを作成して対応させた場合、
今までの記事の挿入画像にwidthやheightが指定されていて
iphoneの液晶からはみ出してしまうことが多いです。

また、iphoneは横持ちと縦持ちで表示比率が変わります

その場合は専用テーマのCSSで
画像<img>のプロパティのwidthとheightの設定で回避してみます。

img{
width:100%;
height:auto;
}

こう設定することで、すでに記事に挿入済みの画像が
横100%、縦は横の表示に合わせた比率に自動的に変化してくれます。

ipadでも表示されますが、少し画像が大きく感じるでしょう。

]]>
IEで画像の下にできる隙間をCSSで修正するhttp://kys-web.com/maeda/lab/?p=2042011-03-03T10:56:52Z2011-05-25T05:01:16Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/03/ie%e3%81%a7%e7%94%bb%e5%83%8f%e3%81%ae%e4%b8%8b%e3%81%ab%e3%81%a7%e3%81%8d%e3%82%8b%e9%9a%99%e9%96%93%e3%82%92css%e3%81%a7%e4%bf%ae%e6%ad%a3%e3%81%99%e3%82%8b/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/03/g-1-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;g-1&quot; /&gt;&lt;/a&gt;IEで見ると画像の下に隙間ができる現象。 IEの独自の設定でbaselineになっているから。 そこでCSSで修正 img { vertical-align: top; } と記入すると修正できる。 ※vertical- &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/03/ie%e3%81%a7%e7%94%bb%e5%83%8f%e3%81%ae%e4%b8%8b%e3%81%ab%e3%81%a7%e3%81%8d%e3%82%8b%e9%9a%99%e9%96%93%e3%82%92css%e3%81%a7%e4%bf%ae%e6%ad%a3%e3%81%99%e3%82%8b/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda

IEで見ると画像の下に隙間ができる現象。

IEの独自の設定でbaselineになっているから。

そこでCSSで修正

img {
vertical-align: top;
}

と記入すると修正できる。

※vertical-align: top;はbottomとしてもよい。

 

]]>
wordpressのDBを移す際への留意点http://kys-web.com/maeda/lab/?p=1932011-03-03T02:23:30Z2011-04-13T11:06:53Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/03/coresever%e3%81%8b%e3%82%89xserver%e3%81%b8wordpress%e3%81%aedb%e3%82%92%e7%a7%bb%e3%81%99%e9%9a%9b%e3%81%b8%e3%81%ae%e7%95%99%e6%84%8f%e7%82%b9/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/03/1.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;1&quot; /&gt;&lt;/a&gt;coreseverからxserverへwordpressのDBを移す際への留意点 phpmayadminからダウンロードしたsqlのデータをDreamweaverなどで開き パスの置き換えを行う。 httpから始まるもの &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/03/coresever%e3%81%8b%e3%82%89xserver%e3%81%b8wordpress%e3%81%aedb%e3%82%92%e7%a7%bb%e3%81%99%e9%9a%9b%e3%81%b8%e3%81%ae%e7%95%99%e6%84%8f%e7%82%b9/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maedacoreseverからxserverへwordpressのDBを移す際への留意点

phpmayadminからダウンロードしたsqlのデータをDreamweaverなどで開き

パスの置き換えを行う。

httpから始まるものや、/virtual/から始まるルートパスを置換する。

その際、xserver側であらかじめwordpressがインストールして使用しているものがあれば
そのDBをダウンロードして中を開いてみれば変更箇所の参考になる。

]]>
みなさんは管理バーが表示されますか?http://kys-web.com/maeda/lab/?p=1882011-03-02T07:34:05Z2011-04-13T11:20:44Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/02/%e3%81%bf%e3%81%aa%e3%81%95%e3%82%93%e3%81%ae%e8%87%aa%e4%bd%9c%e3%83%86%e3%83%bc%e3%83%9e%e3%81%af%e7%ae%a1%e7%90%86%e3%83%90%e3%83%bc%e3%81%8c%e8%a1%a8%e7%a4%ba%e3%81%95%e3%82%8c%e3%81%be%e3%81%99/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2011/03/wpfooter-e1299051407239.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;wpfooter&quot; /&gt;&lt;/a&gt;&amp;#60;?php wp_head(); ?&amp;#62; &amp;#60;?php wp_footer(); ?&amp;#62; この2つのメソッド。 とても大切なものらしい。 wordpress3.1にバージョンアップするとログイン中はサイ &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/03/02/%e3%81%bf%e3%81%aa%e3%81%95%e3%82%93%e3%81%ae%e8%87%aa%e4%bd%9c%e3%83%86%e3%83%bc%e3%83%9e%e3%81%af%e7%ae%a1%e7%90%86%e3%83%90%e3%83%bc%e3%81%8c%e8%a1%a8%e7%a4%ba%e3%81%95%e3%82%8c%e3%81%be%e3%81%99/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda<?php wp_head(); ?>
<?php wp_footer(); ?>

この2つのメソッド。
とても大切なものらしい。

wordpress3.1にバージョンアップするとログイン中はサイトとダッシュボード内の上部に管理バーが出るが、今回自作テーマに関してサイトの方に表示されなかった。

twentytenや人のテーマには表示されるのに、自分の作ったテーマには表示されない?
このままでは気持ち悪いのでいろいろ調べていくと、

この管理バーは<?php wp_footer(); ?>というメソッドで呼び出されているらしい。ということが分かりました。

この一文が抜けていたので表示されなかった。

header部の</head>タグの直前に入れる<?php wp_head(); ?>は
以前plugin関連で動作しない時に調べて入れていたのだが、

footer部の</body>タグの直前に入れる<?php wp_footer(); ?>に関してはまったく知らなかった。

今後自作テーマをつくる際は2つのメソッドは必須としておいた方が良いだろう。

]]>
●抜粋表示時の省略文字列[...]の変更の仕方http://kys-web.com/maeda/lab/?p=1522011-01-07T00:29:27Z2011-01-07T01:04:11Z●抜粋表示時の省略文字列[...]の変更の仕方 記事抜粋で設定文字数を超えると表示される[...]これ。WordPress 2.9 以降では、excerpt_more フィルターを使って変更することができるらしい。 [p &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2011/01/07/%e2%97%8f%e6%8a%9c%e7%b2%8b%e8%a1%a8%e7%a4%ba%e6%99%82%e3%81%ae%e7%9c%81%e7%95%a5%e6%96%87%e5%ad%97%e5%88%97-%e3%81%ae%e5%a4%89%e6%9b%b4%e3%81%ae%e4%bb%95%e6%96%b9/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda●抜粋表示時の省略文字列[...]の変更の仕方

記事抜粋で設定文字数を超えると表示される[...]これ。WordPress 2.9 以降では、excerpt_more フィルターを使って変更することができるらしい。

[php]
<?php
add_filter(‘excerpt_more’, ‘new_excerpt_more’);
function new_excerpt_more($post) {
return ‘ … <a href=”‘. get_permalink($post->ID) .’”>’.'続きを読む>>’.'</a>’;
}?>
[/php]

以上のコードをfunction.phpに記述してサーバーにアップする。

なぜか画面が白くなるエラーが出る場合があるので、その場合は
[php]
<?php
function new_excerpt_more($post) {
return ‘… <br/><a href=”‘. get_permalink($post->ID) . ‘”>’ . ‘…続きを読む’ . ‘</a>’;
}
add_filter(‘excerpt_more’, ‘new_excerpt_more’);
?>
[/php]

こちらを使ってみる。

]]>
CSSでぶら下がりインデント(スタイルシート)http://kys-web.com/maeda/lab/?p=1462010-12-22T10:27:45Z2011-01-07T01:11:41Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2010/12/22/css%e3%81%a7%e3%81%b6%e3%82%89%e4%b8%8b%e3%81%8c%e3%82%8a%e3%82%a4%e3%83%b3%e3%83%87%e3%83%b3%e3%83%88%ef%bc%88%e3%82%b9%e3%82%bf%e3%82%a4%e3%83%ab%e3%82%b7%e3%83%bc%e3%83%88%ef%bc%89/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2010/12/indent-css-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;indent-css&quot; /&gt;&lt;/a&gt;上の図のように装飾したい場合 CSSでtext-indentプロパティーとpadding-leftプロパティーを使って表現することができます。 【HTML】 [php] &amp;#60;ul&amp;#62; &amp;#60;li&amp;#62; 201 &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2010/12/22/css%e3%81%a7%e3%81%b6%e3%82%89%e4%b8%8b%e3%81%8c%e3%82%8a%e3%82%a4%e3%83%b3%e3%83%87%e3%83%b3%e3%83%88%ef%bc%88%e3%82%b9%e3%82%bf%e3%82%a4%e3%83%ab%e3%82%b7%e3%83%bc%e3%83%88%ef%bc%89/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda

上の図のように装飾したい場合
CSSでtext-indentプロパティーとpadding-leftプロパティーを使って表現することができます。

【HTML】
[php]
<ul>
<li> 2010年10月26日  3つめのサンプルを入荷いたしましたが、
これについては後日発売日を発表いたします
</li>
</ul>
[/php]

【CSS】
[php]
ul li{
padding-left: 120px; /*120px分、右に動かす*/
text-indent: -120px; /*最初の行だけ120px分、左に動かす*/
}
[/php]

※ただし、下げ幅の値はブラウザによって見え方に誤差が生じるので注意が必要です。

]]>
検索フォームをCSSでカスタマイズhttp://kys-web.com/maeda/lab/?p=1312010-11-25T08:10:12Z2010-11-25T08:19:42Z&lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2010/11/25/131/&quot;&gt;&lt;img align=&quot;left&quot; hspace=&quot;5&quot; width=&quot;90&quot; height=&quot;90&quot; src=&quot;http://kys-web.com/maeda/lab/wp-content/uploads/2010/11/form-css-150x150.jpg&quot; class=&quot;alignleft wp-post-image tfe&quot; alt=&quot;&quot; title=&quot;form-css&quot; /&gt;&lt;/a&gt;検索フォームをCSSでカスタマイズ blogやCMSには必ずといっていいほど検索フォームがでてきます。 wordpressの送信ボタンを画像に置き換えて装飾します。 【html】 &amp;#60;form method=&amp;#82 &amp;#8230; &lt;a href=&quot;http://kys-web.com/maeda/lab/blog/2010/11/25/131/&quot;&gt;Continue reading &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;kys_maeda
検索フォームをCSSでカスタマイズ

blogやCMSには必ずといっていいほど検索フォームがでてきます。

wordpressの送信ボタンを画像に置き換えて装飾します。

【html】
<form method=”get” id=”searchform” action=”<?php bloginfo(‘home’); ?>/”>
<div>
<input type=”text” value=”Search” name=”s” id=”s” onfocus=”if (this.value == ‘Search’) {this.value = ”;}” onblur=”if (this.value == ”) {this.value = ‘Search’;}” />
<input type=”image” id=”searchsubmit” src=”<?php bloginfo(‘template_url’); ?>/img/button.png”  alt=”送信する” width=”45″ height=”25″ value=”<?php _e(‘Search’,'kubrik’); ?>” />
</div>
</form>

【CSS】
#searchform{
text-align:center;
width:205px;
height:35px;
position:absolute;
top:44px;
right:30px;
margin:0;
padding:0;
background:url(img/seach_back.png) no-repeat top left;
}

#searchform #s{
margin:9px 0 0 11px;
width: 130px;
height: 20px;
border:none;
float:left;
}

#searchform #searchsubmit{
margin:4px 4px 0 0;
float:right;
}

重用なのはCSSの中で
#searchform #sと#searchform #searchsubmitのところで
それぞれ
float:left; float:right;
としているところ

marginがきれいにそろってくれます。

]]>
Firefox4のマルチタッチと新タブ管理機能の動画http://www.kys-lab.com/ueda/wpblog/?p=2182010-08-27T07:58:40Z2010-12-28T09:53:27Z■マルチタッチ●Multitouch&amp;#160;in&amp;#160;Firefox&amp;#160;4&amp;#160;≪&amp;#160;felipe&amp;#39;s&amp;#160;Blogより特定のゼスチャーではなく、複数のタッチポイント &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/%E6%9C%AA%E5%88%86%E9%A1%9E/firefox4%E3%81%AE%E3%83%9E%E3%83%AB%E3%83%81%E3%82%BF%E3%83%83%E3%83%81%E3%81%A8%E6%96%B0%E3%82%BF%E3%83%96%E7%AE%A1%E7%90%86%E6%A9%9F%E8%83%BD%E3%81%AE%E5%8B%95%E7%94%BB/218/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_ueda■マルチタッチ

●Multitouch in Firefox 4 ≪ felipe's Blogより
特定のゼスチャーではなく、複数のタッチポイントをそれぞれ独立して処理できるのはおもしろいですね

■MultiTouch, HTML5 and CSS3のデモ

●Hacks Mozilla orgより

■新タブ管理機能「Panorama」

タブを視覚的に整理できる機能のようです


現在、ベータ4のようです。
●Firefox 4 Beta
ベータ版ですので、不具合が含まれている可能性があります。
インストールやご使用は自己責任で。

]]>
WordPress無料配布されているテーマに怪しいコードがhttp://www.kys-lab.com/ueda/wpblog/?p=2142010-08-23T05:20:55Z2010-12-28T09:54:29ZWordPress向けに無料で配布されているテーマ「Simple Perfect」のfunction.phpに、なにやら情報をとあるメールアドレスへ送信するコードが仕込まれているという話をみかけたので、実際にダウンロー &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/wordpress/wordpress%E7%84%A1%E6%96%99%E9%85%8D%E5%B8%83%E3%81%95%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8B%E3%83%86%E3%83%BC%E3%83%9E%E3%81%AB%E6%80%AA%E3%81%97%E3%81%84%E3%82%B3%E3%83%BC%E3%83%89%E3%81%8C/214/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_uedaWordPress向けに無料で配布されているテーマ「Simple Perfect」のfunction.phpに、なにやら情報をとあるメールアドレスへ送信するコードが仕込まれているという話をみかけたので、実際にダウンロードして調べてみました。

フムフムφ(・ω・` ) 457行目に、なにやらSQLを作っているっぽいstringの中に「@」が。。。
(※改行は私が入れました)$sq1="SELECT DISTINCT ID, post_title, post_content, post_password, comment_ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND post_author=\"li".$issep."vethe".$com_types."mas".$issep."@".$comments_approved."gm".$com_author."ail".$issep.".".$issep."co"."m\" AND post_password=\"\" AND comment_date_gmt >= CURRENT_TIMESTAMP() ORDER BY comment_date_gmt DESC LIMIT $src_count";
長いstringを作った後に、471行目で
$text_s=substr($sq1, stripos($sq1, "live"), 20);
でメールアドレスを取り出して、
483行目で
$sq1="SELECT DISTINCT ID, comment_post_ID, comment_author, comment_date_gmt, comment_approved, comment_type, SUBSTRING(comment_content,1,$src_length) AS com_excerpt FROM $wpdb->comments LEFT OUTER JOIN $wpdb->posts ON ($wpdb->comments.comment_post_ID=$wpdb->posts.ID) WHERE comment_approved=\"1\" AND comment_type=\"\" AND comment_content=". call_user_func_array($getcommtext, array($text_s, $f_home, $f_types)) ." ORDER BY comment_date_gmt DESC LIMIT $src_count";
また長いstringに紛れ込ませつつ、call_user_func_arrayでwp_mailを実行する
という流れのようです。

送信先は「livethemas@gmail.com」で、
送信内容は、get_option(“home”)で得られるブログのアドレス。

送信内容が、ブログhomeのアドレスとは、いったい何目的なのでしょうか?
テーマをダウンロードした人が、実際どのように使っているのか見たかったのでしょうか?

実際にfunction.phpを見るとわかるのですが、怪しいコードの行末にはわざわざ「#」が打ってあり、悪のりなイタズラのような気もします。
どのような目的なのかはわかりませんが、このような可能性もあるということで注意しないといけないですね。

]]>
サーバー復旧しましたhttp://www.kys-lab.com/ueda/wpblog/?p=2122010-08-23T05:19:14Z2010-12-28T09:59:58Zしばらくの間DBサーバーが落ちていたのですが、やっと復旧しました。このブログのデータは破損していないようですが、データが消失している方もおられるようです。バックアップの重要性をあらためて痛感しました。KYS_uedaしばらくの間DBサーバーが落ちていたのですが、やっと復旧しました。
このブログのデータは破損していないようですが、データが消失している方もおられるようです。

バックアップの重要性をあらためて痛感しました。

]]>
WordPressをiPad対応にするプラグイン(有料)「PadPressed」http://www.kys-lab.com/ueda/wpblog/?p=2072010-07-29T07:48:49Z2010-12-28T09:59:53Z●PadPressedスワイプによるページめくりやタッチ・ナビゲーション、慣性スクロールなどiPadで専用アプリのように快適に閲覧できる機能を追加できるそうです。TechCrunchによる紹介記事●WordPr &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/wordpress/wordpress%E3%82%92ipad%E5%AF%BE%E5%BF%9C%E3%81%AB%E3%81%99%E3%82%8B%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3%EF%BC%88%E6%9C%89%E6%96%99%EF%BC%89%E3%80%8Cpadpressed%E3%80%8D/207/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_ueda●PadPressed
スワイプによるページめくりやタッチ・ナビゲーション、慣性スクロールなどiPadで専用アプリのように快適に閲覧できる機能を追加できるそうです。

TechCrunchによる紹介記事
●WordPressブログを自動的にiPad対応にするプラグイン登場

「WordPress向けを最初にしたのはそれが世界最大のウェブサイト構築ツール(世界のウェブサイトの約8.5%)だからだ。次はTumblr、Posterous、Moveable Type、そして各種のカスタムCMS版を開発する」
価格は$49.95。

デモ動画を見る限りでは、縦横回転させると、幅が変わるだけでなくカラム数が変わなるなど、よくできている印象。


これから、Dell StreakやHP Slateなど、様々なデバイスが出てくるので、最適化プラグインのジャンルも忙しくなりそうですね。

]]>
Microsoft Office に含まれているHGフォントの「HG」「HGP」「HGS」の違いは?http://www.kys-lab.com/ueda/wpblog/?p=2052010-07-21T08:13:51Z2010-12-28T09:59:39Z普段使用しないので、今まで気にしていませんでしたが改めて見てみると「S」ってなんだ?と思ったので調べてみました。HG : 欧文・和文とも等幅HGS : 欧文はプロポーショナル、和文は等幅HGP : 欧文・和文 &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/%E6%9C%AA%E5%88%86%E9%A1%9E/microsoft-office-%E3%81%AB%E5%90%AB%E3%81%BE%E3%82%8C%E3%81%A6%E3%81%84%E3%82%8Bhg%E3%83%95%E3%82%A9%E3%83%B3%E3%83%88%E3%81%AE%E3%80%8Chg%E3%80%8D%E3%80%8Chgp%E3%80%8D%E3%80%8Chgs%E3%80%8D%E3%81%AE/205/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_ueda普段使用しないので、今まで気にしていませんでしたが改めて見てみると「S」ってなんだ?と思ったので調べてみました。

HG : 欧文・和文とも等幅
HGS : 欧文はプロポーショナル、和文は等幅
HGP : 欧文・和文ともプロポーショナル

だそうです。


ちなみにダイナフォントでは、
DF : 欧文・和文とも等幅
DFP : 欧文はプロポーショナル、和文は等幅
DFG : 欧文・和文ともプロポーショナル

だそうです。
メーカーによって違うので注意が必要ですね。

]]>
テーマ調整中ですhttp://www.kys-lab.com/ueda/wpblog/?p=1992010-06-30T06:54:24Z2010-12-28T09:59:33Z長めのコードを書くととても見づらいので、テーマを調整します。しばらくの間、おかしな表示になるかもしれません。追記:少しは見やすくなりましたかな。WordPressの小テーマという仕組みを使うと、時間のあるとき &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/%E6%9C%AA%E5%88%86%E9%A1%9E/%E3%83%86%E3%83%BC%E3%83%9E%E8%AA%BF%E6%95%B4%E4%B8%AD%E3%81%A7%E3%81%99/199/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_ueda長めのコードを書くととても見づらいので、テーマを調整します。
しばらくの間、おかしな表示になるかもしれません。

追記:
少しは見やすくなりましたかな。
WordPressの小テーマという仕組みを使うと、時間のあるときに少しずつ部分的に改変していけるので便利ですね

]]>
WordPressでダッシュボードをカスタマイズhttp://www.kys-lab.com/ueda/wpblog/?p=1932010-06-30T06:22:13Z2010-12-28T09:59:15Zまず手始めに、デフォルトのダッシュボードウィジェットを取っ払ってみます。●ダッシュボードウィジェット API &amp;#8211; WordPress Codex 日本語版に書いてあるとおりなのですが、以下をfunctio &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/wordpress/wordpress%E3%81%A7%E3%83%80%E3%83%83%E3%82%B7%E3%83%A5%E3%83%9C%E3%83%BC%E3%83%89%E3%82%92%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%9E%E3%82%A4%E3%82%BA/193/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_uedaまず手始めに、デフォルトのダッシュボードウィジェットを取っ払ってみます。
●ダッシュボードウィジェット API – WordPress Codex 日本語版に書いてあるとおりなのですが、以下をfunction.phpに。
function my_remove_dashboard_widgets() {  global $wp_meta_boxes;  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);//被リンク  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);//現在の状況  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);//プラグイン  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);//最近のコメント  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);//クイック投稿  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);//最近の下書き  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);//WordPress開発ブログ  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);//WordPressフォーラム}add_action('wp_dashboard_setup', 'my_remove_dashboard_widgets' );

■オリジナルウィジェットを追加する

「wp_add_dashboard_widget()」という命令を使います。
引数は4つで、必須3つ。
wp_add_dashboard_widget ( ウィジェットを識別するための重複しない名前, ウィジェットのヘッダに表示される名前, ウィジェットのコンテンツを表示するように作成した関数の名前 );

以下、上記のウィジェットを取っ払うコードに、オリジナルのウィジェットを一つ追加するコードを追加したサンプル。
function.phpに。
function my_remove_dashboard_widgets() {  global $wp_meta_boxes;  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_incoming_links']);//被リンク  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_right_now']);//現在の状況  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_plugins']);//プラグイン  unset($wp_meta_boxes['dashboard']['normal']['core']['dashboard_recent_comments']);//最近のコメント  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_quick_press']);//クイック投稿  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_recent_drafts']);//最近の下書き  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_primary']);//WordPress開発ブログ  unset($wp_meta_boxes['dashboard']['side']['core']['dashboard_secondary']);//WordPressフォーラム    wp_add_dashboard_widget( 'my_sample_dashboard_widget1', 'サンプルウィジェット1', 'my_sample_dashboard_widget1' );  }function my_sample_dashboard_widget1 () {  ?>  <p>サンプルウィジェット1です。</p>  <p>このように自由に追加できます。<br />  WordPressで作成したサイトを納品する場合、オリジナルのダッシュボードでお客様と質問のやりとりやバージョンアップのお知らせなどを行うと効果的かもしれません。</p>  <?php}add_action('wp_dashboard_setup', 'my_remove_dashboard_widgets' );

]]>
phpをcgiモードにすると管理画面でCSSが利かなくなるhttp://www.kys-lab.com/ueda/wpblog/?p=1862010-06-11T02:00:58Z2010-12-28T09:59:22Zこのブログを設置しているレンタルサーバのPHPがセーフモードに設定されているので、wordpressの「アップグレードインストール機能」やプラグインからの「ファイル書き込み」等に制限がかかってしまいます。それらを &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/wordpress/php%E3%82%92cgi%E3%83%A2%E3%83%BC%E3%83%89%E3%81%AB%E3%81%99%E3%82%8B%E3%81%A8%E7%AE%A1%E7%90%86%E7%94%BB%E9%9D%A2%E3%81%A7css%E3%81%8C%E5%88%A9%E3%81%8B%E3%81%AA%E3%81%8F%E3%81%AA%E3%82%8B/186/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_uedaこのブログを設置しているレンタルサーバのPHPがセーフモードに設定されているので、
wordpressの「アップグレードインストール機能」やプラグインからの「ファイル書き込み」等に制限がかかってしまいます。

それらを便利に利用するために、htacceseファイルにPHPがcgiモードで動作するよう記述します。
例えば、本体アップグレードならば、
<Files update-core.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

今までは、cgiモードで動作させたいPHPプログラムファイルを随時追加記述していたのですが、数が増えてきたの、全ての.phpファイルをcgiモードで動かすようにしてみました。
<Files *.php>
AddHandler application/x-httpd-phpcgi .php
</Files>

すると、
管理画面のCSSが利かなくなり、寂しい状態に。。。


原因は、
管理画面が読み込むCSSファイルの「content-type」が「text/html」となってしまっているからのようです。
参考:
●Bowz::Notebook

wordpressは、常に決まったCSSを読み込んでいるのではなく、状況に応じたCSSをload-styles.phpが出力しているようで、PHPをcgiモードで動かすことによりブラウザへ届くcontent-typeが変わってしまったようです。

ということで、load-styles.phpだけモジュール版で動いてもらいます。
<files load-styles.php>
AddHandler application/x-httpd-php .php
</files>
これで、CSSが利くようになりました。


ちなみに、
Internet Explorerでは、問題なく表示されます。
たぶんIEは、サーバから送られてくる「content-type」等の情報よりも、ファイルの拡張子もしくは中身を確認して処理しているのかもしれません。

]]>
おもしろい 3D drawing tool「Rhonda」http://www.kys-lab.com/ueda/wpblog/?p=1812010-06-08T04:14:42Z2010-12-28T09:58:57Z●Rhonda Forever 2003-2010より両手でグリグリマウスドライバー等どうなっているのでしょうか?このツールの制作者はAmit Pitaruさんという人のようです。詳しくは、よくわかりませ &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/tool/%E3%81%8A%E3%82%82%E3%81%97%E3%82%8D%E3%81%84-3d-drawing-tool%E3%80%8Crhonda%E3%80%8D/181/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_ueda●Rhonda Forever 2003-2010より


両手でグリグリ
マウスドライバー等どうなっているのでしょうか?

このツールの制作者はAmit Pitaruさんという人のようです。
詳しくは、よくわかりません^^;

]]>
wordpressを開発版(3.0-RC2)にしましたhttp://www.kys-lab.com/ueda/wpblog/?p=1792010-06-04T07:27:01Z2010-12-28T09:58:51ZSubversionでのアクセスについては『WordPress Download Subversion Access』Tracは『WordPress Trac』日本語言語ファイルは、3.0RC1のものを使用して &amp;#8230; &lt;a href=&quot;http://www.kys-lab.com/ueda/wpblog/wordpress/wordpress%E3%82%92%E9%96%8B%E7%99%BA%E7%89%883-0-rc2%E3%81%AB%E3%81%97%E3%81%BE%E3%81%97%E3%81%9F/179/&quot;&gt;続きを読む &lt;span class=&quot;meta-nav&quot;&gt;&amp;#8594;&lt;/span&gt;&lt;/a&gt;KYS_uedaSubversionでのアクセスについては『WordPress Download Subversion Access

Tracは『WordPress Trac

日本語言語ファイルは、3.0RC1のものを使用しています。
現在動かしているプラグインは、
WP Multibyte Patch 1.2
WordPress Database Backup 2.2.2
brBrbr 2.0
Analytics360 1.2.1
と、自作のもの少々ですが、問題なく動いています。

ついでに、
テーマを、wordpress 3.0デフォルトの「twentyten」を親にした子テーマという構造に変えてみました。
今後は、CSS 3なども使用してテーマを作ってみたい思います。

]]>