WordPressでPythonコードの実行方法まとめ

Python

WordPressでPythonのコードを実行する方法がかなり手間がかかるのでまとめてみました。

環境はレンタルサーバーCORESERVERに導入されたWordPressでの導入なるため、環境によっては違いはあると思いますので、少し自分の環境に合わせてアレンジしてください。

【導入の流れ】

CORESERVER には既にpythonが導入されていますが、Python2がデホルトであることなど、環境を変えたい場合が多いともいますので、「①Pythonの仮想環境を導入」し、その環境に「②Pythonと必要なライブラリーを導入」します(そのためにまずTeraTermというサーバーに入るソフトを導入します)その後 「③PHP の 「exec」コマンドをでPythonを実行」します。

①Pythonの仮想環境を導入

①-1 TeraTermのインストール

サーバーに入るために ターミナルエミュレーター Teratermを以下でダウンロードしてください

https://ja.osdn.net/projects/ttssh2/releases/

インストールしたTeraTermを実行し、ホルト名を入力し「OK」ボタンを押してください

ユーザー名とパスワード入力、 CORESERVER の場合はFTPの設定のアカウントがユーザー名、パスワードが同じ。

※パスワードなどコピーしたものを貼り付ける場合は、「Shift」+「Inset」

Pythonが使えて月198円!CORESERVERだけ、非常にお得ですよ

①-2  pyenvの導入

GitよりPythonの仮想環境pyenvをインストールするため

「git clone https://github.com/yyuu/pyenv.git ~/.pyenv 」を実行。

「.bash_profile」ファイルに以下を記入

export PYENV_ROOT=$HOME/.pyenv
export PATH=$PYENV_ROOT/bin:$PATH
eval “$(pyenv init -)”

「source .bash_profile 」を実行し変更を反映

②Pythonと必要なライブラリーを導入

「pyenv install –list 」でインストール可能なpythonのバージョンをしらべる

今回はバージョン「3.7.4」をインストールします

global を指定すると、システム全体で有効になります。

「pyenv version 」でバージョンがあっているか確認してください

「.bashrc」ファイルに以下を記入

export PYENV_ROOT=$HOME/.pyenv
export PATH=$PYENV_ROOT/bin:$PATH
eval “$(pyenv init -)”
export PYTHONPATH=/virtual/trcodrm/.pyenv/version/3.7.4/lib/python3.7/site-packages

「source .bash_profile 」を実行し変更を反映

「python -V」でインストールしたバージョンが出ればOKです

必要なライブラリーをpipで導入してください

③PHP の 「exec」コマンドをでPythonを実行

pythonを直接呼び出す事が難しいため今回はPHPを使いpythonを実行します。

そのため「Insert PHP Code Snippet」というプラグインを使用。 WordPressにプラグインを導入してください。

プラグインを導入すると以下の「XYZ PHP Code」というメニューができますので選択し「Add New PHP Code Snippet」をクリックしてください

ショートコード名を入力し、以下のコードを入力します。「Create」で作成完了です

【注意】$command=’pythonが入っているディレクトリーも記述 実行するpythonファイルをディレクトリーから記述’

ディレクトリーから記述しないと、上手くpythonもファイルも実行されない。

投稿や固定ページのブロックの種類を「ショートコード」にして先ほど作成したショートコードを入力します。

これで、このページが読み込まれると、PHP経由でpythonファイルが実行されます