22. 2月 2012 · 2 comments · Categories: WEB制作 · Tags: ,

jQueryの1.4以上から遅延処理を行なうdelayが登場していることを知って、遅延処理ならさくっと終わるじゃーんと思って入れたものの動かなかったでござる。

理由は、delayはアニメーションにしか効かないから。もともとのキュー(queue)がアニメーションするものにしか有効でないためだろう。だから、「何秒後にこのクラスを変える」というのがdelayではできなかった。

ということで、animateを使うことに。

opacityを1.0、つまり見た目は変更せずに1秒経ったあとでcompleteの関数を実行。
hoverはマウスオーバーとマウスアウトが交互にイベント実行されるので、toggleにしておけばひとつの関数で済む。

実装したのは結局もうひとつfunction作って、

$(this).clearQueue().stop().removeClass(‘hover_submn’);

としたけど。clearQueueとstopはどちらかで良いかも。

21. 2月 2012 · Write a comment · Categories: WEB制作 · Tags:

Contact Form 7 で、Toに入力者のメールアドレスを入れていて、2番目のメール送信ロジックには管理者を入れておきます。

この環境でメールを「任意入力」(=必須項目ではない)にすると、エラーが表示されて、
一見すると送れていないように見えます。
けれど、データベースには入っているし、管理者には送れているので問題はないですが、
エラーが出た本人は「あれー?」と思って何度も送信ボタンを押す・・・

まあ、考えたら当然のことなんですが。

これを回避するには、/contact-form-7/includes/classes.php にちょっと細工してあげればOK。

365行目あたりに、下記を追加します。要するに、宛先がなかったらそのままtrueを返すだけ。

if($recipient==”) return true;

wp_mailの返り値がTrue or Falseなので、問答無用でtrueを返してやる、と。細工したのを忘れて宛先変更して「エラー出てないのに届いてない!」ってことのないようにしないと。

探せばすでにあるテクニックなんだろうけど。.htaccessで対応します。
順番が変わるとエラーを起こすので、そこだけ注意。
画像だけでなく、jsやcssでも使えますねー

<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /wordpress/
RewriteRule ^images/(.*).(jpg|gif)$ /wordpress/wp-content/themes/(テーマ用フォルダ)/images/$1.$2 [NC,L]

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /wordpress/index.php [L]
</IfModule>

画像変換用のRewriteRuleを先に持ってこないと動きません。

RewriteRuleの置換先に-(ハイフン)を使えることを知ったのだけど、これは「置換しない」=「元のURLを使用する」って意味なのね。
これの理解の方がメンドウだった。ソースは下記サイトを参考にさせていただきました。

mod_rewriteの考え方。 – こせきの技術日記

Linux/Windows – mod_rewriteのオプション

.htaccess – Rewrite

↑これ見たら、むしろ「初期値」=「-(ハイフン)」なのね。だから説明されているページが少ないのかな。?

09. 2月 2012 · Write a comment · Categories: WEB制作 · Tags: ,

追記:エクスポート機能がどうしても使えないので、MYSQL管理ソフトで接続して使うことにしました。

——-

何か前にもエントリしたような・・・。その時は動いたんだけど、下記のエラーが出たので調べてみた。

Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.

調べてみたら、session.save_pathを確認すると良いらしい。
WP-PortableでインストールしているPHPの設定ファイル(php.ini)を見たら、

session.save_path = “.temp”

とあったので、tempフォルダのアクセス権の問題だというところまでは行ったものの、FTPもSSHもlocalhostにつながらない(設定すればつながるのかもしれないけど)ので、フォルダのプロパティ見たら読み取り専用になっている。

ダメ元でチェックはずしたら、無事表示されました。
さて、あとはDBのdumpができるかどうかだなあ・・・