すみません。
single_item.php内の記述を参考に、直接この中へsingle.phpに記述していたhtml等を組み替えする事で対処できました。
カスタムフィールド部分はどうなるのかで、時間的に躊躇していたのですが
↓部分を参考に
esc_html(usces_the_itemName( ‘return’ ))
↓
esc_html(post_custom(‘カスタムフィールドキー名’))
これで無事に表示されました。(あってるのかな?)
いやはや、失礼いたします。
こんにちは。回答ありがとうございました。
さっそくfunctions.phpに教えていただいたコードを追加して試してみたのですが、表示が変わりません。テンプレートタグは
<?php usces_have_zaiko_anyone(); ?>
でよかったでしょうか。
もとのまま
<?php usces_the_itemZaiko(); ?>
でも試したのですが表示は変わらずでした。
原因として考えられることはありますか?
いつもお世話になっております。もしよろしければ教えてください。
商品一覧ページでそれぞれの商品サムネイルの下に「在庫状態」(在庫のあるなし)表示を追加しようとしています。
テンプレートタグ「usces_the_itemZaiko()」を使って「在庫あり」または「売切れ」という表示をさせており、非常に便利だと喜んでいたのですが、複数SKUを持つ商品に関しては最初のSKUの在庫状態を表示していることに気づきました。これだと在庫のあるバリエーション商品もあるのに最初の商品が在庫切れていると「売切れ」表示になってしまいます。
これをひとつでも在庫ありのSKUがあれば、「在庫あり」表示にすることはできないでしょうか。
なんとなく複雑な気もしますので、あるいは複数SKUのあるものは在庫状態そのものを表示しないようにできればと思います。
ご多忙のところすみませんが、ご教示くださいますようよろしくお願いいたします。
Welcart のバージョン:9.0.4
症状を確認したブラウザ:Fire Fox3
サーバー(会社名、サービス名):ロリポップ
SSLの利用: 無し
WordPress のパーマリンク設定:/%category%/%postname%.html
こんにちは。
間もなくWelcart 1.0-beta が公開されますが、これを使いますと商品詳細ページのレイアウト変更が比較的楽に行なえます。現在構築中であればご利用をお勧めします。
既存のままで行く場合はフィルターフックに充てて画像を埋め込んでいく事になります。
>商品コード+SKUコード で名前をつけているのですが
これはメディアのタイトルをその様に指定してるということでよろしいですか?
WordPress の関数にwp_get_attachment_image($post_id) といのがあります。イメージタグを出力してくれるものですが、これには引数にポストIDを入れなくてはいけません。そこで、メディアのタイトルからそのポストIDを割り出してこの関数に渡してやれば望みの画像が表示されます。
さて、商品コードとSKUコードの取得はできていますでしょうか。
ループの中では、商品コードはusces_the_itemCode( ‘return’ )、
SKUコードは、$usces->itemsku となります。
尚、このSKUコードは、v1.0 ではusces_the_itemSku( ‘return’ )で取得できます。
動作に関するご質問の場合は必ずご記入ください。
Welcart のバージョン:0.9
症状を確認したブラウザ:firefox
サーバー(会社名、サービス名):ローカル
SSLの利用: 無し | 専用SSL | 共用SSL
WordPress のパーマリンク設定:カスタム
お世話になります。
複数のskuについてご質問です。
既存のテーマにて商品ページを表示するため
single_item.phpではなく、既存テーマsingle.phpに下記を
入力して表示させようとしましたが、3つあるsku名のうり
2つ目と3つ目しか表示されません。
どこが間違っているのでしょうか?
<?php while (usces_have_skus()): ?>
<?php usces_the_itemSkuDisp(); ?>
<div class=”price”><?php _e(‘$’,’usces’); ?><?php usces_the_itemPrice(); ?><?php usces_guid_tax(); ?></div>
<?php endwhile; ?>
宜しくお願いいたします
こんにちは。
global $usces のメンバー関数にget_pictids($item_code) と言うものが有ります。$item_code は商品コードです。その商品にメイン画像もサブ画像も無かった場合はNULL を返します。
また、テンプレートタグusces_the_itemImageURL($number = 0, $out = ” ) はWordPress のwp_get_attachment_url() を使用しています。該当するメディアが無かった場合wp_get_attachment_url() が何を返すのかを調べることで有無を判定できるのではないかと思います。
こんにちは。
usces_the_itemSkuButton($value, $type=0, $out = ”)というテンプレートタグがカートへ投入するボタンを生成しています。
ただ、在庫数のチェックなどはJavaScript が行なっていますのでそれだけではうまく行かないかもしれません。
このテンプレートタグの使い方はsingle_item.php を参考にしてください。
お世話になっております。
これまで使用してきたWPテーマ(archive.php)のループ内でWelcartテンプレートタグ(usces_the_itemPrice等)を使用したところ、売価が常に「0」で表示され、実際の値が表示されません。
archive.phpでは使用できないのでしょうか。
Welcart のバージョン:0.9.1
症状を確認したブラウザ:Firefox, Google Chrome
サーバー(会社名、サービス名):heteml
SSLの利用: 共用SSL
WordPress のパーリンク設定:%category%/%post_id%
Welcart のバージョン:0.9.1
症状を確認したブラウザ:Firefox 3.6
SSLの利用: 無し
WordPress のパーリンク設定:/%category%/%postname%/
いつもお世話になっております。
今回は商品のサブ画像のサイズ変更について質問させていただきます。
[解決済み] 詳細ページのサムネイルのサイズについて(サブ画像)を参考に、サブ画像をトリミングされないようにしたいと思ったのですが、うまくいきませんでした。
現状では、usces_the_itemImage($id, 137, 200, $post, 'return')
の引数を150以上に変更しても画面には反映されず、正方形で表示され画像も歪んでいます。
また、メディア設定で「サムネイルを実寸法にトリミングする」のチェックも外してあります。
更に、ブラウザでソースをチェックしてみたところ
<img width="200" height="150" src="http://www.画像までのパス" class="attachment-200x200" alt="sn-001" title="画像" />
となっていて画面上では反映されてませんが、ソース上は変更されているようです。
上記の方法以外に対策はあるでしょうか?
それとも何か問題があるのでしょうか?
こんにちは。
ベストセラーウィジェットにアイコン(gold.png)を表示させています。そこでURLの部分をthemeフォルダまでのパスを取る関数bloginfo('template_directory')
で置き換えようと思ったのですが何度やってもうまく表示されないようです。
ただ単に書き方が間違っているのかもしれませんが、アドバイス頂けないでしょうか?
add_filter('usces_filter_bestseller', 'my_bestseller_func', 10, 3);
function my_bestseller_func() {
$args = func_get_args();
list($html, $post_id, $index) = $args;
$post = get_post($post_id);
if ( $index == 0 ){
$img = bloginfo('template_directory').'images/gold.png';
} elseif ( $index == 1 ){
$img = bloginfo('template_directory').'images/silver.png';
} elseif ($index == 2){
$img = bloginfo('template_directory').'images/bronze.png';
} else {
}
$list = usces_the_itemImage(0, 40, 40, $post, 'return' ) . '<img src="' . $img . '" />
<li>第' . ($index+1) . '位<a href="' . get_permalink($post_id) . '">' . $post->post_title . '</a></li>
';
return $list;
}
このように記述してみましたが、コードがそのまま出力されてしまいました。
こんにちは。
アドバイスを頂きphpを勉強しながら試行錯誤した結果
add_filter('usces_filter_bestseller', 'my_bestseller_func', 10, 3);
function my_bestseller_func() {
$args = func_get_args();
list($html, $post_id, $index) = $args;
$post = get_post($post_id);
if ( $index == 0 ){
$img = 'http://sample.jp/wordpress/wp-content/themes/welcart_default/images/gold.png';
} elseif ( $index == 1 ){
$img = 'http://sample.jp/wordpress/wp-content/themes/welcart_default/images/silver.png';
} elseif ($index == 2){
$img = 'http://sample.jp/wordpress/wp-content/themes/welcart_default/images/bronze.png';
} else {
}
$list = usces_the_itemImage(0, 40, 40, $post, 'return' ) . '<img src="' . $img . '" />
<li>第' . ($index+1) . '位<a href="' . get_permalink($post_id) . '">' . $post->post_title . '</a></li>
';
return $list;
}
このようにしたら順位、商品画像、アイコン全て表示されるようになりました。
更に質問なのですが、
URLの部分をthemeフォルダまでのパスを取る関数bloginfo('template_directory')
で置き換えようと思ったのですが何度やってもうまく表示されないようです。
ただ単に書き方が間違っているのかもしれませんが、アドバイス頂けないでしょうか?
if ( $index == 0 ){
$img = bloginfo('template_directory') .'images/gold.png';
このように記述していました。
こんにちは。
本体を改造することなくimg-alt を変更する事は可能です。ただフックを使用しますので、WordPress に慣れていないとちょっと戸惑うかもしれません。この技術はWordPress のカスタマイズを行なう上で避けては通れませんので、これを機にマスターされると良いかと思います。こちらの資料を参考にしてください。
https://www.welcart.com/community/archives/1697
http://wpdocs.sourceforge.jp/%E3%83%97%E3%83%A9%E3%82%B0%E3%82%A4%E3%83%B3_API
Welcart のimg タグを出力するテンプレートタグ(usces_the_itemImage)はusc-e-shop/functions/template_func.php にあります。それを見ていただくと’usces_filter_img_alt’というフックが有るのが分かると思います。そのフックに充ててフィルターをかけてやることで、自由にalt を設定できます。
nanbu様
お世話になっております。
全てのjavascriptの読み込みを消して、
既存のテーマを利用したショップの作り方 その2
のコードをコピペして動作確認してもカートボタンは反応しません。
Welcart Defaultのテーマに戻して確認してみると、カートボタンは動作しました。
私のカスタマイズがどこかおかしいのか、
在庫0の状態でもカートボタンは表示されています。
<?php usces_the_itemSkuButton(); ?>
この記述でボタンを表示しております。
すみません、こういう事例はとても検証が大変だと思いますので、
有料サポートに登録します。
どうかお力をお貸しください。
アドバイスありがとうございます。
このように記述したら両方表示されるようになりました。
add_filter('usces_filter_bestseller', 'my_bestseller_func', 10, 3);
function my_bestseller_func() {
$args = func_get_args();
list($html, $post_id, $index) = $args;
$post = get_post($post_id);
$list = usces_the_itemImage(0, 40, 40, $post, 'return' ) . '<li>第' . ($index+1) . '位<a href="' . get_permalink($post_id) . '">' . $post->post_title . '</a></li>';
return $list;
}
もう一つ質問なのですが、
この順位をテキストの代わりに画像にするにはどうしたらよいでしょうか?
仮に、上位3位まで表示するとして、
1位には金の王冠アイコン(gold.png)
2位には銀の王冠アイコン(silver.png)
3位には銅の王冠アイコン(bronze.png)
といった感じです。
たびたび失礼いたします。
現在<?php usces_list_bestseller(10, 31); ?>
で普通のページにベストセラーを表示しているのですが、
その中にはすでに在庫切れのものもあります。
在庫状況を表示しようと、usces_the_itemZaiko();を
function.phpのfunction my_bestseller()関数内に記述してみましたが、表示されません。
何か方法がありましたら、教えていただきたく、宜しくお願いいたします。