WordPress에서 CloudConvert API 사용
커스텀 WordPress 플러그인 내에서 CloudConvert API를 사용하려고 합니다.저는 모든 CloudConvert API를 활성화 시 한 번만 초기화하여 파일 변환에 필요한 만큼 여러 번 사용할 수 있도록 하고 싶습니다.구체적으로는 후크를 사용하여 WooCommerce 제품 페이지에 파일 변환 폼을 넣고 싶습니다.
커스텀 플러그인 코드는 다음과 같습니다.
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);
https://github.com/cloudconvert/cloudconvert-php의 PHP Wrapper가 가장 좋은 방법이라고 생각했기 때문에, PAR를 패키지와 언팩(현재 코드와 같이)으로 사용해 보았습니다.저는 PAR를 사용한 경험이 별로 없기 때문에 /wp-admin을 사용해야 찾을 수 있다는 것을 깨닫는데 시간이 걸렸습니다.플러그인 디렉토리에서 검색하기 위한 포함 경로를 설정할 수 없었습니다.
어쨌든 패키징된 PAR과 언팩된 자동 로드.플러그인이 활성화 시 오류를 발생시키지 않는다는 점에서 php 파일이 정상적으로 로드되는 것 같습니다.대신 add_file_conversion() 메서드가 실행되면 다음 오류가 나타납니다.
[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
여기서 line 19는 'new API(---)'에 대한 호출입니다.
또한 $api를 글로벌하게 만들어 'use' 문 아래로 직접 초기화를 이동하려고 했는데, $api가 늘이기 때문에 add_file_conversion() 함수 내에서 호출하면 오류가 발생합니다.
너무 간단해야 할 것 같은데 아직 작동시킬 방법을 찾지 못했어요.누가 좀 도와줄래요?
방금 제 쪽에서 테스트를 했는데 잘 되고 있어요.설치에 뭔가 문제가 있는 것 같아요.동작시키기 위한 순서는 다음과 같습니다.
플러그인 루트 디렉터리 생성
composer.json
다음 내용을 포함하는 파일:{ "name": "Example Application", "description": "This is an example", "require": { "cloudconvert/cloudconvert-php": "2.2.*" } }
달려.
composer install
명령어는 같은 디렉토리에 있습니다(컴포저를 인스톨 하지 않은 경우는, 여기서 다운로드해 인스톨 할 수 있습니다).종속성이 있는 클라우드 컨버트를 에 설치합니다.vendor
디렉토리 및 작성한다.vendor/autoload.php
프로젝트에 포함시킬 수 있습니다.자동 로드가 필요합니다.플러그인의 php:
require __DIR__ . '/vendor/autoload.php'; use \CloudConvert\Api; $api = new Api("your_api_key"); var_dump($api); exit;
클래스에서 사용하는 클라우드 변환 기능을 래핑하고, 후크를 연결하고, 작업이 필요할 때마다 해당 파일을 포함할 수 있습니다.
언급URL : https://stackoverflow.com/questions/47771720/using-cloudconvert-api-in-wordpress
'sourcecode' 카테고리의 다른 글
Word press - get_results() - 실패 또는 비어 있는지 확인하는 방법 (0) | 2023.02.07 |
---|---|
필요한 위치에 있지 않고 콘텐츠 상단에 쇼트코드가 표시됨 (0) | 2023.02.07 |
라인 항목당 WooCommerce 쿠폰 코드 (0) | 2023.02.07 |
wordpress enqueue 스크립트 문제("$가 정의되지 않음") (0) | 2023.02.07 |
Wordpress Docker가 업로드 제한을 늘리지 않음 (0) | 2023.02.07 |