練炭ブログ

萌え壁紙、Irvine、DMonkey、Proxomitron などの情報を扱ってます。

WordPress 3.2.1

コメントなし»

WordPress 3.2.1 に更新してみました。あとテーマも新しいバージョンが結構前に出ていたので合わせて更新しました。

プラグインは WP Multibyte Patch を別途自動インストールしただけで、特に問題なし。

ダッシュボード左上のサイト名が小さくなってちょっと不便。

左メニューを閉じた状態でマウスを重ねるとメニューが出るが、うねうねアニメーションして鬱陶しい。

左メニューを閉じた状態で「コメント」「メニューを開く」のボタンが何もポップアップしないので何のボタンか分からない。

左メニューを閉じた状態プラグインのメニューを出すと「インストール済みプラグイン」が改行されてて気持ち悪い。

WordPress 3.2.1 日本語版

コメントなし»

WordPress 3.2.1 の英語版が出てるのに、日本語版はなかなか出ないなあと思っていたら、プラグインのアップデートや日本語リソースなどがややこしいことになっているみたいです。

3.2.1 - WordPress 日本語版作成チーム | Google グループ

そうこうしているうちに日本語版も公開されましたが。

WordPress | 日本語 » WordPress 3.2.1 日本語版

貯めてるネタ全部吐き出してから、じっくりと作業します。

query.php on line 2390 のエラー

コメントなし»

このブログの管理画面のメディアライブラリを開いたら、ページ先頭に

Warning: explode() expects parameter 2 to be string, array given in /中略/wp-includes/query.php on line 2390

Warning: in_array() expects parameter 2 to be array, null given in /中略/wp-includes/query.php on line 2399

(以下、~ line 2399 が7行繰り返し)

というエラーがずらーっと表示されてしまいました。

WordPress 3.1.3 の修正されない不具合だそうです。別サーバの WordPress では問題なかったので、使用状況により発生しない場合があるのかな。

Hotfix というプラグインをインストールしたところ、エラーが出なくなりました。

参考:

WordPress 3.1 用パッチ

コメントなし»

wp-admin/css/wp-admin.css
wp-admin/includes/meta-boxes.php
wp-includes/comment.php
wp-includes/cron.php
wp-includes/formatting.php

────
-- が化けないようにしてみた

そのまま適用。

wp-includes フォルダにある formatting.php から、以下の部分を探します(wptexturize 関数の中にあります)。

$curl = str_replace($static_characters, $static_replacements, $curl);

これをコメントアウトするか削除します。

────
X680x0 が X680×0 に差し替えられてしまうのを修正

正規表現が /(\d+)x(\d+)/ から /\b(\d+)x(\d+)\b/ に変わって、X680x0 にはマッチしなくなりましたが、680x0 ではマッチするし、それ以外にもいつ影響をうけるか分からないので適用。

wp-includes フォルダにある formatting.php から、以下の部分を探します(wptexturize 関数の中にあります)。

$dynamic_characters = array('/\'(\d\d(?:&#8217;|\')?s)/', '/\'(\d+)/', '/(\s|\A|[([{<]|")\'/', '/(\d+)"/', '/(\d+)\'/', '/(\S)\'([^\'\s])/', '/(\s|\A|[([{<])"(?!\s)/', '/"(\s|\S|\Z)/', '/\'([\s.]|\Z)/', '/\b(\d+)x(\d+)\b/');
$dynamic_replacements = array('&#8217;$1','&#8217;$1', '$1&#8216;', '$1&#8243;', '$1&#8242;', '$1&#8217;$2', '$1' . $opening_quote . '$2', $closing_quote . '$1', '&#8217;$1', '$1&#215;$2');

上の行の , '/\b(\d+)x(\d+)\b/' と、下の行の , '$1&#215;$2' をそれぞれ削除します。

────
WordPress のトラックバック機能を調整

そのまま適用。

wp-includes フォルダにある comment.php から、以下の部分を探します(trackback 関数の中にあります)。

$options['timeout'] = 4;

430 に変更します。

────
トラックバックの問題については cron.php にも同様の問題があるようなので、そちらも修正。
参考:WordPress 2.9 でトラックバックできた - masatsu file

wp-includes フォルダにある cron.php から、以下の部分を探します(spawn_cron 関数の中にあります)。

'timeout' => 0.01

0.0130 に変更します。

※WordPress 3.1 においてこの改変に意味があるかどうかと、この値が効果のあるものかどうかは不明です。実験的にパッチをあてています。

────
WordPress 覚書 記事の編集画面で「カテゴリー」にスクロールバーを出さない

カテゴリを増やした時に数値を調整するのが面倒だったので、height の値を大きくするのではなく、min-height に変更するようにしました。

wp-admin/css フォルダにある wp-admin.css から、以下の部分を探します。

#linkcategorydiv div.tabs-panel{height:200px;

height:min-height: に変更します。

同じコードがもう一つあるので、そちらも同様に変更します。

────
WordPress 覚書 記事の編集画面の「カテゴリー」でチェック状態で並び替えない

wp-admin/includes フォルダにある meta-boxes.php から、以下の部分を探します(post_categories_meta_box 関数の中にあります)。

<?php wp_terms_checklist($post->ID, array( 'taxonomy' => $taxonomy, 'popular_cats' => $popular_ids ) ) ?>

$popular_ids の直後に , 'checked_ontop' => false を追加します。

WordPress 3.1 にアップデート

コメントなし»

いいかげん Sleipnir では不便なことも多くなってきたので、最新のブラウザへ乗り換えを検討しています。
Mozilla Firefox は若干重いので、まずは Google Chrome を試してみようかと。
サイドバーやマウスジェスチャのある Chrome Plus にしたいところですが、ベースの Chrome のバージョンが古かったので不採用です。

あるいは、Chrome は拡張機能を入れずにシンプルなブラウザとしてインストールしておき、メインブラウザはカスタマイズした Firefox、という使い分けにするかも。

例によって WordPress にパッチをあてましたが、IE ベースの古い Sleipnir から Google Chrome に変えたことにより今まで期待通りに動作していなかった部分がそのままでも動くようになったので、パッチの数が減りました。

トラックバックスパムに対処するため、Akismet プラグインを使うことにしました。
WordPress.com でユーザーアカウントのみ取得し、メールで送られてきた WordPress.com API key を、Akismet プラグインの設定ページで入力して有効化。

ちなみに API key が分からなくなった場合は、Personal Settings ページに載っているはずですが、見当たらない場合は WordPress.com API Key にアクセスすれば表示されます。

代わりに WP-reCAPTCHA は停止して、様子見です。

WordPress 3.0.5

コメントなし»

アップデートしました。

しばらく前からコメントスパム対策を WP-reCAPTCHA プラグインにしていましたが、最近はしばしば貫通されるようになってきました。
よく見たら自分の勘違いで、トラックバックスパムでした。

WordPress 3.0.4

コメントなし»

WordPress 3.0.4 が出たのでアップデートしました。
毎回 Akismet と Hello Dolly プラグインがインストールされて削除するのが面倒ですね。
Akismet の方は使ってる人多いでしょうからまあいいですが。

以下自分用メモ。
パッチをあてて FTP でアップロードするファイル。

wp-admin/css/wp-admin.css
wp-admin/includes/meta-boxes.php
wp-admin/js/post.js
wp-include/js/quicktags.js
wp-includes/comment.php
wp-includes/formatting.php

投稿タグの入力欄をクリックしてもアクティブにならない不具合を修正

コメントなし»

記事の編集画面にある投稿タグの入力欄は、アクティブでなく中身が空の時は「新規タグを追加」と薄い字で表示されています。
この状態の時にクリックすると、薄い字は消えますがアクティブにならずカーソルが点滅しません。
再度クリックすると、ようやくアクティブになってカーソルが点滅します。

wp-admin/js/post.js に書いてある処理と編集ページの HTML の構造とが食い違っているのが原因だと思います。
ただ、他でこの件の話題は見たことがないので、ちゃんと動作しないのはうちのブログだけなのかも知れません。

とにかくこのままでは使いものにならないので、修正してみました。

wp-admin/js フォルダにある post.js から、以下の部分を探します。

a(this).css("visibility","hidden").parent().siblings(".newtag").focus()

.siblings.find に変更します。

WordPress 3.0.3 用パッチ

コメントなし»

WordPress を 3.0.3 にアップデートしたので、パッチも適用しました。
3.0.2 と 3.0.3 はセキュリティアップデートとのことで、特に変更ありません。

────
-- が化けないようにしてみた

そのまま適用。

wp-includes フォルダにある formatting.php から、以下の部分を探します(wptexturize 関数の中にあります)。

$curl = str_replace($static_characters, $static_replacements, $curl);

これをコメントアウトするか削除します。

────
X680x0 が X680×0 に差し替えられてしまうのを修正

正規表現が /(\d+)x(\d+)/ から /\b(\d+)x(\d+)\b/ に変わって、X680x0 にはマッチしなくなりましたが、680x0 ではマッチするし、それ以外にもいつ影響をうけるか分からないので適用。

wp-includes フォルダにある formatting.php から、以下の部分を探します(wptexturize 関数の中にあります)。

$dynamic_characters = array('/\'(\d\d(?:&#8217;|\')?s)/', '/\'(\d+)/', '/(\s|\A|[([{<]|")\'/', '/(\d+)"/', '/(\d+)\'/', '/(\S)\'([^\'\s])/', '/(\s|\A|[([{<])"(?!\s)/', '/"(\s|\S|\Z)/', '/\'([\s.]|\Z)/', '/\b(\d+)x(\d+)\b/');
$dynamic_replacements = array('&#8217;$1','&#8217;$1', '$1&#8216;', '$1&#8243;', '$1&#8242;', '$1&#8217;$2', '$1' . $opening_quote . '$2', $closing_quote . '$1', '&#8217;$1', '$1&#215;$2');

上の行の , '/\b(\d+)x(\d+)\b/' と、下の行の , '$1&#215;$2' をそれぞれ削除します。

────
WordPress のトラックバック機能を調整

そのまま適用。

wp-includes フォルダにある comment.php から、以下の部分を探します(trackback 関数の中にあります)。

$options['timeout'] = 4;

430 に変更します。

────

WordPress 記事編集画面の投稿のタグ機能を修正

そのまま適用。

wp-admin/js フォルダにある post.js から、以下の部分を探します(一か所だけの筈です)。

.keyup

これを .keypress に変更します。

その少し後ろに以下のコードがあるので削除します。

.keypress(function(d){if(13==d.which){d.preventDefault();return false}})

────
投稿タグの入力欄をクリックしてもアクティブにならない不具合を修正

post.js のパッチを追加しました。

────
WordPress 記事編集画面のクイックタグを改造

そのまま適用。

wp-include/js フォルダにある quicktags.js から、以下の部分を探して削除します。

edButtons[edButtons.length]=new edButton("ed_more","more","<!--more-->","","t",-1);

同じく、以下の部分を探して削除します。

document.write('<input type="button" id="ed_spell" class="ed_button" onclick="edSpell(edCanvas);" title="'+quicktagsL10n.dictionaryLookup+'" value="'+quicktagsL10n.lookup+'" />');

次に、以下の部分を探します。

onclick="edInsertTag(edCanvas, '+a+');"

この直後に ondblclick="edInsertTag(edCanvas, '+a+');" を追加します。

────
WordPress 覚書 記事の編集画面で「カテゴリー」にスクロールバーを出さない

カテゴリを増やした時に数値を調整するのが面倒だったので、height の値を大きくするのではなく、min-height に変更するようにしました。

wp-admin/css フォルダにある wp-admin.css から、以下の部分を探します。

#linkcategorydiv div.tabs-panel{height:200px;

height:min-height: に変更します。

────
WordPress 覚書 記事の編集画面の「カテゴリー」でチェック状態で並び替えない

wp-admin/includes フォルダにある meta-boxes.php から、以下の部分を探します(post_categories_meta_box 関数の中にあります)。

<?php wp_terms_checklist($post->ID, array( 'taxonomy' => $taxonomy, 'popular_cats' => $popular_ids ) ) ?>

$popular_ids の直後に , 'checked_ontop' => false を追加します。

WordPress メモ

コメントなし»

SI CAPTCHA Anti-Spam でスパムが防げなくなってきたので、WP-reCAPTCHA に変更しました。
単一記事開くと必ず reCAPTCHA が表示されるのはちょっと邪魔に感じるかも。

reCAPTCHA を使うには専用のキーコードが必要ということで取得しに行ったら Google のドメインに飛びました。
Google に買収されてたんですね。

WordPress 3.0.3 がリリースされているので後でアップデートします。