ワードプレス便利帳

WordPressの使い方を初心者から上級者までわかりやすく画像で解説

© ワードプレス便利帳 All rights reserved.

av

Welcartのカテゴリー管理・新規登録ページをカスタマイズする

ECサイトをWordpressで運用するときに使われる『Welcart』というプラグイン。
私はこのプラグインが使いにくくて仕方がないです…。
ただ、WordPressは自由度やシステム系でも他のプラグインが豊富なので、他のCMSはちょっと。

ということで少しカスタマイズしてみました。

使いづらいところ

  1. 「商品(item)」の投稿タイプは「post」扱いで、カスタム投稿として扱えない。
  2. 「投稿」と同じ扱いなので、商品カテゴリーとブログカテゴリーがごちゃまぜになる。
  3. 商品登録画面・画像登録がわかりづらいし、カスタムフィールドが面倒。

上記を、解決とまではいかないながらも、
自分なりに納得する部分までカスタマイズしてみました。

結論から言えば、『「post」はすべてWelcartに譲る!』です。

①「商品(item)」の投稿タイプは「post」扱いで、カスタム投稿として独立で扱えない。

解決方法

1.”post”はWelcartのみで利用し、独立させる。
2.通常のブログは別のカスタム投稿・タクソノミーとしてpostからは分離させる。
3.紛らわしいので「投稿」からは新規追加できないようにする。

デフォルトの「投稿」と同じ投稿タイプなのでカスタムフィールドを追加するときに、「商品」だけに追加できない。(※カスタムフィールドの追加方法は後述)
「商品サイズ」や「担当者からのコメント」などのカスタムフィールドを作って「投稿」に反映するとブログや新着情報の入力画面にも表示されてしまって厄介です。

使わなければいいんですが、使わないものを表示させておくのも気にくわない。

1

▲ブログを書きたいだけなのに使わない「商品詳細ページ」という項目があるのは気持ち悪いし、わかりづらいです。

ということで、解決方法としては
「投稿(post)」はWelcartでのみ利用し、ブログや新着情報が必要な場合は別でカスタム投稿とタクソノミーで管理したほうがよさそうです。
そのため、「投稿」からは新規ページを追加できないようにしてしまいます。
使わないものは消すに限る。

ただ、unset($menu[5]);で「投稿」を丸ごと非表示にしてしまうと商品カテゴリーも追加できなくなってしまいます。
商品カテゴリーなどは「投稿(post)」に紐づいていて、Welcart内のメニューからは触れないので…。

そのため、「投稿」は名称を変えて、「カテゴリー管理」として生かします。
新規追加機能を失ってカテゴリーの追加・削除・編集だけが目的なので名称もわかりやすくしましょう。

//Welcartで「post」の名前を変更
function change_post_menu_label() {
	global $menu;
	global $submenu;
	$menu[5][0] = 'カテゴリー管理';
	$submenu['edit.php'][15][0] = '商品区分';
	$submenu['edit.php'][16][0] = '検索用タグ';
	
}
add_action( 'admin_menu', 'change_post_menu_label' );

function remove_menus() {
    global $submenu;
    // var_dump($submenu);
    unset($submenu['edit.php'][5]); // 投稿一覧
    unset($submenu['edit.php'][10]); // 投稿一覧
}
add_action('admin_menu', 'remove_menus');

(すみません、カスタム前の参考サイト様忘れました)

[5]→投稿一覧リンク削除
[10]→新規追加ページ削除
[15]→カテゴリーの表示名変更
[16]→タグの表示名変更

2

▲このような感じでカテゴリー管理のみの管理ページができます。

その他のタクソノミーもすべて投稿タイプ「post」に対して紐づけていけば、
「カテゴリー管理(post)」(元:投稿)にアクセスすれば
分類の種類を管理できるページの出来上がりです。

②「投稿」と同じ扱いなので、商品カテゴリーとブログカテゴリーがごちゃまぜになる。

解決方法
1.カテゴリー分割は、post_categotyは商品カテゴリー、ブログカテゴリーは新規タクソノミー。
2.カテゴリーの階層維持を施す。

これは先ほどの①を行うことで、商品カテゴリーはpostでのみ利用します。
ブログカテゴリーは新しくタクソノミーを作成することで解決します。

ただ、どのWordpressでもそうですが、チェックされたカテゴリーは階層を無視して上に表示されるのが不便です。
こちらもfunction.phpに少しだけ追記して入れ子の階層をそのまま維持します。

//階層維持
function solecolor_wp_terms_checklist_args( $args, $post_id ){
   if ( $args['checked_ontop'] !== false ){
        $args['checked_ontop'] = false;
   }
   return $args;
}
add_filter('wp_terms_checklist_args', 'solecolor_wp_terms_checklist_args',10,2);

3

▲デフォルト(左)とカスタマイズ後(右)
むしろこれが標準じゃないほうが不自然ですよね(笑)

③商品登録画面がわかりづらいし、カスタムフィールドが面倒。

解決方法
1.登録画面で区切りや見出しを追加して入力内容をわかりやすくする。
2.商品画像の登録がしやすいプラグインをいれる。
3.カスタムフィールドプラグインは「Smart Custom Field」

4

▲初期の商品登録画面

1.登録画面で区切りや見出しを追加して入力内容をわかりやすくする。

そもそもデフォルトの入力画面が、SKUのあたりなんて空欄が並びすぎて、どこに何を入力すればいいんだ問題。(これは本ページでは解決しません)
SKUも入力を終えたあとに「更新/追加する」ボタンを押してSKU部分だけ個別で保存してから、ページの保存をしないと消えてしまうんですよね。(ハハ)

また、「商品名」と「商品詳細ページタイトル」が分かれていることで「商品名」を変えても変えても商品ページの見出しは変わらないというループ。

ここは根本的な解決になっていませんが、「システム用」と「Web表示用」をはっきりさせることで、Web表示を変えるのはこちらだよ、と明らかにします。
こちらもfunction.phpに追記します。

//管理画面にCSS反映
function custom_admin_style() {
	?>

管理画面にCSSを反映させます。

5

▲Beforeでコンテンツの頭にブロックを表示させます。
もっと効率のいい方法もあるかもしれません(笑)
これだけでも多少は…違うはず。

2.商品画像の登録がしやすいプラグインをいれる。

デフォルトだと、商品登録画面から画像がアップロードできません。
画像名を「商品コード」と同じにして、Wordpressの「メディア」からアップロードすると自動認識してくれるというもの。
しかし、やっぱり変更・削除も不便です。

これに関してはプラグインを追加します。

「Image Uploader for Welcart 」
plugin

▲新規プラグインで検索して有効化します。

それだけで、こんな感じにアップロードが簡単になります。

e73793167dee42e78ad6831772816f9c
cb20fa4a31ae0b056f6b9b7472445880

▲アップロードボタン出現、何枚でも管理できます。

右側のリストとパネル式を入れ替えると「代替テキスト」の入力もできます。

3.カスタムフィールドプラグインは「Smart Custom Field」

デフォルトのカスタムフィールドを使おうとすると、このような不便なかたちで表示されます。

fac14ffe8e9af83120e232eff3c3a4b7

▲いちいち入力するものを選んで入力。
しかも使っていない他のプラグインのカスタムフィールドまで表示されたりするのでかなり迷惑。
選択ミスで違うものを入力したり、クライアントに手間をかけさせること間違いなし

ということで、カスタムフィールドにもプラグインを導入します。
オススメは「Smart Custom Field」。
この記事でも紹介していますが、ACFやTypesは表示されなかったり、
一度商品を保存してからでないと入力欄が表示されないことがあります。
「SCF」なら最初からビジュアル的に入力できるので便利ですね。

74339e2539615d5e78bddc23c31ff0e0

▲テキスト・テキストエリア・セレクトボックスなどなんでも使えるので便利!

Welcartの管理画面を少しでもわかりやすくカスタマイズするは以上です。
使いづらくてお困りの方はぜひお試しください。

  • このエントリーをはてなブックマークに追加

関連記事

  1. この記事へのコメントはありません。

  1. この記事へのトラックバックはありません。

a

201710/24

プラグインを使わない絞り込み機能【未選択時はすべて表示したい】

Wordpressの検索機能について チェックボックスに1つもチェックをいれなかったら 絞り込まずに全部表示。 「絞り込みの入…

gsvgadvg

20172/17

カスタムフィールドでカレンダーを自作【プラグインいらず】

カスタムフィールドだけでカレンダーを自作 プラグイン不要というのはカレンダープラグインを使わずという意味であってカスタムフィールド系のプラ…

20161102200516

201611/2

ループの中に罫線を追加する方法

ループ出力の中に区切り線を追加する ブログや製品・商品情報として、1行ごとに罫線を追加したい、というデザインもあると思います。 しかしル…

20161017154512

201610/17

『WordPress importer』と『Search Regex』を使って画像ごと記事の引越しを行う

『WordPress importer』について WordPressからWordPressへ投稿記事の引越しに関して、WordPressは…

bsfvgs1s

201610/6

WordPressの記事・固定ページを親ごとに出力する。

投稿・カスタム投稿・固定ページのループ出力について WordPressではquery_postsやWP_Queryなどのループを使うとペー…

ページ上部へ戻る