Standing on the Shoulder of Linus

Home / 2011 / 9月 / 08 / ATND アドオンを GitHub で公開

ATND アドオンを GitHub で公開

先日紹介した ATND アドオン を GitHub で公開しました。

ATND イベントの ID を入力すると、ATND API から情報を取得してきます。

取得したデータは、xsltprocessor で処理して、整形後表示します。xsl ファイルで、xml フォーマットから(xml に限らない)別のフォーマットに変換する方法を指定します。

xsl ファイルは、当初は管理画面から設定できる方法を検討していました。しかし、セキュリティ面での検証に確信が持てなかったので、ブロック内に view.xsl ファイルを置く、という形にしました。

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
    <xsl:output method="html" encoding="UTF-8" indent="no"
        omit-xml-declaration="yes"  media-type="text/html"/>
    <xsl:template match="/">
        <xsl:value-of select="hash/events/event/title"/><br />
        Attendees<br />
        <xsl:for-each select ="hash/events/event/users/user">
            <xsl:value-of select="nickname"/><br />
        </xsl:for-each>
    </xsl:template>
</xsl:stylesheet>

キャッシュ機能についても、http://www.concrete5.org/api/Blocks/ContentBlockController.html を参考に、controller.php に記述しました。

protected $btCacheBlockRecord = true;
protected $btCacheBlockOutput = true;
protected $btCacheBlockOutputOnPost = true;
protected $btCacheBlockOutputForRegisteredUsers = true;
protected $btCacheBlockOutputLifetime = 300;

GPL ライセンスで公開しています。controller.php にライセンス条項を記載してあります。

関連

Posted in concrete5 | Tagged ATND, xml, プラグイン
← blogiloを使用したブログ投稿 PHPカンファレンス2011 →

アーカイブ

人気の投稿とページ

  • キンドル本を印刷する(PDFに変換する)方法
  • 名古屋駅から国際センターまでの道のり(徒歩)
  • AGPL ライセンス(GPLとは似ているが違いもある)
  • 問い合わせフォーム改善: 選択肢により条件分岐し、項目の表示非表示を変更する
  • JP-Secure SiteGuard WP Pluginは不正ログイン防止に役立つか

プロフィール

水野史土:月70万PVホームページ制作会社のレスキューワーク株式会社で、PHPソフトウェアのサポートを行っている。concrete5コミュニティリーダー、Novius OSコアコード貢献者でもある。 詳しくは管理者詳細参照。
大好評WordPress書籍「WordPressユーザーのためのPHP入門 はじめから、ていねいに。」サポートページ

Copyright © 2015 Standing on the Shoulder of Linus.