この夏wordpressの投稿からjunaioエアタグを生成するシステム(笑)を作った。

その名も「エアログ(仮)」(笑)

「ブログを投稿する間隔でエアタグをつくれる」というのがこのシステム(笑)のポイントなのだ。

しかしながら、たまにエアタグが生成されないことがある。この障害のもとをのらりくらりと探していたのだが、どうもある条件の記事が投稿されるとjunaio側がそれを認知できずにエアタグを生成してくれない。まるで彼女を妊娠させたのに認知しないDQN男のようだ。

障害の内容
位置情報(タグ)の部分に正しい数値(緯度,経度,高さ)が入力されていないと、junaio側がエアタグを生成できないという

研究室06サーバー/var/www/takeuchi/wp-junaio/src/search.phpの編集をした。

主に位置情報の排出に関する部分で

if($loc[$i] != “”){
$loc[$i] = ““.$loc[$i].”“;
}
「もし、$loc[$i]の情報になにかあったら、〜〜〜な風に書き換えてね!」という意味。

しかし、これだけだと、

「$loc[$i] になにもなかった場合」でも、その記事の他すべてのxmlタグを排出してしまう!!

ということに気づいた。つまり原因はここ。
くわしい状態はこうなっている
現時点のsearch.phpが吐き出すxml

前提条件
「Junaioは、位置情報のタグであるの部分になにも入っていないものを発見すると途端にエアタグの生成をやめてしまう」

ということで、恐らく
「$loc[$i]になにもなかったら、その記事のxmlは全部吐きださないでください!!」
という呪文を書き込めば勝てる

以上、作業メモでした

追記:
ついでにWordPressがデフォルトで吐き出してくれるRSSの排出元は
/*****(wordpressディレクトリ)/wp-includes/feed-rss2.php
の部分らしく、ここでMySQLののどこからデータを拾ってくるかを設定できる。
つまり、ここをいじれば、rssとして配信するコンテンツのソースを変えられる。

画像のexif情報についている位置情報の形は
(geo_latitude)
(geo_longitude)
と、別々のフィールドに格納されるので使い勝手が悪い。。。。

Lat_Long = (geo_latitude,geo_longitude,0)
みたいに情報をまとめれば勝てそうな気がする

今自分が作ってるシステム(笑)はWordPressプラグインのカスタムポストタイプ(Custom Post Type)を使っており、ここで位置情報の入力を行うようにしている。そして今現在はそのポストタイプがLat_Longとしているのである。
話がややこしくなって自分でも大変なのである。