WordPress Amazon Link ver.2.0.0 beta4 その3

書誌データのキャッシュをDBに入れるタイミングで壊れているみたいだったので、とりあえずBase64エンコードする

diff AmazonLink/AmazonLink.php public_html/wordpress/wp-content/plugins/AmazonLink/AmazonLink.php

% diff AmazonLink/AmazonLink.php public_html/wordpress/wp-content/plugins/AmazonLink/AmazonLink.php
389c389
< $item_info[$asin] = unserialize($result[‘item_info’]);

> $item_info[$asin] = unserialize(base64_decode($result[‘item_info’]));
432c432
< $ary[‘[SALES_RANK]’] = number_format($item->SalesRank);

> $ary[‘[SALES_RANK]’] = number_format(doubleval($item->SalesRank));
509c509
< $sql = sprintf($sql_insert, $asin, mysql_real_escape_string(serialize($item_info[$asin])));

> $sql = sprintf($sql_insert, $asin, mysql_real_escape_string(base64_encode(serialize($item_info[$asin]))));
512c512
< $sql = sprintf($sql_update, mysql_real_escape_string(serialize($item_info[$asin])), $asin);

> $sql = sprintf($sql_update, mysql_real_escape_string(base64_encode(serialize($item_info[$asin]))), $asin);

number_format()のためにdoubleval()する修正もしたんだった。

WordPress Amazon Link ver.2.0.0 beta4 その2

Amazon APIを使った機能が動いてなかったのを修正

環境

  • FreeBSD-8.2R
  • PHP-5.3.8

問題点

  • php5のPortsのみではhash_hmac関数がないので、Amazon APIへの問い合わせにSignatureがつけられない
  • 5.3でdeprecatedになった関数でのエラーを処理できずにループする

修正点

  • php5-hashを導入
  • php.iniで「error_reporting = E_ALL & ~E_DEPRECATED」

WordPress 初期セットアップ

WordPressをセットアップしてみた。

やった事

  • WordPress日本語版から落としたtgzをDocumentRootに展開
  • ftpdを有効化(inetd.confでftpdをコメントアウト。rc.confでinetd_enable=yes)
  • wordpressディレクトリ以下でg+wおよびディレクトリにg+sして、wwwをユーザグループに追加。