Adding Script Tag In Shopify Using Php
it redirects well. We go to app screen to get permission also when we click on install it redirects to redirect page and gives error. in my error log.
Uncaught PHPShopify\Exception\ApiException: script_tag - expected Array to be a Hash in
This is our app code
<?php require '/home/xxx/public_html/shopify/1/vendor/autoload.php'; $config = array( 'ShopUrl' => 'xyyy.myshopify.com', 'ApiKey' => 'a07235d5cxx4af2239ea02fe197', 'SharedSecret' => '7ae8a450xxxx2576cf5e7a606c3', ); PHPShopify\ShopifySDK::config($config); $shopify = new PHPShopify\ShopifySDK; $scopes = array('read_orders','read_script_tags','read_products', 'write_script_tags'); $redirectUrl = 'https://xxxx.com/shopify/1/99.php/auth/callback'; $auth = \PHPShopify\AuthHelper::createAuthRequest($scopes, $redirectUrl); $src = "https://xxxx.com/modules/script72paid.js"; $finalurl='https://xxxxx.myshopify.com/admin/script_tags.json'. $shopify->ScriptTag->post(array("post"), ''.$finalurl.'', array( "script_tag" => array( "event"=>"onload", "src"=>$src))); ?>
and this is our redirect link code
<?php require '/home/xxxxxx/public_html/shopify/1/vendor/autoload.php'; $config = array( 'ShopUrl' => 'xxxx.myshopify.com', 'ApiKey' => 'a07235d5cxxxxxx9ea02fe197', 'SharedSecret' => '7ae8a45xxxxxxx76cf5e7a606c3', ); PHPShopify\ShopifySDK::config($config); $shopify = new PHPShopify\ShopifySDK; $accessToken = \PHPShopify\AuthHelper::getAccessToken(); $config2 = array( 'ShopUrl' => 'xxxx.myshopify.com', 'AccessToken' => $accessToken, ); $shopify2 = new PHPShopify\ShopifySDK($config2); $src = "https://xxxxx.com/modules/script72paid.js"; $finalurl='https://xxxxx.myshopify.com/admin/script_tags.json'. $shopify2->ScriptTag->post(array("post"), ''.$finalurl.'', array( "script_tag" => array( "event"=>"onload", "src"=>$src))); ?>
How do we avoid this error with expected Array to be a Hash?
Any help will be great.
Check that you are passing the correct parameters to
$shopify->ScriptTag->post() by looking at the function in your copy of the library. Different versions of the library and documentation may have changed something.
Check that those parameters are in the correct order. Check that all of the arrays you are passing are not actually meant to be objects. Check if any of the arrays need to wrapped in another array.
- → "failed to open stream" error when executing "migrate:make"
- → October CMS Plugin Routes.php not registering
- → OctoberCMS Migrate Table
- → OctoberCMS Rain User plugin not working or redirecting
- → October CMS Custom Mail Layout
- → October CMS - How to correctly route
- → October CMS create a multi select Form field
- → October CMS - Conditionally Load a Different Page
- → How to disable assets combining on development in OctoberCMS
- → October CMS - Radio Button Ajax Click Twice in a Row Causes Content to disappear
- → OctoberCms component: How to display all ID(items) instead of sorting only one ID?
- → In OctoberCMS how do you find the hint path?
- → How to register middlewares in OctoberCMS plugin?