農場主の日常

なんちゃってエンジニアの日常をつらづらと

«Prev || 1 | 2 | 3 | 4 |...| 17 | 18 | 19 || Next»

PHP5のsubstrの挙動の違い

 Nucleusのとあるプラグインで、PHP4の環境では正常に表示されていた部分が表示されていないことがわかった。

 調べてみると、
substr($row['alip'], -25)
 という部分で、$row['alip']変数に入力される文字数が25文字以下の場合に、戻り値が空白になるらしい。
 この部分を、
if(strlen($row['alip']) > 25){
$apid = htmlspecialchars(substr($row['alip'], -25));
} else {
$apid = htmlspecialchars($row['alip']);
}
のように、文字数によって分岐させたところ正常に出力された。




Twitterと連動するプラグイン

 持っているブログの話題ごとにツイッターのアカウントを取ったのはいいのだけれど、今度はブログを更新したときにツイッターに投稿したいなと思い立つ。

 ブログの投稿と同時に、ツイッターに記事を投稿するには、こんなプラグインがあるようだ。

NP_TwitterLt 投稿した記事が自動的にTwitterへポストされるプラグイン

 なるほど。あるカテゴリに記事が投稿されると、その内容とURLをツイッターに投稿するというプラグインのようだ。
 私がやりたいことは、NP_SendPingと同じように、更新時などに更新通知をツイッターに投稿するということなので、若干違う。
 そういうわけで、内部に手を入れることに。

» 続きを読む


NP_Headerを入れてるBlogで編集が遅くなる

 うちのサイト、HTMLの基本的なmetaタグを出すために、NP_Headerをインストールしてます。

Nucleus(JP)フォーラム :: トピックを表示 - NP_Header

 しかし、導入している一部のサイトで、編集画面を出したりするのが遅くなる現象が発生していました。
 いくつか記事の内容が悪いのかと思ったらそんなことはなく、原因はNP_Headerでした。

 NP_Headerのオプションに「Use bulkfeeds」というのがありますが、これは、bulkfeedsのサービスを利用してキーワードを自動抽出する機能です。
 このサービスもとのbulkfeedsがアクセスできない状態になっているので、タイムアウトまで時間がかかっていたというのが真相。
 オプションの「Use bulkfeeds」を「いいえ」にして、キーワードを自分で入力すればOK。もともと使っていなかったのだけれど、デフォルトで「はい」になっていたのに気がついていなかった。

 いいえにして問題がなくなった。よかったよかった。

NP_jalanを作ってみる

 先日、Hotpepperと連動させるプラグイン、NP_Hpepperがほぼ完成した。
【農場主の食道楽】食べ歩き、飲み歩き、お取り寄せの記録

 これで、店のコードを入れると基本的な情報や画像を表示することができるようになった。
 次は旅行系。じゃらん.netのAPIを使って、宿の情報を表示するNP_jalanというのを作ってみたいと思う。

 使うのは、Hotpepperと同じくリクルート系のじゃらんのAPI
じゃらんWebサービス

 基本は、NP_AmazonやNP_Hpepperと同じようにAPIにアクセスして帰ってきた情報をDBに保存、呼び出しと合わせて表示するというもの。

 ほとんど流用でいけるので、形にはすぐにできた。他にAPIを公開しているところとかチェックしてやると面白いかもな。

NP_Hpepperの過去のデータの移行

 さて、プラグインのデータベースを変更したのは良いけれど、過去のデータのテーブルは残さねばならない。
 というのも、現在は登録が無くなってAPIから返ってこない店のデータも、将来復活するかも知れないから。
 以前のバージョンでは、APIから返ってこない店のデータは手打ちでデータを登録したのだけれど、新しくしたからといって再登録は非常に大変だし。

 そういうわけで、以下のような流れに。
  • プラグインがデータのキャッシュを確認に行ったとき、データベースに無ければAPIを呼ぶ。
  • APIからデータが返ってこない場合、新しいデータベースに情報があるかチェック
  • 新しいデータベースに情報が無ければ、古いデータベースから情報をコピー

 こういう処理ならば、古いデータベースからのコピーは1回だけになるはず。

 更新手順は、プラグインのアンインストール→phpMyadminにてテーブル名の変更→プラグインの再インストール→NP_Hpepperを使用している記事を再表示。
 という流れ。これでデータが新しくなった。リストページの見た目も変更して、なかなか情報が増えた状態になったよ。サイドバーにも、お店の写真があるところは表示されるようになったしね。

«Prev || 1 | 2 | 3 | 4 |...| 17 | 18 | 19 || Next»

↑ PAGE TOP