PowerCMS™

[セミナー情報]【東京開催】PowerCMS X 1.1 リリース説明会を行います。

PowerCMS ブログ

ホーム > PowerCMS ブログ > 新しいCopy2Publicプラグインについて

2013年12月17日

新しいCopy2Publicプラグインについて

プロフェッショナルエディションで利用できる Copy2Public プラグイン(パブリッシュしたファイルのステージ転送/本番転送を行うプラグイン)ですが、PowerCMS 4 でいくつか機能の追加や変更があります。

変更点は下記の通りです。

  1. FTPS に対応しました
  2. メニューの表記やプラグイン設定画面がわかりやすくなりました
  3. 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の設定不備の通知

プラグイン設定

プラグイン設定は項目名の表現を平易に変更し、わかりにくい設定はヒントを表示するようにしました。

また、以前は、「コピー対象外のパス」や、「削除対象外のパス」の設定項目は、カンマ区切りでパスを入力する必要がありましたが、新しいバージョンでは、改行区切りでパスを入力することができるようになりました。

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

Recent Entries