特定の投稿者の投稿をエアタグとして出さない方法(WordPress×Junaio)

WordPress×Junaioのシステムをフィールドワークに応用したい、フィールドRPG制作で活用したい、といういくつかの要望があったので兼ねてからの案件「投稿者別にチャンネルをソートする」ことを実行に移しました。結果は成功。特定投稿者の投稿は特定投稿者側が保持するチャンネルにも出現させることができました。

それだけだと、AIRLOGチャンネル上(「ホーム」となるチャンネル)で、ゲーム用に作ったエアタグがノイズになってしまう問題が発生します。

特定の目的をもった投稿はエアタグとして表示しないようにしなければなりません(あるいは特定のカテゴリに属するもののみをエアタグとして排出する、か)。
今回はその方法を考えて、実行したので記録として書き残します。

ここでテストケースとしてsugar1229くんのアカウントを使わせて頂きます。

ユーザー名(投稿者名):sugar1229

Junaio側ディレクトリを見ます。
/src/search.phpを編集します。

詳しくは割愛しますが

拾ってきたxmlから投稿者の情報を抽出

$creatorという変数を準備し、そこに投稿者の情報を入れます。

ただし、dc:creatorのようにコロンは認識できないので

$creator[$i] = $v -> children(“dc”,true)->creator;

と書いてあげましょう。children()関数の具体的な使い方はPHPのマニュアルを見てください。

それではxmlを再生成する大事な部分ですが

if($loc[$i] != “” && $creator[$i] != “sugar1229″){
echo ”
(junaio用xml作る部分)
“;}

と書いてあげれば、一応sugar1229君による投稿はエアタグになりません。
簡単ですね。
これがわかれば記事カテゴリを指定して、あるカテゴリのものだけはエアタグにしない、ということもできます。
ただこれだけじゃ根本的な解決にはなっていないような気がしますが、現状僕にわかる方法はこれだけです。テストしたらうまくいきました。
他にいい方法がある場合は教えてください。

ちなみにsugar1229君は同じ研究室の仲間で、僕の作ったこの仕組みをベースにフィールドRPGを作ってくれるそうです。
スマートフォンをかざしながら街を歩き、点在するキャラクターに声をかけると物語が進んでいくというものです。拡張現実の持つ再現性をどこまで引き出せるか、ストーリーを作りこめば結構面白いものが作れそうですね。すごく楽しみです。sugar1229氏の作品をお楽しみに。