カテゴリー: さくらちろ

明けましておめでとうございます

明けましておめでとうございます。

[image]西新井大師からみた初日の出

訪問ありがとうございます、生きてます。

ブログを初めてから2回目の冬なんですけれども
最初の年も年末年始に更新が滞ったし
今年も、昨年末から更新が滞ってるし
とにかくまぁ冬に弱い感じ、夏生まれだからかしら
(年始は高熱で実際に床に伏せていたし)。

Webの事は色々やっているんだけど、
時間に追われ手持ちのカードの組み合わせや地道な作業で乗り切ろうとしたり
覚えたりあみ出したことが細か過ぎたり、
トライアンドエラーエラーエラーな感じで実を結ばなかったり、そんな毎日です。
賢くなりたい。

久しぶりに帰省

このブログに個人的な日記みたいな事を書くの変な感じ。
コンセプト揺らいでるんじゃないの、大丈夫か?

今年は久しぶりに実家に顔をだしにいったんだけど
家までの道のりに馬に遭遇しました。
[image]宮山駅付近の乗馬

人、馬、ポニー、子牛って隊列がほのぼのしてました。
近くに乗馬させる何かがあるのかな?寒川神社の祭事で使うやぶさめ用の馬かしら。

ちなみにgooglemapで場所をみるとここ。

大きな地図で見る
何気に後ろの家の、外階段の向きが変わっていたりする。なにこれすげぇ。
てかものそい田舎なのにこんな細道までストリートビューが有効だった、googleすげぇ。

新年の寒川といえば寒川神社

で、夜寒川神社にお参りしにいってたこ焼きを購入。

これは神門のねぶた。
[image]ねぶた

ちなみに
ねぶた(NE BU TA)は青森で、
ねぷた(NE PU TA)は弘前[hirosaki]

人の形をしてるのが青森NEBUTAでラッセラー
扇形の燈篭に絵が書いてあるが弘前NEPUTA

と青森出身の父がおしえてくださいました。

拝殿
[image]2011年寒川神社

2011年のちろ(白)とさくら(キジトラ)

今年で何歳だろう。
[image]ちろとさくら2011

さくらのシマシマがわかるようにしようとすると
ちろが白く飛んじゃうし

ちろのカタチがわかるようにしようとすると
さくらが黒く潰れちゃう
困ったふたり。

本年もよろしくお願いします

更新したりしなかったりとユルい感じですけどひとつよろしくです。
今年はhtml5とcss3が加速するのかな。


さくらインターネットのスタンダードプランでphp5.3.3をインストールして使う

使用したSSHクライアント / index – Terminal Emulator Poderosa
(さくらインターネットの公式で例に挙げられていたので使った、秘密鍵というのを何度チャレンジしても作れなくてログインが面倒くさい)

このサイトを参考にしてインストールしました。

さくらのレンタルサーバーで、php5-mysqli をつかえるようにする覚書。(PHP5.3.0をコンパイルして使う) – れいさ屋

上記サイトに書いてある順番そのまんま入力していくだけでphp5.3.3のインストールに成功した(※コンパイル時のコマンドでmysqlに関係するところを省略したけど)。
サイトが移転したようなので、消えないと思うけど念のため記事を一部引用させていただきます。

※php-5.3.0をphp-5.3.3に変更して使った

作業ディレクトリの作成

mkdir tmp
cd tmp

PHPをダウンロード・解凍

wget http://jp.php.net/get/php-5.3.0.tar.gz/from/this/mirror
tar zxvf php-5.3.0.tar.gz

* TABキーによる補完が利用できます

コンパイル

cd php-5.3.0
./configure --prefix=/home/ --with-config-file-path=/home//www/ --enable-force-cgi-redirect --enable-mbstring --enable-mbregex --enable-calendar --enable-pdo --with-pcre-dir=/usr/local --with-openssl=/usr --with-iconv=/usr/local --with-gd --with-zlib=/usr --with-jpeg-dir=/usr/local --with-png-dir=/usr/local --with-ttf --with-freetype-dir=/usr/local --with-mysql=/usr/local/mysql/5.1 --with-pdo-mysql=/usr/local/mysql/5.1 --with-mysqli=/usr/local/mysql/5.1/bin/mysql_config --enable-soap --with-curl --with-xsl=/usr/local --enable-dom --with-gettext=/usr/local --enable-exif

* の部分は、書き換えてください。
* ミソは、–with-mysqli=/usr/local/mysql/5.1/bin/mysql_config これです。

renice +20 -u
make
make install

使って見るには:

このままでは今回コンパイルしたPHPは、使われることはありません。

ドメインごとに、以下の手順をする必要があります。

・例: www.example.com (/home//www/example.com/)でつかえるようにする場合

mkdir /home//www/example.com/cgi-bin
cp /home//bin/php-cgi /home//www/example.com/cgi-bin/php5.cgi

このようにしてphp-cgiをコピーしたら、~/example.com/ディレクトリ上に、.htaccessを作成します。

内容は、

Action php5-script /cgi-bin/php5.cgi
AddHandler php5-script .php .php5

こんな感じにします。すると、.php拡張子にアクセスを試みた場合、/cgi-bin/php5.cgiでphpコードが実行されるわけです。ちなみに、デフォルトでmysqliは有効になっています。特に設定は弄る必要ないです。
(推奨)php.iniの設定

mbstring.language = Japanese
mbstring.internal_encoding = UTF-8
mbstring.http_input = auto
;mbstring.http_output = UTF-8
mbstring.detect_order = auto

date.timezone = Asia/Tokyo

コイツは、.htaccessと同じディレクトリに設置しましょう。
おわりに

* mysqliに限らず、その他組み込まれていないモジュールについても、この方法でつかえるようにすることができます。詳しくは、php公式サイトあたりをご覧ください。

php.iniの設定のdate.timezone = Asia/Tokyo、これ大事ぽかった。

なんでphp5.3.3をインストールしたかったか、事の経緯

iPhoneのユーザー辞書用にファイルを変換するサイト(ココとかこことか)はphpで作ってて、sqliteをいじったり作成したりするのにPDOクラス(php5.1以降で対応)やらSQLite3クラス(php5.3以降で対応)やらを使ってる。

動作テストはローカルのxamppでやってた(phpのバージョンは5.3.1みたい)。
なのでPDOクラスもSQLite3クラスも問題なく使えてた。

だがしかし、残念な事に作成したphpを実際に走らせるこのサーバーのphpは5.2.13(CGI版)だった(さくらインターネットのスタンダードプラン)。
つまり本サーバーではSQLite3クラスが使えない。

そんな最初に気づいておかなきゃいけない大事な事も気にかけずに、よみと単語の.txtを.sqliteに変換して追加したり作成するphpを作ってローカルでテストして問題なさそうだったので、本サーバーにアップしたらあたりまえのように動かない。

せっかく作ったプログラムがこのままだと使えない。
なのでSQLite3クラスを使えるようにする方法を探す。

PECLのSQLite3拡張モジュールを使えば大丈夫?

PECL :: Package :: sqlite3 :: download

さくらインターネットのスタンダードプランのサーバーにPECLをインストールさせるには、どうもautoheaderとautoconfを弄らないと使えないみたいなんだけど、うちの頭が悪すぎた為にうまいこと設定が出来ずインストール出来なかった。

参考 / さくらインターネットにPECLをインストール [dozo dokuwiki.php]

なので、php自体を5.3以上にしてしまえ!と思ったわけです。


更新したページと投稿を表示するウィジェット

WordPressに最初からついてる「最近の投稿」ウィジェットは、文字通り最近の投稿しか拾ってくれない。

乱雑モックアップは、勉強したり試したりしながらその過程やメモを書いてたりするので、投稿に「続編」がしばしば発生する。
続編の扱いをどうしたらいいのかなーというのはずっと考えていて、いまだ結論がでない。

今のところ続きがある場合は、別エントリーとしてポストしてきた。
古い記事を更新しても「最近の投稿」に表示されないから。

といった流れの中、WordPressで再更新(アップデート)した過去記事も最新記事に含ませるカスタマイズ法 – かちびと.netを読んだ。
そしてウィジェットを探してみたら見つけたのが更新した投稿とページのウィジェット→Recently Updated Pages — 病的溺愛シンドローム

これはディ・モールト、ディ・モールト。
さっそくWordPress › Recently Updated Pages « WordPress PluginsWordPress › Recently Updated Posts « WordPress Pluginsをダウンロードしてみた。

(ページの更新情報を上げる必要もないから)先にRecently Updated Postsの方を有効にしてみると、んーこれはまだ微妙かも、日付の扱いが。

次にRecently Updated Pagesを有効にしてみる、設定はこんな感じ。
[image]ウィジェットの設定項目

投稿日が表示されるのではなく、最終更新日が表示されるようだから日付は非表示でもいいかなぁ。
[image]表示結果
問題は誤字脱字を見つけて内容以外を修正した投稿も上がってしまう事かな、と。
age/sage機能があればいいのに。

[追記 / 20100610]
Include blog Posts in the list:(投稿もリストアップする)にチェックを入れると、htmlが酷い事になってた。
ナニが原因なのかわからないけどリンクを < /a> で閉じたり、ちゃんと閉じてるとこもあるのに、なんでだろ?
チェックを外せばおかしなhtmlを吐き出さないけど、ページしか拾ってくれないし意味がない。
弱った。

続きを分ける事の良い部分

注)うちの所感です。

  • 1つのエントリーが長くならない(分割してても無駄に長くなってるけど)
  • どこが更新した部分か判りやすい
  • 更新分が最新の投稿になる

関係ない所まで読み込む必要がない。

反対に悪いところは

  • 前後のエントリーを参照しないと判らない事がある
  • 検索でやってきて、古い方の投稿を最初に見た人は何回かリンクをクリックしなきゃならない

関係する部分が点在しちゃうと面倒。

Recently Updated Pagesがあれば
(要点をちゃんとまとめられていたらば)追加の情報は別エントリーに分けずとも同じエントリー内に足していった方が良いのではなかろうか?と思うんだけど
あーでもこれやっぱりモノによるんだろうなぁ。ん~。


色々エラー進行中

なんかここ数日このブログが重くて重くて(ここ数日どころではない?)、ちょこちょこソースを弄ってるけど、よくわかってないままやってるから悪化してる感じ。どうしたらいいのか。。。

IE8(以外のIEは見てないけど)でjQuery lazy load pluginがオブジェクトでサポートされていないプロパティまたはメソッドです。と言われる。

こっちも、オブジェクトでサポートされていないプロパティまたはメソッドです。ですって。

lazyloadの、このjQueryの書き方なんなんだろう?
$(function(){じゃないのかな?コンフリクトをさけて?
jq_img_lazy_load.phpの一番下

あとadd_actionの書式というか引数

Firefoxでも動いてない気がする is not a functionて何だ?
[text]エラー: jQuery("img").lazyload is not a function
ソースファイル: /
行: 110[/text]
続きを読む


css3の:nth-last-child(n)や:nth-last-of-type(n)で均等配置

ひとつ前の記事中に使った画像のサイズを勘違いして作成してしまい、テーマによっては段落ちが発生してた。

並んでたり並んでなかったり。
それがどんな勘違いだったかというとそりゃもう酷い話で、
まず、本文のwidthが480pxの所へ画像を2枚横並びで入れようとした。
その時画像のmarginを10pxとして考えて、横幅235pxでサムネイルを作った(235px*2(画像2枚)+10px(margin)=480px)。

けれども実際は両方の画像に右marginがつく為、本当のところmarginは2倍。
さらに画像には1pxのborderがついてたので1画像につき+2px、合わせて4px。
もう全然無理。

そこでサムネイルを小さく作り直せばいいのに、先日のie-css3.jsを思い出してE:nth-last-child(n)を使って2個目(最後)の画像のmarginを消してしまおう!となんか良い事を閃いた気になる。

そしてE:nth-last-child(n)とE:nth-last-of-type(n)の練習をしてから、いざ乱雑モックアップのcssをよく見てみると画像周りのmarginは10pxじゃなくて1emだった。

6pxしか余裕がないところに1emもmarginがあったら右側のmarginを削除しても段落ちするし、marginを5pxくらいにすると狭すぎるしで、結局今回はサムネイルのサイズを変更するのが一番簡単な修正方法でした。

前置きが長くなったけど、:nth-last-child(n)や:nth-last-of-type(n)の均等配置

乱雑モックアップ|nth-last-childなどで均等配置テスト
html

css

以前書いたこれ -> 横並びにしたリストを(手動だけど)簡単に均等配置ぽく見せるは、marginを左にとる必要があって今回はダメで。
marginを右にとる方法を使うにしても今回は親要素が一個たりないからダメなはず(たぶん)。

こちらもあーだこーだやってます-> E:nth-last-child(n)とE:nth-last-of-type(n)で均等配置

それにしてもこんな使い方よりもっと別な何かで協力に威力を発揮するんじゃないだろうかって思うんだけどその何かが思いつかない。勿体無い。

続きを読む


自tumblrの画像を表示させるやつ / 編集途中メモ

TumbprAPIのxmlを使って、とりあえずtestデザインのページ下部に設置してみた。
type=photoを50件。

WordPressのshadowbox JSを使っている、が
グループ化されてないので連続して表示させられてない。
ちょっとエッチな画像のreblogが多いので恥ずかしい。

次の作業

shadowboxでグループ化
プラグインの管理画面の作り方を調べて作る / 入力するのはidと読み込み件数くらい。

そのうちやる

記事の詳細画面に入った時のnextボタンをアンカーから次の記事へのリンクになるようにしたいなぁ。


wp_list_categoriesでフックしてるんだけど、あれ?

ずっとカテゴリーの投稿数を表示させたかったんだけど、理由があって出来なかった。

どんな理由かというと、
wptheme=grungeのsidebar(メニュー部分)がposition:fixedだったってのと、吐き出されるhtmlがこんな感じで

aのクリック範囲をメニュー部分いっぱいまで広げようとdisplay:blockさせると投稿数が下に追い出されてしまう
そうすると縦に伸びて、ブラウザのheightを飛び出し、選択できなくなる。

続きを読む