net shop admin 1

Pocket

WordPressでネットショップを開設するのに、net shop adminがある。
これは税込み52,500円の有料プラグインだが、様々なタイプのネットショップに利用できる。
ただし、net shop adminのみを購入すると、決済は限られてしまう。PayPalイプシロンなどのクレジットカード決済サービスが必要な場合は、別途決済モジュールを購入する必要がある。
その基本的な設定の方法を紹介していきたいと思う。

net shop adminを購入する

net shop adminをcmswp.jpから購入する。
購入すると、cmswp.jpのユーザーページに、ネットショップ管理プラグイン(フロントエンドユーザー管理プラグイン付き)とフロントエンドユーザー管理プラグインのダウンロードリンクが表示される。それらをダウンロードする。

サーバーへアップロードし、有効にする

ダウンロードしたファイルを解凍し、設置しているWordPressの、/wp-contents/plugins にアップロードする。
アップロード後、プラグインを有効にする。

商品登録前の準備

商品を登録する前に準備すること:

  • 商品をどのように扱うか post / カスタム投稿タイプを使うか
  • 商品のカテゴリーを登録する

この例では、商品を「item」というカスタム投稿タイプを使い、カテゴリーを「item_cat」とする場合を想定する。
functions.phpに

function custom_post_item() {
	register_post_type( 'item',
		array('labels' => array(
			'name' => '商品',
			'add_new' => 'Add New 商品',
			'add_new_item' => 'Add New 商品',
			), /* end of arrays */
			'public' => true,
			'publicly_queryable' => true,
			'exclude_from_search' => false,
			'show_ui' => true,
			'query_var' => true,
			'menu_position' => 8,
#			'menu_icon' => get_stylesheet_directory_uri() . '/library/images/custom-post-icon.png',
			'rewrite' => true,
			'capability_type' => 'post',
			'hierarchical' => false,
			'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'excerpt', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'sticky')
	 	)
	);
	register_taxonomy_for_object_type('item_cat', 'item');
}
	add_action( 'init', 'custom_post_item');
    register_taxonomy( 'item_cat',
    	array('item'),
    	array('hierarchical' => true,
    		'labels' => array(
    			'name' => '商品カテゴリー',
    			'singular_name' => '商品カテゴリー',
			'search_items' =>  'Search 商品カテゴリー' ),
    			'all_items' => '全商品カテゴリー',
    		),
    		'show_ui' => true,
    		'query_var' => true,
    	)
    );

と記述する。他にも必要に応じて(タグをつける場合など)register_post_type()をいじる。
あるいは、Custom Post Type UIというプラグインを使ってもできる。試してみたところ、こっちのほうがずっと簡単。

よくあるIssues

Q. ショッピングカートが表示されない
A. ネットショップ→オプション設定 → 環境設定 → ショッピングカートURLを確認する。終わりの / がないだけでもちゃんとカートは表示されないので注意。
また、設定 → パーマリンク設定 も /%category%/%postname%/ となっていることを確認する。

この記事を書いた人