wordpressのEWWW Image Optimizerというプラグインでエラーがでる

EWWW Image Optimizerでエラーが出るようになりました。このプラグインは、画像ファイルを圧縮してファイルサイズを小さくしてくれます。アップロードしたら勝手に実行してくれます。最新版にアップデートしたことが原因なのかは分かりませんが、突然下記のエラーがでるようになりました。

出現したエラー

解決策

結論的には、エラー文中のReset Countersという文字は実際はリンクが張られているのですが、これをクリックしたら直りました。

同じエラーが出た人が質問していて、このプラグインの作者さんが回答してくれてました。
[Resolved] EWWW Image Optimizer has detected excessive re-optimization of multiple images

I think yours are false positives. You can just hit the reset button, and move on. Looks like you’ve got the scheduled optimizer scanning the theme/plugin folders, so anytime one of those gets updated with unoptimized images, they get re-optimized, so no big deal.

とりあえずリセットボタンを押したら直りました。最初押したときエラー画面になった気がするのですが、もう一度押したらエラーが消えました。

ちなみに、上記英文のfalse positivesというのは、間違ってることを正しいと思ってる状態みたいな感じらしいです。ここに解説がのってました。クリックのことはhitというんですね。

wordpress – 子テーマをつくってスタイル変更する

テーマのスタイルを変更しても更新したら消えちゃうのでこまります。子テーマをつくるといいらしいです。

参考:WordPressテーマのカスタマイズで子テーマを使うべき理由、使い方など

wp-content/themeに子テーマ用folderをつくって、その中に、style.cssとfunctions.phpをつくって、style.cssに子テーマの情報(子テーマの名前と親テーマ)を書けばいいようです。

style.cssの中身

これで管理画面に反映しているはず。有効化して、スタイルシートをいじってみます。
親を呼び出さないといけないらしい。スタイルが全く適用されていない。functions.phpに書けばいいらしい。

functions.php

これで親のスタイルが引き継がれるので、あとは、子テーマのstyle.cssを修正することでデザインを変更できます。

購買型クラウドファンディング構築システム『Fundee Scratch』をつくりました

Fundee Scratchとは?

購買型のクラウドファンディングサイトを簡単に作成できるパッケージシステムです。https://fundee.inでASPとして運営していた実績を基に作成したので、安定しています。特に良質なプロジェクトを集められる方でしたら、手数料をご自分で決定できるパッケージはいいと好評いただいています。PHPで作成されており、フレームワークはcakePHPを使っています。ソースコードの難読化などはもちろんしていませんので、自由にカスタマイズしていただけます。

紹介サイト・デモサイト

紹介サイトは下記になります。
http://crowdfunding-system.biz/

デモサイトは下記です。
http://demo.crowdfunding-system.biz/

決済について

  • 決済は、購買型のAll or Nothing型のみ現在は対応しております。
  • クレジットカードのvisa、masterに対応しています。

決済代行会社について

決済はGMOペイメントを利用しておりますが、これには理由があります。

他の非常に安い決済サービスだと、仮売上(オーソリ)に十分対応していない。

  • webpayは、仮売上機能は、最大45日までです。つまり、プロジェクトの募集が最大45日までしかできません。
  • SPIKEは、月10万まで無料ということで面白いのですが、仮売上機能がそもそもありません。

プロジェクトの規模が制限される

  • paypalは、そもそもクラウドファンディングは慎重姿勢ということで、1件のプロジェクト当たり最大30万までと言われました。つまり大規模なプロジェクトは一切公開できません。

以上のように、それぞれ安くてよさそうな決済サービスもクラウドファンディングの利用には適していませんでした。一方GMOペイメントは、仮売上機能が最大90日(だったはず)まで使えるので、長期間のプロジェクトも公開可能ですし、大規模プロジェクトも問題なく公開可能です。デメリットは、初期費用は月額費用が上記のような決済代行会社と比べると必要になる点です。

もし、初期・月額を抑えたいということでしたら、さすがに、1プロジェクト30万までだと小さすぎるケースが多いと思うので、webpayの45日以内を前提に運営するといいかもしれないと思いました。決済手数料は、3.25%とかで、GMOペイメントと同じかちょっと安いくらいで、初期・月額無料ですので。webpayバージョンもつくってみようかなと思ってます。

金額

金額は、40万円ですが、今だけ半額提供中です。20万円(税別)です。

cakephp2 – database.phpの情報でmysqlのpdoで接続する

cakephp2で、database.phpの情報でmysqlのpdoで接続する方法。

下記で、database.phpで設定している内容を取得できる。

下記で、dbに接続できる。

下記で、データベースに存在するテーブルをすべて削除できる。

下記で、データベースにsqlをインポートできる。

Xampp windows10 PHP sendmail 設定 (gmailを使う)

php.iniの設定と、sendmail.iniの設定をして、stunnelをインストールして、stunnel.confを設定する。

php.iniの設定

php.iniの場所は、xampp/php/php.ini
[mail function]という箇所を下記のようにする。

sendamil.iniの設定

sendmail.iniの場所は、xampp/sendmail/sendmaill.ini

stunnelのインストール

stunnel: Downloads

stunnel.confの設定

stunnel.confのバックアップをとっておき、中身を下記のようにする。

最後にXamppコントローラでApacheを再起動する。

phpStorm windowsショートカット

ファイル名から検索
ctrl + shift + n

クラス名から検索
ctrl + n

行削除
ctrl + x

行複製
ctrl + d

単語選択
ctrl + w

ブロックの自動作成
ctrl + shift + Enter

開いたファイル履歴表示
ctrl + e

指定行にジャンプ
ctrl + g

コードの自動成型
ctrl + alt + l

ライブテンプレート
ctrl + j

タブを閉じる
ctrl + F4 (使いづらいけど変更方法がわからない)

vimでphpを使う

参考:VimでのPHP開発環境

PHP開発に便利なプラグイン

NeoBundleでプラグインを入れられるようになったので、上記を参考に、PHP開発に有用そうなプラグインを入れてみます。

Shougo/neocomplete.vim 関数名とか補完してくれるやつ。
Shougo/neosnippet.vim スニペット登録できるやつ。Shougo/neosnippet-snippetsも入れる必要があるらしい。
thinca/vim-ref PHPのマニュアルをvimで見られるやつ。テキストブラウザが必要らしい。
tomtom/tcomment_vim ファイルの種類に合わせて、適切なコメントアウトをしてくれるやつ。
AndrewRadev/splitjoin.vim 展開したり、1行にまとめたりできるやつ。
osyo-manga/vim-watchdogs 構文チェックしてくれるやつ。

NeoBundleでインストール

エラーなくインストールできた。
まだ他のサイトにも色々情報があり、全部調べて設定するのは結構大変そう。また今度やる。

参考:
VimでPHP開発環境を作成
vimのPHP開発環境

cakephp3 – Bake

composerでインストール

bake

下記のような感じでbakeできる。2と特段変わらない。

mac – El CapitanでcakePHP3を使う

Macの状態

  • macは、El Capitan 11.10.5です。
  • すでに、PHP7、MySQL、Nginxが入っています。composerもインストール済みです。
  • Nginxのドキュメントルートは、/usr/local/var/wwwです。

cakephp3のプロジェクトを作成する

ドキュメントルートに移動して、hogeプロジェクトを作成します。

php-fpmが変だったので直した

cakePHP3は、php5.5.9以上が必要で、php7もOKということで、php7をインストールしました。しかしphp-fpmのバージョンを確認すると、以前インストールされていたphp5.3のものでした。

php7のインストールは、 mac – phpを7.0にバージョンアップに記載の方法でやりました。php7のパスは、/usr/local/php5/binです。これに対応するphp-fpmは、/usr/local/php5/sbin/php-fpmです。なので、/usr/local/php5/sbinもパスに加えたらOKになりました。

.bash_profileを開く

下記を最後に追加する

.bash_profileを読み込む

php-fpmを起動

php-fpmのバージョン確認

Nginxの設定をcakephpに合わせて変更する

nginx.confを修正する

Nginxを再起動する

mac – phpを7.0にバージョンアップ

macは、10.11.5、El Capitanです。

現在のバージョンを確認

なんかWarningがたくさん出ている。

PHP7.0をインストール

インストール成功した。

PATH設定

PHPバージョン確認

PHP 7.0.6になった。

————————
追記:

brewでphp7をインストールする

上記のPHPを削除する

.bash_profileを修正する

下記を削除する

修正を反映する

brewのリポジトリを追加する

php7をインストールする

.bash_profileを修正する

下記を最後に追加する。

バージョン確認

cloud9でcakephp3・MySQLを使う

cloud9プロジェクトの作成

cloud9でPHPを選択してプロジェクトを作ります。

MySQLの起動

phpMyAdminのインストール

上記URLにアクセスしたらphpMyAdminが表示される。初期ではusernameと、パスワード空で入れる。root以外のユーザを作成したりする。

composerのインストール

composerを移動する

cakeプロジェクトの作成

プレビューを見る

cloud9のメニューのPreviewからプレビューを開く。database.phpの設定がまだだが、とりあえず初期画面が表示される。

cake3

database.phpの設定

config/app.phpの229行目に下記があるので、修正する。

Zend_Pdfで作成されるPDFのファイルサイズを小さくする

Zend_Pdfで日本語が含まれるPDFを作成するとファイルサイズが5MB近くになる場合があります。日本語のフォントが全部PDFに含まれるからだそうです。

参考:http://framework.zend.com/manual/1.12/ja/zend.pdf.drawing.html

日本語フォントをセットする際に、Zend_Pdf_Font::EMBED_DONT_EMBEDというパラメタを設定することで、PDFにフォントが埋め込まれなくなります。

4.4MBだったものが、Zend_Pdf_Font::EMBED_DONT_EMBEDを設定することで、300KB程度になりました。

追記:2016/5/15
これだと、フォントが端末にないと表示されませんでした。代替フォントを使ってくれるのかと思いましたが、自分の環境だとうまく表示されませんでした。なので、結局mbfpdfを使いました。

Amazon Linux – PostgreSQL・Nginx・FuelPHP


インストール

参考:
Amazon Linux AMIにpostgresqlをインストールする
チュートリアル: Amazon Linux への LAMP ウェブサーバーのインストール

yumをアップデートして、phpとgitとvimとnginx入れた。アパッチとMySQLも入れた。

postgresql入れた。

エラーでた

php56と指定しないといけないっぽい。

これで必要なの入った。

postgreSQLの設定する

postgresユーザにパスワード設定

postgresユーザに切り替える

基本データベース生成とサービス開始

データベース作成する

NginxでPHP使えるようにする

参考:nginxでphpを使う(CentOS6.5)

php-fpmをインストールする

php-fpmの設定をする

下記のwww.confのuserとかgroupがapacheになっているので、nginxに変更します。

NginxでFuelphpが動くようにする

下記、nginx.confを修正していく。

下記箇所を、/usr/share/nginx/hoge/publicとかにする。

参考:http://fuelphp.jp/docs/1.8/installation/instructions.html
下記のように変更する。

nginxとphp-fpmを再起動する

FuelPHPをcloneする

FuelPHPはローカルで作ってるやつをcloneする。

FuelPHPのcomposer installする

phpPgAdminインストール

参考:phpPgAdminのインストール – CentOS6.5(Vagrant)

とりあえず、ローカルで上記サイトに記載のURLから、ダウンロードして、展開して、gitリポジトリに追加して、pullした。常時使える必要はなかったので、nginxのrootを変更してちょっとだけ使った。

FFmpeg – mac・PHPで使う

macのバージョンは、10.11.4。El Capitan。

参考: Mac OS XでFFmpegのインストールとWebM動画の作り方

brewでインストールした。ここまで長いオプションは必要ないのかもしれない。

FFmpegとは?

FFmpeg(エフエフエムペグ)は動画と音声を変換することのできるUNIX系OS生まれのフリーソフトウェアであり、libavcodec(動画/音声のコーデックライブラリ)、libavformat(動画/音声のコンテナライブラリ)、libswscale(色空間・サイズ変換ライブラリ)、libavfilter(動画のフィルタリングライブラリ)などを含む。ライセンスはコンパイル時のオプションによりLGPLかGPLに決定される。コマンドラインから使用することができる。対応コーデックが多く、多彩なオプションを使用可能なため、幅広く利用されている。

引用:FFmpeg

PHP-FFMpegを使う

最初ffmpeg-phpを使おうとしたけど、エラーでインストールできなかった。2012年で開発終了しているらしい。

PHPでffmpegを利用するには、PHP-FFMpegがおすすめです。Composer対応のモダンなPHP実装なので、PHP5.3以上のコードベースではとても扱いやすいです。

ffmpeg-phpというPHP拡張もありますが、2012年で開発が止まっているのであまりおすすめしません。

引用:FFmpegによる動画エンコードの基本

PHP-FFMpegを使ってみる。

PHP-FFMpeg

上記のREADMEに詳しく書いてあった。composerに追加してupdateしたら下記のような感じで使えるようになる。

composer.json

fuelphpのコントローラ内でテスト。保存されている動画を取得して、jpgのサムネイル画像を作成して保存している。その後、fuelphpのImageクラスでリサイズして保存した。