カスタムWordPressプラグイン内でCloudConvert APIを使用しようとしています。私がしたいのは、CloudConvert APIのすべてのものを起動時に一度だけ初期化し、ファイル変換のために必要に応じて複数回使用できるようにすることです。具体的には、フックを使用してWooCommerce製品ページにファイル変換フォームを配置したいと考えています。WordPressでCloudConvert APIを使用する
は、ここに私のカスタムプラグインのコードです:PHP Wrapperがhttps://github.com/cloudconvert/cloudconvert-phpで移動するための方法に見えたので、コードが現在示しているとして、彼らは(パッケージとパッケージされていないとしても、お勧めと私はPHARを使用してみました
require __DIR__ . '/vendor/autoload.php';
use \CloudConvert\Api;
function add_file_conversion()
{
$api = new Api("---");
$psd_process = $api->createProcess([
"inputformat" => "psd",
"outputformat" => "png",
]);
$psd_process->start([
"input" => "upload",
"outputformat" => "png",
"download" => true
]);
?>
<form id="files-convert-form" action="<?php echo $psd_process->upload->url; ?>">
<label>If you have a PSD or PDF file, please convert it </label>
<input type="file" name="myfile" id="files-convert" autocomplete="off"/>
<button type="button" class="btn btn-primary" id="action-convert">Convert</button>
</form>
<?php
}
add_action('woocommerce_single_product_summary', 'add_file_conversion', 25);
)。私はPHARを使った経験があまりないので、それが見つかるには/ wp-adminに入る必要があることを理解するのに私はしばらく時間がかかりました - 私はそれが見えるようにインクルードパスを設定する運がありませんでした私のプラグインディレクトリにあります。
とにかく、パッケージ化されたPHARファイルと解凍されたautoload.phpファイルは、プラグインが起動時にエラーをスローしないという点でokです。 add_file_conversion()メソッドが実行されたときに代わりに、私はこのエラーを取得する:ライン19はへの呼び出しである
[12-Dec-2017 11:17:58 UTC] PHP Fatal error: Class 'CloudConvert\Api' not found in /.../wp-content/plugins/cloudconvert-puzzlepic/cloudconvert-puzzlepic.php on line 19
の新しいAPI( "---") '
また、私は$を作ってみましたapi globalとその初期化を 'use'ステートメントの下で直接動かしますが、add_file_conversion()関数内でそれを呼び出すと、$ apiがnullなのでエラーがスローされます。
私はそれがとてもシンプルであるべきだと思っていますが、まだそれを働かせる方法を見つけていません。誰でも助けてくれますか?
'$ api = new Api(" --- ");'の部分を関数の 'use \ CloudConvert \ Api;'行の下に移動すると、正しく動作していますか? –
cloudconvert APIを一度初期化する方法が不明です。余分なロジックがある場合は、そのコードも投稿してください。 –