سلام دوستان طبق قولی که بهتون داده بودیم آموزش ارتباط با وب سرویس WooCommerce Rest Api رو در دو قسمت براتون قرار می دیم که امشب قسمت اول و سمت ورد پرس هست و قسمت بعد سمت اندروید و با استفاده از Android Studio می باشد .مدرس این بخش خانم خدابنده هستن 😊. موفق باشین ❤️
#ارتباط_با_وب_سرویس_WooCommerce_Rest_Api_جلسه_اول
#وب_سرویس #ووکامرس #وردپرس
در این آموزش قصد داریم برای یک سایت وردپرسی که با افزونه ووکامرس دارای فروشگاه می باشد اپلیکیشن اندروید آماده کنیم .
مواردی که به کار گرفته شده در این نمونه:
استفاده از woocommerce-rest-api
استفاده از کتابخانه volley برای ارتباط با وب سرویس در اندروید
استفاده از RecyclerView و CardView برای نمایش لیست محصولات
به این منظور ابتدا می بایست در بخش مدیریت وردپرس تنظیمات زیر را انجام دهیم:
#وب_سرویس #ووکامرس #وردپرس
در این آموزش قصد داریم برای یک سایت وردپرسی که با افزونه ووکامرس دارای فروشگاه می باشد اپلیکیشن اندروید آماده کنیم .
مواردی که به کار گرفته شده در این نمونه:
استفاده از woocommerce-rest-api
استفاده از کتابخانه volley برای ارتباط با وب سرویس در اندروید
استفاده از RecyclerView و CardView برای نمایش لیست محصولات
به این منظور ابتدا می بایست در بخش مدیریت وردپرس تنظیمات زیر را انجام دهیم:
Forwarded from Mohammad
3)در قسمت پیکر بندی تیک مربوط به فعال سازی REST API را می زنیم که امکان استفاده از وب سرویس مربوطه فراهم شود. @AndroidDevelop
در تب کلیدها/برنامه ها برروی افزودن کلید کلیک میکنیم.
سپس در پنجره ای که نمایش داده می شود در بخش توضیحات و کاربر و دسترسی مشابه زیر اطلاعات مورد نظر را ثبت کرده و بر روی دکمه ساخت کلید API کلیک میکنیم.(دسترسی از نوع خواندن/نوشتن میبایست انتخاب شود.)
سپس در پنجره ای که نمایش داده می شود در بخش توضیحات و کاربر و دسترسی مشابه زیر اطلاعات مورد نظر را ثبت کرده و بر روی دکمه ساخت کلید API کلیک میکنیم.(دسترسی از نوع خواندن/نوشتن میبایست انتخاب شود.)
پس از کلیک بر روی ساخت کلید مانند شکل زیر کلید مصرف کننده و رمز مصرف کننده ساخته می شوند .
با استفاده از دکمه کپی هر دو را ذخیره کنید که در مراحل بعدی می بایست از آنها استفاده شود.
با استفاده از دکمه کپی هر دو را ذخیره کنید که در مراحل بعدی می بایست از آنها استفاده شود.
از آدرس
https://github.com/kloon/WooCommerce-REST-API-Client-Library
پروژه نمونه را دانلود کرده و در هاست پروژه وردپرسی خود یک پوشه به نام app ایجاد کرده و درپوشه دیگری به نام test فایلهای دانلود شده از این آدرس را قرار می دهیم.(نام ها اختیاری است و مواردی که ذکر شد در این نمونه میباشد.)
در پوشه test فایلی به نام a.php قرار داده ایم که کدهای قرار گرفته در آن مانند زیر است:
<?php
//header('Content-Type: application/json; charset=utf-8');
require_once 'lib/woocommerce-api.php';
$options = array(
'debug' => false,
'return_as_array' => false,
'validate_url' => false,
'timeout' => 30,
'ssl_verify' => false,
);
try {
آدرس سایت و کلیدهایی که در بخش بالا پیدا کردیم را در این قسمت قرار می دهیم.
👇👇👇👇👇👇
$client = new WC_API_Client('http://www.sohannet.ir', 'ck_247bb180d6409c43fb0e4d60b9d3bdb463e9a015', 'cs_67f6121283594a485c951257bab240372a7103bf', $options);
برای نمایش محصولات در قالب json این دوخط اضافه شده است.
// products
// print_r($client->products->get());
$json = json_encode($client->products->get(), JSON_UNESCAPED_UNICODE);
echo $json;
@AndroidDevelop
https://github.com/kloon/WooCommerce-REST-API-Client-Library
پروژه نمونه را دانلود کرده و در هاست پروژه وردپرسی خود یک پوشه به نام app ایجاد کرده و درپوشه دیگری به نام test فایلهای دانلود شده از این آدرس را قرار می دهیم.(نام ها اختیاری است و مواردی که ذکر شد در این نمونه میباشد.)
در پوشه test فایلی به نام a.php قرار داده ایم که کدهای قرار گرفته در آن مانند زیر است:
<?php
//header('Content-Type: application/json; charset=utf-8');
require_once 'lib/woocommerce-api.php';
$options = array(
'debug' => false,
'return_as_array' => false,
'validate_url' => false,
'timeout' => 30,
'ssl_verify' => false,
);
try {
آدرس سایت و کلیدهایی که در بخش بالا پیدا کردیم را در این قسمت قرار می دهیم.
👇👇👇👇👇👇
$client = new WC_API_Client('http://www.sohannet.ir', 'ck_247bb180d6409c43fb0e4d60b9d3bdb463e9a015', 'cs_67f6121283594a485c951257bab240372a7103bf', $options);
برای نمایش محصولات در قالب json این دوخط اضافه شده است.
// products
// print_r($client->products->get());
$json = json_encode($client->products->get(), JSON_UNESCAPED_UNICODE);
echo $json;
@AndroidDevelop
GitHub
GitHub - kloon/WooCommerce-REST-API-Client-Library: A PHP wrapper for the WooCommerce REST API
A PHP wrapper for the WooCommerce REST API. Contribute to kloon/WooCommerce-REST-API-Client-Library development by creating an account on GitHub.
ادامه کد ...
//print_r( $client->products->get( $product_id ) );
//print_r( $client->products->get( $variation_id ) );
//print_r( $client->products->get_by_sku( 'a-product-sku' ) );
//print_r( $client->products->create( array( 'noscript' => 'Test Product', 'type' => 'simple', 'regular_price' => '9.99', 'denoscription' => 'test' ) ) );
//print_r( $client->products->update( $product_id, array( 'noscript' => 'Yet another test product' ) ) );
//print_r( $client->products->delete( $product_id, true ) );
//print_r( $client->products->get_count() );
//print_r( $client->products->get_count( array( 'type' => 'simple' ) ) );
//print_r( $client->products->get_categories() );
//print_r( $client->products->get_categories( $category_id ) );
} catch (WC_API_Client_Exception $e) {
echo $e->getMessage() . PHP_EOL;
echo $e->getCode() . PHP_EOL;
if ($e instanceof WC_API_Client_HTTP_Exception) {
print_r($e->get_request());
print_r($e->get_response());
}
}
//print_r( $client->products->get( $product_id ) );
//print_r( $client->products->get( $variation_id ) );
//print_r( $client->products->get_by_sku( 'a-product-sku' ) );
//print_r( $client->products->create( array( 'noscript' => 'Test Product', 'type' => 'simple', 'regular_price' => '9.99', 'denoscription' => 'test' ) ) );
//print_r( $client->products->update( $product_id, array( 'noscript' => 'Yet another test product' ) ) );
//print_r( $client->products->delete( $product_id, true ) );
//print_r( $client->products->get_count() );
//print_r( $client->products->get_count( array( 'type' => 'simple' ) ) );
//print_r( $client->products->get_categories() );
//print_r( $client->products->get_categories( $category_id ) );
} catch (WC_API_Client_Exception $e) {
echo $e->getMessage() . PHP_EOL;
echo $e->getCode() . PHP_EOL;
if ($e instanceof WC_API_Client_HTTP_Exception) {
print_r($e->get_request());
print_r($e->get_response());
}
}
خروجی کار ما در این قسمت یک فایل json میباشد که از طریق url :
http://sohannet.ir/app/test/a.php
قابل دسترسی است و در اپلیکیشن اندروید می بایست اطلاعات این فایل را گرفته و تجزیه (parse) و نمایش دهیم.
تصویر زیر بخشی از این فایل را نشان می دهد:
http://sohannet.ir/app/test/a.php
قابل دسترسی است و در اپلیکیشن اندروید می بایست اطلاعات این فایل را گرفته و تجزیه (parse) و نمایش دهیم.
تصویر زیر بخشی از این فایل را نشان می دهد:
چنانچه دقت کنید محصولات فروشگاه در آرایه ای به نام products قرار دارند و عنوان محصول در المان noscript و توضیحات محصول در المان denoscription و قیمت محصول در price و همچنین عکس محصول در المان src در آرایه ای به نام images قابل درسترسی است.
جیسون چیست ؟
جیسون(JSON) شیوهای است که با کمک آن اشیا و اطلاعات برنامهنویسی به متن قابل پردازش توسط رایانه و قابل فهم برای انسان تبدیل میشوند.
نکته مهم در این شیوه قابلیت فهم آسان توسط انسان است که در دیگر شیوهها مانند XML کمتر به آن توجه شده است.
تصویر زیر نمونه ای از Json می باشد که در آن employees نام آرایه می باشد و این آرایه دارای المان های firstname و lastname می باشد که هرکدام از عناصر آرایه درون {} قرار می گیرند و با , از هم جدا می شوند.[] نماد آرایه می باشد.
@AndroidDevelop
جیسون چیست ؟
جیسون(JSON) شیوهای است که با کمک آن اشیا و اطلاعات برنامهنویسی به متن قابل پردازش توسط رایانه و قابل فهم برای انسان تبدیل میشوند.
نکته مهم در این شیوه قابلیت فهم آسان توسط انسان است که در دیگر شیوهها مانند XML کمتر به آن توجه شده است.
تصویر زیر نمونه ای از Json می باشد که در آن employees نام آرایه می باشد و این آرایه دارای المان های firstname و lastname می باشد که هرکدام از عناصر آرایه درون {} قرار می گیرند و با , از هم جدا می شوند.[] نماد آرایه می باشد.
@AndroidDevelop
خب دوستان این قسمت تموم شد و در جلسه ی بعد سمت اندروید رو کامل آموزش می دیم که خیلی طولانی تره :) در آخرم pdf ش رو در کانال قرار می دیم 😊 .
⚠️این آموزش کاملا اختصاصی بوده و برای اولین بار از طریق کانال @AndroidDevelop به صورت رایگان نشر داده میشه هر گونه کپی برداری تنها با ذکر منبع بلامانع است.
⚠️این آموزش کاملا اختصاصی بوده و برای اولین بار از طریق کانال @AndroidDevelop به صورت رایگان نشر داده میشه هر گونه کپی برداری تنها با ذکر منبع بلامانع است.