Play with Magento API SOAP V1

Sesuai judul, kali ini saya akan mencoba untuk berbagi tips dan trik bagaimana membuat Aplikasi di luar Magento tapi dengan mengandalkan API dari magento itu sendiri. Banyak sekali hal yang dapat kita lakukan pada penggunaan Magento API ini, seperti dijelaskan disini “The Magento SOAP v1 API provides you with the ability to manage your eCommerce stores by providing calls for working with resources such as customers, categories, products, and sales orders. It also allows you to manage shopping carts and inventory.” Kita juga bisa mengembangkan aplikasi iOS dan Android dengan menggunakan API SOAP method ini.

Koneksi

Setting SOAP account
Hal pertama yang harus dilakukan adalah membuat koneksi antara aplikasi yang kita buat dengan API dari magento. Untuk itu kita membutuhkan SOAP account yang terintegrasi dan mendapatkan role-role seperti yang kita inginkan. Caranya :

  1. Login ke backend magento
  2. System -> Web Services -> SOAP/XML-RPC – Roles
  3. Add New Role
  4. Resource Access -> All -> Save Role
  5. System -> Web Services -> SOAP/XML-RPC – Users
  6. Add New User
  7. Pada Tab ‘User Role’ pilih role yang kita buat tadi
  8. Save User

Sekarang kita sudah mempunyai username dan password yang akan kita gunakan untuk login nanti.

Login dengan SOAP account
Masuk ke server/hosting aplikasi anda, dan buat sebuah file baru dengan nama magehost.php. Kita akan membuat simple script untuk login dengan SOAP account.

$config=array();
$config["hostname"] = "namahost.com"; //ini adalah host magento anda
$config["login"] = "apiuser"; //ini adalah user API anda
$config["password"] = "apipassword"; //ini adalah password magento anda

$proxy = new SoapClient('http://'.$config["hostname"].'/index.php/api/soap/?wsdl', array('trace'=>1));
$sessionId = $proxy->login($config["login"], $config["password"]);

Tahan sampai disini, kemudian kita akan membuat sebuah file lagi untuk testing koneksi dan script kita apakah sukses atau gagal.

Get Customer via API SOAP
Untuk testing, kita akan mencoba memanggil data customer dengan sudah mengetahui ID dari customer tersebut. Buat file dengan nama getcustomer.php, dan isikan script di bawah :

require_once('magehost.php');
$customerId = '2';
$result = $proxy->call($sessionId, 'customer.info', $customerId);
var_dump($result);

Buka browser, masukkan url : namahost.com/getcustomer.php . Jika sukses data-data customer akan tampil pada browser anda dan jika gagal akan tampil juga pesan gagal. Pesan gagal bisa dilihat disini

Diatas adalah contoh yang sangat sederhana sekali pada penggunaan Magento API SOAP. Pada tulisan berikutnya kita akan mencoba hal yang lebih menantang yaitu memangil list customer dan memanfaatkan jQuery Autocomplete.

Semoga membantu 😀

Magento : Implementasi jQuery Supersized Plugin Pada Spesifik CMS Page

Seperti judul, pada post kali ini sy akan menjelaskan bagaimana implementasi jQuery supersized pada halaman CMS. Bagi yg belum tau apa itu jQuery supersized bisa dilihat disini.
Singkatnya, jQuery supersized adalah plugin jQuery yang memungkinkan kita untuk memasang gambar/slider menjadi background sebuah website.

Pertama download plugin disini.
Kemudian extract file dan akan terdapat beberapa file dan folder.
Disini saya menggunakan jQuery Supersized v 3.2.7.

Upload supersized.3.2.7.min.js ke magento anda pada folder js->jquery->supersized.3.2.7.min
Pada skin->frontend->default->theme_anda->css->buat folder dengan nama ‘supersized’ , kemudian Upload kan folder css dan img pada superisized source anda ke folder ‘supersized’ yang sudah dibuat tadi.
Login ke magento backend -> Clear Cache
Buat halaman CMS dengan nama ‘Test Supersized’ (atau terserah anda), pada tab ‘Design’ masukkan script berikut pada kolom ‘Layout Update XML’

<reference name="head">
	<action method="addJs"><script>jquery/supersized.3.2.7.min.js</script></action>
	<action method="addCss"><stylesheet>css/supersized/css/supersized.css</stylesheet></action>
</reference>

Disini saya asumsikan, anda sudah meload jQuery pada Magento anda. Atau jika belum anda bisa download jQuery disini. Kemudian, upload ke magento anda pada folder js->jquery atau untuk lebih jelasnya anda bisa baca pada post berikut : Menggunakan jQuery di Magento

Jika semua jQuery sudah berhasil di load (Cek menggunakan inspect element pada browser), sekarang buat sebuah file gambar (.jpg/.png) dengan ukuran maksimal 1920px x 1080px.
Upload pada halaman CMS yg anda buat tadi (Insert Image -> Insert File).
Kemudian anda akan mendapat link seperti berikut -> {{media url=”wysiwyg/home_bg.jpg”}}
home_bg.jpg adalah file gambar yg sudah dibuat tadi.

Kemudian masukkan script berikut :

<script type="text/javascript">
	jQuery.noConflict();
	jQuery(document).ready(function() {

		jQuery.supersized({
			autoplay : 0,    // set 1 autoplay run
			slides  :  	[ 
				{image : "{{media url="wysiwyg/home_bg.jpg"}}", title : 'Image Credit: Test Shop'}
			]
		});
	});	
</script>

Pada script diatas background hanya 1 gambar, jika anda ingin membuat menjadi sebuah slider anda bisa membuatnya dengan menggunakan script dibawah :

<script type="text/javascript">
	jQuery.noConflict();
	jQuery(document).ready(function() {

		jQuery.supersized({
			autoplay : 0,    // set 1 autoplay run
			slides  :  	[ 
				{image : "{{media url="wysiwyg/home_bg.jpg"}}", title : 'Image Credit: Test Shop'},
				{image : "{{media url="wysiwyg/home_bg1.jpg"}}", title : 'Image Credit: Test Shop'},
				{image : "{{media url="wysiwyg/home_bg2.jpg"}}", title : 'Image Credit: Test Shop'},
				{image : "{{media url="wysiwyg/home_bg3.jpg"}}", title : 'Image Credit: Test Shop'}
			]
		});
	});	
</script>

Tapi sebelumnya upload dulu semua gambar yang akan digunakan.

Pada saat test dan jika sukses, gambar akan tampil secara penuh menjadi background website anda. Dan jika anda perhatikan dengan menggunakan inspect element akan muncul sebuah id bernama supersized tepat sebelum tag body berakhir

That’s it! Selamat Mencoba 😀

Magento : Static Block di Halaman CMS

Hi, pertama2 saya ingin mengucapkan selamat tahun baru 2014 untuk semua. Wish you had a great night new year!!
Semoga 2014 menjadi tahun yang membuat kita menjadi lebih baik, lebih fokus, dan lebih bisa menghasilkan ‘Good Product’ dari tahun sebelumnya.
Post ini terasa spesial karena menjadi post pertama di blog AW Bali Web di tahun 2014 ini. Walaupun post nya hanya berupa code snippet tentunya 🙂

Berikut adalah cara untuk memanggil static block pada CMS page.

1. Buat halaman CMS page
2. Buat static block yang ingin kita pasang. Misalnya kita buat static block dengan Block Title ‘Test Block’ dan identifier ‘test_block’
3. Buka halaman CMS dan pasang kode berikut untuk memanggil static block ‘Test Block’

{{block type="cms/block" block_id="test_block" template="cms/content.phtml"}}

Untuk penggunaan static block di .phtml file bisa dilihat disini.

Selesai. Semoga membantu 😀

Magento Newsletter Subscriber Form di CMS Page

Pada magento kita diperbolehkan untuk menggunakan block newsletter form subscriber pada CMS yang kita inginkan. Cukup menggunakan kode block berikut :

{{block type="newsletter/subscribe" template="newsletter/subscribe.phtml"}}

Jika ingin mengedit tampilannya, dapat mengedit file phtml di app->design->frontend->default->nama themes->neswletter->subscribe.phtml

Semoga membantu 😀

jQuery Background Animate Color

Bagaimana membuat jQuery Background Animate Color.

Merasa bosan ga seh dengan kemampuan CSS 2 untuk fitur hover color yang kurang smooth? Kalo yang kurang paham maksud saya ini contoh hover dengan CSS. Jadi ketika box di hover (tempatkan cursor diatas box) warnanya dari hitam menjadi biru.

Kurang smooth ya? Bagaimana kalo seperti yg dibawah?

Lebih bagus bukan?
Untuk hover yang smooth seperti contoh ke dua menggunakan jQuery UI.
Penggunaannya adalah sebagai berikut :

1. Include jQuery Library pada head

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js" type="text/javascript">

2. Include jQuery Background Animate Color pada head

<script src="http://code.jquery.com/ui/1.10.3/jquery-ui.js"></script>

3. Buat CSS untuk box

<!-- CSS Box -->
.jQbox {width:150px; height:150px; background-color:#000; margin:20px 0;}

4. Buat HTML untuk Box

<!-- div box -->
<div class="jQbox">
</div>

5. Include script hover pada head atau pada halaman spesifik yang anda inginkan.

<!-- script hover -->
<script type="text/javascript">
	$(document).ready(function(){
		$('.jQbox').hover( //.jQbox adalah nama class box. Ganti dengan nama id atau class anda
			function(){
				$(this).animate({backgroundColor: '#06F'});
			},
			function(){
				$(this).animate({backgroundColor: '#000'});
			}
		); 
	});
</script>

Pada pengaplikasiannya ada banyak metode dan jquery selain jQuery UI untuk membuat animate background seperti diatas.
Jika menggunakan CSS3 maka hanya memerlukan ‘transition’ saja tanpa jQuery.

Semoga membantu 😀