PowerCMS Xのプラグインのパス変更について

こんにちは、ウシロゴウチです。
PowerCMS Xのプラグインのパス変更ができるというのは知っていたのですが、実際にやってみてどうだったか、気づいた点や感想などを書いていきたいと思います。

今回パスを変えて使用したのは以下のプラグインです。
会員限定Webサイトの作成(Membersプラグイン)

通常の場合、
https://example.com/powercmsx/plugins/Members/app/pt-members.php
となるのですが、

今回の要件として、会員には、
https://example.com/powercmsx/
PowerCMS Xのインストールされたディレクトリ配下のファイルを直接触らせたくないというものがありました。

そのため、その制限をかけてしまうと以下のパスではアクセスできなくなりますので、
https://example.com/powercmsx/plugins/Members/app/pt-members.php
プラグインのパスを変更する必要がありました。
具体的には、
実際にアクセスするpt-members.phpの中身をPowerCMS Xのビューで作ってあげるという対応を行いました。

<mt:phpstart />
〜〜〜 pt-members.php の中身〜〜〜
<mt:phpend />

ちなみにビューでPHPを書くには、<mt:phpstart />と<mt:phpend />で囲む必要があり、
"<mt:phpstart />"が"<?php"になり"<mt:phpend />"が"?>"となるようです
ビューのURLを設定することで
https://example.com/powercmsx/以外のURLでも使用できるようになります。

ちなみにこの pt-members.php の中身でプラグインのライブラリを読みこむ部分などは
相対パスで書かれているところがあったのですが、今回ファイル出力場所も変わり、相対パスではそのまま使えないので、直接パスで読み込むように変更しました。

こちらのやり方であれば、
pt-members.phpをビューで出力するようにした以外、プラグインはそのままなので、PowerCMS Xがアップデートされた際にも特に問題なく使用できるようになりました。

ちなみに読み込むプラグインのライブラリは以下のディレクトリの配下にあるのですが、
https://example.com/powercmsx/plugins/Members/
例えば、https://example.com/powercmsx/のURL配下にIP制限をかけて、許可されていないIPから今回変更したプラグインのURLにアクセスしても、特にプラグイン自体の動きには問題なく使えておりました。

ウシロゴウチ

テックリード/プロジェクトマネージャー

松岡修造さんの日めくりカレンダーを3つ持ってます

関連記事

お仕事のご相談、採用についてなど、お気軽にお問い合わせください。