PHPで1次元バーコードを生成する & WordPressプラグインでPEARライブラリを使う。

最近、古くからお世話になってる知人が大阪の難波でコーワキングスペースを始めたり、WordPress界で有名な小太りなおじさん埼玉でコワーキングスペースを始めたりしたので、バーコードを使ったチェックインシステム的なものを作ってます。

さいわい、つい最近、”リブライズ 〜すべての本棚を図書館に〜”というサービスの開発者の人にお会いする機会があって、バーコードリーダーとウェブの連携についてざくっと教えてもらったので、仕組みは意外と簡単に作れそうです。

PHPでバーコードを生成する方法

PHP用の1次元バーコード生成ライブラリは、意外とそれほど多くはないのですが、幸いPEARに登録されてるものがあったのでそれを使うことにしました。

https://pear.php.net/package/Image_Barcode2

ところがこれ、ダウンロードリンクをクリックしても中身がカラなんですよね。

というわけで、ぐぐったらGitHubにプロジェクトがあったので、そちらからダウンロードしました。

pear / Image_Barcode2 – GitHub

使い方

せっかくなのでWordPressプラグインとして組み込もうと思っているので、WordPressプラグインからPEARライブラリを使う方法をご紹介します。

WordPressプラグインなら、プラグインのディレクトリ内にincludesみたいなディレクトリを作って、その中にImageBarcode内のImageディレクトリをコピーしてください。

wp-content/
    my-plugin/
        my-plugin.php
        includes/
            Image/

そしてプラグイン(my-plugin.php)に以下のように記述します。

$inc =  ini_get('include_path');
ini_set('include_path', $inc.':'.dirname(__FILE__).'/includes');

これでImage_Barcode2が使えるようになりました。

(参考) Manual :: 共有ホストでの PEAR のローカルコピーのインストール

これをしとかないと、Barcode2.phpがrequireしてる別のファイルへのパスが切れちゃうので忘れないようにしましょう。

あとはこんな感じ。

require_once(dirname(__FILE__).'/includes/Image/Barcode2.php');

nocache_headers();
$code = new Image_Barcode2();
$code->draw($key, 'code128', 'png');

$keyの部分はバーコードの元ネタになります。適当に生成してください。