Konoha
投稿の際は下記の情報をお書き添えください。
-------------------------------------------
WordPress のバージョン:(例 6.0.2)
Welcart のバージョン:(例 2.8.1)
PHP のバージョン:(例 8.0)
Welcart専用の拡張プラグインとバージョン:(例 DL Seller 3.4.1、SKU Select 1.4.2)
ご利用の親テーマとバージョン :(例 Welcart Basic 1.7.1)
ご利用の子テーマとバージョン :(例 Welcart Beldad 1.4)
症状を確認したブラウザ:
サーバー【重要】:(会社名、サービス名)
--------------------------------------------
フォーラムへの返信
-
投稿者投稿
-
Konoha参加者
maiさま
上記はご指摘のとおりhtml5では効かないかもしれません。(expiresが抜けてましたが…)
phpならご察しの通り、
header('Cache-Control:no-cache,no-store,must-revalidate,max-age=0'); header('Pragma:no-cache'); header('Expires: Tue, 1 Jan 2019 00:00:00 GMT'); header('Last-Modified:' . gmdate( 'D, d M Y H:i:s' ) . 'GMT'); header('Cache-Control:pre-check=0,post-check=0',false);
こんな感じのをusces-cartやusces-memberに指定するといいかもしれませんね。
Xserverから回答頂けるといいですね♪
Konoha参加者こんにちわ。
Xアクセラレータ Ver.2が出来てから、色々ありましたが、
私は現在このように設定しています。<?php if(is_page('usces-cart') || is_page('usces-member')){ ?> <meta name="robots" content="noindex,nofollow,noarchive,noodp,noydir" /> <meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Cache-Control" content="no-cache"> <?php } ?>
カートページとメンバーページではキャッシュもインデックスもしない設定にしています。
今のところ、私の環境では問題はでていません。ご参考程度に。
Konoha参加者sagawaさま
ありがとうございます。
とても助かります。よろしくお願いいたします。
Konoha参加者sagawaさま
そうだったのですね。
ありがとうございます。
Konoha参加者確かにリカバリーモードで、
最新バージョンにすればエラーは出なくなりますね!Konoha参加者Welcartのアップデートがうまく取得できないようです。
https://endpoint.welcart.org
そのURLが正常にアクセスできない、という情報もありますので、
それも影響していると思います。早急に復旧したい場合には
wp-content/plugins/usc-e-shop/includes/update_check.php
44行目あたりをみて$response = wp_remote_post( USCES_UPDATE_INFO_URL.'/update_info/info_api.php', $options ); $wcproducts = (array)json_decode($response['body']);
の部分を以下に
$response = wp_remote_post( USCES_UPDATE_INFO_URL.'/update_info/info_api.php', $options ); if(!is_array($response)){ return; } $wcproducts = (array)json_decode($response['body']);
したらどうかしら?
Konoha参加者maiさま
なるほど…商品データのカスタムフィールドではなく、
投稿・固定ページのカスタムフィールドを取得したい、
ということですか。usces_assistance_item()の中で、$postを商品データに書き換えてしまっているので、
$post->IDは当然ながら商品ですものね。ぱっと思いつくのは、
usces_filter_assistance_item_listフック内で、$queried_object= get_queried_object(); if(get_post_meta($queried_object->ID,'test_text',true)): echo 'test'; endif;
とかかしら?
また意図が違っていたらすみません。
Konoha参加者maiさま
たとえば
$item_name = get_post_meta($post->ID, '_itemName', true); //商品名
は取得できて
$test_text = get_post_meta($post->ID, 'test_text', true); //独自
は取得できないのですよね?
もしかしたら
そのカスタムフィールドのキー名が違っているのではないかしら?Smart Custom Fieldsを使用とのことですが、
フィールド設定でのキー名(名前)にスペースが入ってしまっているとか…
「繰り返し」の設定をしているとか…私も同様にSCFを使用しているので、
add_filter('usces_filter_assistance_item_list', 'my_format_assistance_item_list',10,2); function my_format_assistance_item_list($list, $post) { if(get_post_meta($post->ID,'test_text',true)): echo 'test'; endif; return $list; }
で確認しましたが、特に問題なく表示されました。
Konoha参加者横から失礼します。
ちょっと思ったのですが…
usces_filter_assistance_item_listのフックは、
echo apply_filters('usces_filter_assistance_item_list', $list, $post);
htmlのデータを変数(デフォルトでは$list)で返して、そのまま$listをechoしてますよね。
$strで新しくhtmlを作り直しているのでしたら、
一般的には$str = '<li>'; if(get_post_meta($post->ID, 'test_text', true)): $str .= 'test'; endif; $str .= '</li>'; //~省略 return $str; //最後にデータを戻す
というように、カスタムフィールドのデータを変数に入れる記述になるのではないでしょうか?
htmlを変数に格納して返しているので、その場でechoは…と思ったのですが…検討違いでしたらすみません。
- この返信は4年、 1ヶ月前にKonohaが編集しました。
Konoha参加者emuninim22様
そうでしたか…
お役に立てず申し訳ございません。wordpress.comのサイトをみると、
プラグインのインストールはビジネス・eコマースプランでのみ出来るようですが…https://ja.wordpress.com/pricing/
そのあたりは問題ないですよね。
あとは、現在インストールしている他のプラグインを一つずつ無効しながら確認してみるとか…
ご参考までに。
Konoha参加者Konoha参加者>emuninim22様
私はプラグインを使用していませんので、何とも言えませんが、
ご使用のDL Sellerも今回のWordpress5.5の件でアップデート(3.0.14)されているようです。
そちらはいかがでしょうか?Welcartは強制停止してもデータは消えない仕様だったと思います…
明確なお返事が出来ず申し訳ございません。
- この返信は4年、 3ヶ月前にKonohaが編集しました。
Konoha参加者>emuninim22様
この問題に関しましては、新しいバージョンのWelcartアップデートにより修正されました。
https://www.welcart.com/archives/12260.html
アップデート後、私の方では問題なく画面遷移しています。
Konoha参加者tacos様
追記ありがとうございます。Wordpress 5.5になってから、仕様が色々変わっていますね。
そのため、フロント側でも様々な箇所で不具合がでるようです。ですので、バージョンアップはしない方がいいと思います。
もし5.5にしてしまった方は、
ひとまずtacos様のおっしゃるとおり、5.4.2にダウングレードをするのがいいと思います。Konoha参加者私も同様の事象になりました。
こちらもWordpress 5.5による不具合と思われます。素人的な予測ですが…
おそらく、新規会員登録やパスワード処理で使われているURLの引数が?page=newmember
?page=lostmemberpasswordなど、既にWordpress上で予約(使用)されている引数を使用していて、
その引数をGETで使用すると、パーマリンクから消されてしまうのでは…
と考えています。
試しに「page=」を「memberpage=」などに変更したら画面遷移しましたので。もしかしたらWordpress 5.5のセキュリティ強化の一環なのかもしれませんね。
的外れでしたらすみません。
-
投稿者投稿