なんかゴタゴタしていたようだけど,もう収拾付いたかな. WordPress Japan DB » ME2.0.10 / 2.1.3 リリース というわけでアップデート.
2007年4月8日日曜日
2007年3月12日月曜日
Outbound Port 25 Blocking と Message Submission Port 対策
キューを消しちゃったのでいつ頃から発症していたのか判らんのだが, WordPress からのメール送信ができなくなっていたもよう. /var/log/mail.log
に connect to メール・サーバ[xxx.xxx.xxx.xxx]: Operation timed out (port 25)
が残ってたら,おそらくコレが原因. Postfix の設定を修正するだけで直る (と思う).
/etc/postfix/master.cf
を修正し,メール送信に Submission Port 587 を使う.submission inet n - n - - smtpd -o smtpd_etrn_restrictions=reject
- メル鯖は立ててないのでプロバイダの鯖を使っている.ここは Submission Port を使うときは要 SMTP AUTH 認証なので,
/etc/postfix/main.cf
に以下を追加し,送信時に smtp_sasl_auth を行う.これで送信可能になる....relayhost = プロバイダの smtp 鯖...smtp_sasl_auth_enable = yessmtp_sasl_password_maps = hash:パスワード・マップ・ファイルのフル・パス
smtp_sasl_security_options = noanonymousパスワード・マップ・ファイルの中身は「メール・サーバ ユーザID:パスワード」となる.ハッシュ・ファイルは
/usr/sbin/postmap
で作成.
これ以降はやらなくても動くかも知れんが.
- Contact Form ][ を 2.1 ready な v2.0.13 へアップデート. (Plugins/Plugin Compatibility/2.1 « WordPress Codex)
wp-contact-form/wp-contactform.php
では相変わらずmail()
を使っているのでwp_mail()
に差し替え.二箇所.- 日本語文字化けを回避するために Nippon で定義されている
wp_mail()
を使いたいので,wp-includes/pluggable.php
で定義してあるwp_mail
をコメント・アウト.
順序としては WordPress 関連〜 Postfix 関連でやったが,とりあえずコレで送信可能になった. /var/log/mail.log
に to=<送信先アドレス>, relay=パスワード・マップ・ファイルで指定したメール・サーバ[その ip アドレス], delay=0, status=sent (xxx.xxx.xxx.xxx [0-9A-z]* Message accepted for delivery)
とあれば,配信準備完了.
2007年3月8日木曜日
New tags, deprecated tags
ソフトウェアというのは生き物のようなものであって,永遠に完成しない.
- 利用者の要求仕様は永遠に確定しない.
- 開発者の設計仕様も永遠に確定しない.
- ソフトウェアは完成することがない.
[ 青木淳 "オブジェクト指向システム分析設計入門", SRC, 1993, 1994, ISBN4-915778-19-3, p.75., より ]
のであるからして,代謝という面からしても古いのが使われなくなって (使わないよう強制されて),新しいものに置き換わるのは自然の摂理に則っている.のではあるけれども,それでも面倒くさいものは面倒なのである (笑).
WordPress 2.1 系の登場による代謝の状況はこんな感じ.下線を引いたものは思いクソ該当しているもの.出典は Template Tags « WordPress Codex.初体験が 2.0.6 と比較的新しいバージョンなんで,この程度で済んでいるんだろう[初体験は 2.0.6 でも現行最新バージョンはもう 2.1.2 だ.].
Author tags
- -> the_author_link (version 2.1),なんすか,これ?[the_author_link,ソース (
wp-includes/author-template.php
) を見てみたら,function the_author_link() { if (get_the_author_url()) { echo '<a href="' . get_the_author_url() . '" title="' . sprintf(__("Visit %s's website"), get_the_author()) . '" rel="external">' . get_the_author() . '</a>'; } else { the_author(); }}
となっているんで,ああ,なるほど,一種のシュガー・タグなのねという感じだが,判らないのが else ブロックで実行されるthe_author();
で,何で deprecated なのを呼ぶの? と思ったが,タグが deprecated なんじゃなくて,引数が deprecated なんですね.失礼しました.他のも見てみたら, deprecated されたタグはwp-includes/deprecated.php
に移されるんですな.なるほど.]
- -> the_author_link (version 2.1),なんすか,これ?[the_author_link,ソース (
Category tags
- dropdown_cats (Deprecated in 2.1)
- -> wp_dropdown_categories (Version 2.1)
- list_cats (Deprecated in 2.1), wp_list_cats (Deprecated in 2.1)
- -> wp_list_categories (Version 2.1)
General tags
- get_archives (Deprecated in 2.1)
- -> wp_get_archives
Link tags
- link_pages (Deprecated in 2.1)
- -> wp_link_pages
Links Manager tags
- wp_get_linksbyname (Deprecated in 2.1), get_linksbyname (Deprecated in 2.1)
- -> ?
- ?
- wp_list_bookmarks (Version 2.1)
Post tags (以下の二つにはバージョンは指定されてない)
- previous_post (Deprecated)
- -> previous_post_link
- next_post (Deprecated)
- -> next_post_link
ま,『スタイルブック』でも「非推奨だから使うな」と明記してあったし.
ざっと見,引数様態がコンマ区切りと & 接続の二種類あって,動きが同じモノは後者にまとめられた,というのが目立つ.ま,実質的に修正は二箇所で済みましたが.
2007年3月4日日曜日
WordPress ME 2.1.2
ダッシュボードにでかでかと「[重要] 2.1.1 の危険性について 」とあるのでビビる (笑).
対象は「ここ3、4日の間に本家から 2.1.1 パッケージをダウンロードして適用した方
」っつ〜ことなんで ME の方にはあまり関係ないのかも知れんけど,せっかくアップデータが出てるのでアプライ.
2007年3月3日土曜日
コメントが付くとタグが消えるやん! & WP-AddQuicktag 0.4
Plugins/Plugin Compatibility/2.1 « WordPress Codex を見てみると UTW 3.1415926 - Tags are wiped when a comment is approved.
とある.げ,と思って見てみると,確かに一個飛んでる.というわけで,それに対応した 3.14159265 にアップデート
- Neato » Blog Archive » Ultimate Tag Warrior 3.14159265
- My Neato Thing - AND post_status = 'publish' missing in 3.14159265
フォーマット文字列を改造してるのと CA-Title 用にパッチを当てているので, ultimate-tag-warrior-core.php と ultimate-tag-warrior.php をしこしこ書き換え.ただし, UTW_ShowCurrentTagSet() ではもはや $display 変数は使われていないので,単純にリターンする.
function UTW_ShowCurrentTagSet($formattype, $format="", $limit = 0) { global $utw; if (function_exists('ca_title')) { $format = $utw->GetFormat($formattype, $format); return $utw->FormatTags($utw->GetCurrentTagSet(), $format, $limit); } else { $format = $utw->GetFormat($formattype, $format); echo $utw->FormatTags($utw->GetCurrentTagSet(), $format, $limit); }}
その他,未公開投稿もタグ・アーカイヴに表示されてしまうとのことで,上記二番めに則って修正を加える.自分でコメント付けてトラックバックも送ってみたが,タグはちゃんと残っちょった (笑).
やっぱタグは MovableType 同様,システム標準で持っとくべきだよ.
上記,プラグインのコンパチ状況ページを見てると AddQuicktag も 0.4 英語版が出てるやん.
こっちにしてみた.
Snap Preview Anywhere™ plugin
最初は物珍しさもあって面白がって付けていた Snap Preview Anywhere Plugin だが,なんだかウザったくなってきた.パタパタうるさいから切ろうか思ったが,ちょっと探してみると Snap と,いろいろカスタマイズできる.プラグインも 1.2 にアップデートすると管理画面から弄れるようなので,ちょっと変えてみた. 1) アイコンも表示させて,そこにマウス・オーバーしたときだけポップアップするように. 2) html 要素のチェックはなし.それでもウザったければ撤去だ (笑).
WordPress 最初のプラグイン
初めて書いたプラグインは,ページ左上のメモ・フィールドを更新するという,およそ詰まらないものになった (笑). infoseek 用に書いた perl スクリプトから必要部分を抜き出して exec しようとしたが一向に動く気配がないので (泣),けっきょくイチから php で書き直すハメになった.とほほほ.
以前は一括アップロード時に生成したが, web アプリだといつ更新すべきか判らん. launchd で一日一回定期的に動かすほどのもんでもないわな.けっきょく投稿の公開時にフックを掛けることにした.冗長だけど.
2007年3月2日金曜日
WordPress ME 2.1.1
WordPress Japan DB » ME 2.1.1 リリース.←を受けて,思い切ってアップデート.とりあえず様子見.
プラグイン
2.1 系用にアップデート掛けたプラグインは以下のとおり.
- Maintenance Mode, 2.2. (初め,プラグインを有効にしたまま deactivate Maintenance Mode できることを知らんで焦ったのはヒ・ミ・ツ)
- WP-PageNavi, 2.10.
- WP-DBManager, 2.10.
- WordPress Database Backup, 2.0.1.
- Search Everything, 3.0.
- runPHP, 2.2.2.
- Category Manager 1.1.
- Mobile Eye+, 1.1.8. ソース弄らんでも Air-H" Phone で見られるようになっとった.
- IImage Browser, 1.5.1
- AddQuicktags (de), 0.4. ドイツ語版.英語版だと表示すらされん.
UTW3
UTW3 に関する wp-includes/classes.php
の修正は (たぶん) wp-includes/query.php
に移ったと思われるので,以下を追加修正.
256 行めからの class WP_Query の宣言に追加.
//addition for tag var $is_tag = false;
その直後の init_query_flags() で初期化.
function init_query_flags() ... // addition for tag $this->is_tag = false;
function parse_query() で判定.
function parse_query ($query) ... if ( $this->is_single || $this->is_page || $this->is_attachment ) $this->is_singular = true; // addition for tag global $utw; if (function_exists('GetCurrentTagSet')) { if (count($utw->GetCurrentTagSet()) > 0) { $this->is_tag = true; } } if ( ! ($this->is_singular || $this->is_archive || $this->is_search || $this->is_feed || $this->is_trackback || $this->is_404 || $this->is_admin || $this->is_comments_popup || $this->is_tag)) { $this->is_home = true; }
これで合ってるんかな〜.
2.1 で記事を更新するとタグが消える〜 とか, 全然表示されねぇよ〜 とかの不具合はとりあえずなさそうな感じ.
mi 用 PHP モード
2007年2月24日土曜日
WordPress ME 2.0.9
WordPress Japan DB » ME 2.0.9 リリース,を受けてアップデート.本家 2.1 系も週末に出るらしいが,こちらはプラグインにも影響が出るんで,あれこれいじらなくちゃいけない. DBMS は MySQL 5.0.27 を入れてるんで,4.0 以上という条件はクリアしてるんだが.