2013年12月17日
新しいCopy2Publicプラグインについて
プロフェッショナルエディションで利用できる Copy2Public プラグイン(パブリッシュしたファイルのステージ転送/本番転送を行うプラグイン)ですが、PowerCMS 4 でいくつか機能の追加や変更があります。
変更点は下記の通りです。
- FTPS に対応しました
- メニューの表記やプラグイン設定画面がわかりやすくなりました
- Copy2Public::TransferProtocol モジュール
FTPS に対応しました
PowerCMS 4 の Copy2Public では、従来の FTP, SFTP に加え、FTPS での転送にも対応しました。
これにより、Windows サーバーでも、セキュアなファイル転送が実現できるようになりました。
FTPS 転送は、これまでどおり、下記のように環境変数を設定することで利用できます。
Copy2PublicTransferProtocol FTPS
また、マイナーバージョンアップになりますが、SFTP 転送を利用する際、Net::SFTP の代わりに、Net::SFTP::Foreign を使うこともできるようになったため、Net::SFTP のインストールが困難なサーバーでの利用がしやすくなっています。
メニューの表記やプラグイン設定画面がわかりやすくなりました
PowerCMS 4 より、Copy2Public のメニューの表記やプラグイン設定画面がわかりやすくなりました。
具体的には下記のように変更されています。
メニュー
以前は、ツールメニューの中に「ステージ同期」および、「公開サーバ同期」というメニューが含まれていましたが、新しいバージョンでは、同期メニューが追加され、その中に「ステージ環境に同期」および、「公開環境に同期」が含まれるようになりました。
また、以前は、環境変数とプラグイン設定に不備があると、メニュー自体が表示されない仕様でしたが、新しいバージョンでは、メニューは表示され、クリックした時に設定に不備があることを通知する動作に変わりました。
Copy2Publicの以前のメニュー
Copy2Publicの現在のメニュー
Copy2Publicの設定不備の通知
プラグイン設定
プラグイン設定は項目名の表現を平易に変更し、わかりにくい設定はヒントを表示するようにしました。
また、以前は、「コピー対象外のパス」や、「削除対象外のパス」の設定項目は、カンマ区切りでパスを入力する必要がありましたが、新しいバージョンでは、改行区切りでパスを入力することができるようになりました。
Copy2Publicの以前のプラグイン設定画面
Copy2Publicの現在のプラグイン設定画面
Copy2Public::TransferProtocol モジュール
Copy2Public で使用する転送のためのモジュールを汎用的にしました。
単純な転送のみの機能となりますが、拡張プラグインを作成し、FTP, SFTP, FTPS による転送が必要な場合などに利用いただけます。
また、転送前に、pre_ftp_put というコールバックが、転送後に post_ftp_put というコールバックが呼ばれますので、そのコールバックを利用して、転送前、転送後の処理を記述することも可能です。
use strict;
use warnings;
use lib qw( /path/to/plugins/Copy2Public/lib );
require Copy2Public::TransferProtocol::FTP
my $ftp = Copy2Public::TransferProtocol::FTP::new( 'localhost', 'alfasado', 'password' );
Copy2Public::TransferProtocol::FTP::put( $ftp, '/path/to/dir/file' );
# または
# require Copy2Public::TransferProtocol;
# my $ftp = Copy2Public::TransferProtocol::new( 'ftp', 'localhost', 'alfasado', 'password' );
# Copy2Public::TransferProtocol::put( 'ftp', $ftp, '/path/to/dir/file' );
require Copy2Public::TransferProtocol::SFTP
my $sftp = Copy2Public::TransferProtocol::SFTP::new( 'localhost', 'alfasado', 'password' );
Copy2Public::TransferProtocol::SFTP::put( $sftp, '/path/to/dir/file' );
require Copy2Public::TransferProtocol::FTPS
my $ftps = Copy2Public::TransferProtocol::FTPS::new( 'localhost', 'alfasado', 'password' );
Copy2Public::TransferProtocol::FTPS::put( $ftps, '/path/to/dir/file' );
- カテゴリー
- PowerCMS 4
コメントを投稿する