WordPress ハックは Yuriko.Net メインサイトで

2007年2月14日より、WordPress ハック関連は Yuriko.Net メインサイトの「WordPress ハックカテゴリー」にて執筆しています。検索エンジン等でこのカテゴリーを見つけられた場合は、ぜひとも Yuriko.Net メインサイトもご覧ください。

その後もこのカテゴリーを使っていますが、それは、このサイト自身に対するハックや、自作プラグインの動作テストとなっています。

あと、言うまでもないことですが、「ハック」は悪い行為の意味ではなく、高度なプログラミングをする、の意味です。

2008-11-28
雨のち晴れ

WordBench 川崎の宴会〜

yuriko(a) による 19:46:25 の投稿
カテゴリー: WordPressハック, 食べ物
タグ:
081128_1857~0001 081128_18560001.jpg

本日はWordPress川崎の宴会です。

[GPS情報URL]
HTTP://walk.eznavi.jp/map/?datum=0&unit=0&lat=%2b35.34.39.84&lon=%2b139.39.28.54&fm=1
2008-09-23
晴れ

いよいよ開場

yuriko(d) による 12:32:37 の投稿
カテゴリー: WordPressハック, 首都圏日帰り
タグ:
200809231224000 200809231222000

いよいよ開場です。ぼちぼちとお客さんが来られています。

スタバで準備ちう

yuriko(d) による 09:25:24 の投稿
カテゴリー: WordPressハック, 首都圏日帰り
タグ: ,
200809230901000

文化村近くのスターバックスで準備というか世間話しています。下っぱメンバーばかりしか来てないよ〜〜。

2008-04-01
くもり

エイプリルフールは携帯電話で開催

yuriko による 00:05:07 の投稿
カテゴリー: WordPressハック
タグ: , ,

当サイトのエイプリルフールは携帯電話のみの開催となっております。あしからずご了承ください。

[追記] PC でも同じ動作が可能なので、実施してみました ;-)

[追記 2008-04-03] エイプリルフール企画は、お楽しみ頂けましたでしょうか。どんな URL にアクセスしても「ランダムに記事が表示される」というもので、かなりびっくりされたかと思います。しかも、その動作を実現するプラグインも公開していました ;-)

2008-03-19

WAVY DASH 使ってみた

yuriko による 02:42:23 の投稿
カテゴリー: WordPressハック, サイト更新情報
タグ: ,

リアルタイムレポート時に波ダッシュ「〜」をよく使っていますが、波ダッシュを2つ続けたら「〰」() に変換されるようにしてみました。携帯電話で見たときも実は対応していて、iモード, WILLCOM, EMOBILE には を示す絵文字 (165番) に変換されます。EZweb, SoftBank は対応する絵文字がないので、波ダッシュ2つのまま「〜〜」になります。

この対応は拙作のプラグイン「Force Wave Dash」で行なっていますが、テストが良好ならば、一般公開してみる予定です。

余談ですが、Windows Mobile スマートフォンでは「〜」(WAVE DASH) が文字化けしてしまい、Force Wave Dash を使うと表示がイマイチになってしまいます。Windows Mobile のときだけ「~」(FULLWIDTH TILDE) に変換させる機能 (Force Fullwidth Tilde 機能) を入れた方がいいのかも。

2008-03-09

携帯電話でも地図表示可能

yuriko による 20:34:26 の投稿
カテゴリー: WordPressハック, サイト更新情報
タグ: ,

Google Static Maps API を利用して、携帯電話でも地図が出るようにしました。まだコードが汚なくてめちゃくちゃなので公開はできませんが、ヒマを見つけて Lightweight Google Maps のバージョンアップをしたいと思います。

2007-09-25

WordPress のスマイリー一覧

yuriko による 22:50:22 の投稿
カテゴリー: WordPressハック

携帯電話閲覧プラグインのテスト用に、WordPress 内蔵のスマイリー一覧を並べておきます。当然テスト用サイトは別に作ってありますが、Basic 認証をかけてあるために、Basic 認証非対応の Vodafone 改め SoftBank 端末からは確認できないのです;-)

:smile:→ :smile: icon_smile.gif
:grin:→ :grin: icon_biggrin.gif
:sad:→ :sad: icon_sad.gif
:eek:→ :eek: icon_surprised.gif
:shock:→ :shock: icon_eek.gif
:???:→ :???: icon_confused.gif
:cool:→ :cool: icon_cool.gif
:mad:→ :mad: icon_mad.gif
:razz:→ :razz: icon_razz.gif
:neutral:→ :neutral: icon_neutral.gif
:wink:→ :wink: icon_wink.gif
:lol:→ :lol: icon_lol.gif
:oops:→ :oops: icon_redface.gif
:cry:→ :cry: icon_cry.gif
:evil:→ :evil: icon_evil.gif
:twisted:→ :twisted: icon_twisted.gif
:roll:→ :roll: icon_rolleyes.gif
:!:→ :!: icon_exclaim.gif
:?:→ :?: icon_question.gif
:idea:→ :idea: icon_idea.gif
:arrow:→ :arrow: icon_arrow.gif
:mrgreen:→ :mrgreen: icon_mrgreen.gif
2007-06-23
晴れ

十六夜

yuriko(a) による 22:21:46 の投稿
カテゴリー: WordPressハック
070623_2215~0001.jpg

特別にWordpressハックカテゴリーにします。元町駅近くに「十六夜」という居酒屋がありました。いやはや。

[GPS情報URL]
HTTP://walk.eznavi.jp/map/?datum=0&unit=0&lat=%2b34.41.31.05&lon=%2b135.11.14.41&fm=0
2007-05-16
晴れ

カスタム 404 ページの脆弱性

yuriko による 11:37:03 の投稿
カテゴリー: WordPressハック

CVE-2007-2627 の対策として、カスタム 404 ページのテンプレートから get_sidebar() 関数を除去しました。そのままではレイアウトが崩れてしまったので、適宜 <div id="sidebar"> </div> などの記述を足しています。(追記: この修正は意味がないので記述削除)

脆弱性の概要は以下の通りです。WordPress 2.2 では修正されるのかな??(WP2.1 の時点で OK でした)

Overview

Cross-site scripting (XSS) vulnerability in sidebar.php in WordPress, when custom 404 pages that call get_sidebar are used, allows remote attackers to inject arbitrary web script or HTML via the query string (PHP_SELF), a different vulnerability than CVE-2007-1622.

[追記 20:45] 本日、WordPress 2.2 本家版がリリースされましたが、どうも直ってなさそうです。template-loader.php, theme.php を見ても 404.php を読み込む処理に手が入ってるように見えませんから。

[追記 21:40] これは WordPress コアの脆弱性じゃなくて、テーマの作り方によって脆弱性が起きるという話でした (なのでタイトルと記述を大幅修正)。詳細によると、WordPress の sidebar.php にある検索フォームが <form method="get" id="searchform" action="<?php echo $_SERVER['PHP_SELF']; ?>”> となっているからヤバイ、というものです。でも、WordPress 2.1 に同梱されているテーマは、もはやそんな記述になっていません。classic, default ともに <form id="searchform" method="get" action="<?php bloginfo('home'); ?>"> となっていて安全です (WordPress 2.2 の default テーマは action="<?php bloginfo('url');?>" に修正されています)。しかし、ME 版附属の EasyAll はモロ $_SERVER['PHP_SELF']; を使っていて危険です!! WordPress 2.2 ME 版ではぜひ直してもらわないと……。

なお、当サイトのテーマは PHP_SELF を使っていないので、最初に投稿した修正は不要でした。

2007-04-13
晴れ

WordPress インストール先をウェブログ URL から分離

yuriko による 00:18:09 の投稿
カテゴリー: WordPressハック

このたび、WordPress のインストール先アドレスをウェブログ URL から分離しました。具体的に書くと、ウェブログ URL (http://www.yuriko.net/travel/) はそのままにして、WordPress のインストール先アドレスを別のものにしたのです。

通常は、インストールが簡単になるため両者を同じにしますが、先月から運用しているサイトは両者を別にしているためか、スパムがまるで来ません。この場合、wp-comments-post.php を直に叩くスパム投稿ができないからでしょう。

ということで、当サイトでも分離してみることにしました。分離先はベタですが /wordpress/ とします。ウェブログの URL は変えてはいけませんからそのままです。いわば、WordPress を /wordpress/ にインストールしつつ、ウェブログの URL は /travel/ としたのと同じことになります。

  1. まず、WordPress のインストール先を変更します。シェルまたは FTP クライアントで、/home/ほげほげ/public_html/travel/ ディレクトリーを /home/ほげほげ/public_html/wordpress/ に名称変更します。
  2. 次に、phpMyAdmin 等で、wp_options テーブルの siteurl は http://www.yuriko.net/travel から末尾だけ /wordpress に変更します (上記の変更でもはや WordPress にログインできないので管理画面での変更は無理)。
  3. さらに、.htaccess の RewriteRule . /travel/index.php [L] の travel を wordpress にします ( .htaccess は /home/ほげほげ/public_html/ にまとめてるので、これでOK)
  4. 最後に、アップロードした写真の URL を修正するために、データーベースをダンプして、テキストエディター で /travel/wp-content/ という文字列を /wordpress/wp-content/ に置換し、その内容をデーターベースに戻しました。

実際の作業は少し違いますが、だいたいこんな流れでできました。最後のデーターベース変更を省略して .htaccess に以下のような行を追加する手もありますが、Apache に負荷がかかるために避けました。

RewriteRule ^/travel/wp-content/(.*) /wordpress/wp-content/$1 [L]

他のサイトだと、http://example.jp/ がウェブログ URL とすれば、WordPress インストール先を http://example.jp/wordpress/ にする手が有効でしょう。この場合は、wordpress/ ディレクトリー内の .htaccess と index.php だけをルートレベルに移動させて、中身を require('wordpress/wp-blog-header.php'); を修正しないといけません。

[追記 2007-04-13 15:45] せっかくの改造も効果なく、スパムが多数着信します。当サイトに来るのはトラックバックスパムが多数のようです。これは Yuriko.Net メインサイトのように、トラックバック用 URI をランダム文字列にする改造が必要なようです。プラグインを開発するしか!!