SmartOSCはMagento(マジェント)のプラットフォームの 使用に特化しており、その完全な柔軟性に基 づいて、マジェントがコンテンツ、機能、 及びより良い体験を完全に制御できます。

18 May 2021 / Published in Magento
今年のマジェントコミュニティにとって何が大きな意味を持つかを知る人がいるとすれば、それはマジェントの第一人者たちでしょう。この記事では、Eコマース業界の今年のトレンドを明らかにしていますが、既存のトレンド、つまりヘッドレスコマースのトレンドとプログレッシブウェブアプリの動きに新しい顔ぶれが登場しています。 皆さんをお待たせすることなく、この全体像を掘り下げていきましょう。 1.ヘッドレスコマース マジェント自身が強く推奨しているヘッドレスコマースは、最近のトレンドであり、動きが激しく要求の厳しい今日のEコマースの世界に対応するために、ヘッドレスアーキテクチャによる堅牢なコンテンツ配信と柔軟性を必要とするオンラインストアに特に適しています。 ヘッドレスコマースとは、サイトのフロントエンドがEコマースプラットフォームやその他のシステムから切り離されている状態を指します。プレゼンテーション層」(フロントエンド)と「コマース層」(バックエンド)が分離されています。そのため、小売業者はリッチコンテンツやユーザーエクスペリエンスをより柔軟に提供できるようになります。その結果、従来のモノリシックなアーキテクチャでは難しかった、Webサイトのコンテンツへの幅広いチャネルからのアクセスが可能になります。 トラディショナル・コマースとヘッドレス・コマースの比較 2.プログレッシブウェブアプリ(PWA) 最近の典型的なショッピング体験は、1つのチャネルに限定されるものではありません。買い物客は、その利便性のために、1つのデバイスから別のデバイスへと移動し、その結果、大多数の買い物客にとってモバイルが開始デバイスであり終了デバイスとなっています。 このような理由から、プログレッシブウェブアプリ(PWA)は、すべてのデバイスで同じショッピング体験を提供したいと考えているEコマースストアにとって、新たなアプローチとして注目されているのです。PWAが提供するこの一貫性は、以前はネイティブアプリ専用だった内蔵機能と相まって、プログレッシブ化したブランドがコンバージョン率を大幅に向上させ、収益を急上昇させた主な理由です。 「PWAは新しい技術であり、開発者が常にバージョンを向上させていく中で、年々成長と変化を遂げていくことは必至であり、ブランドはモバイル戦略の一環としてPWAを採用するようになっています。」- Magento Commerceの戦略担当副社長、Peter Sheldon氏の言葉です。 3.オーグメンテッド・リアリティ オーグメンテッド・リアリティというと、近未来的な最先端技術のように思われがちで、実際にはあまり応用できないものだと思われています。しかし、どうやら2021年は、オーグメンテッド・リアリティが輝く年になりそうです。 今年、あなたが(潜在的に)見逃しているのは、ARが店頭でのナビゲーションやマニュアル、さらにはリアルタイムでの試着など、すでに日常生活の中で一歩一歩置き換えられているという事実です。 拡張現実(Augmented Reality)によるバーチャルな商品の試着 4.即時購入 ワンクリックチェックアウトは、既存のお客様がより簡単に、より速く買い物ができるようにすることで、リピート購入を促進することが証明されています。アマゾンのワンクリックチェックアウトプロセスの独占権が失効したため、マジェントはこの合理化された体験をいち早く採用しました。Magento 2.2.2では、「Instant Purchase」と称して、Amazonのようなチェックアウトの利便性を無料で提供しています。競争力を維持するためのより良い方法を提供するこの新しい標準機能は、Magentoのマーチャントの間でトレンドになることが期待されています。 以前に保存した請求、配送、支払いの詳細を使用してチェックアウト手順をスキップすると、顧客はシングルクリックで注文できます。 顧客がしなければならないのは、インスタント購入ボタンを押して、同じページに表示されるポップアップで注文を確認することだけです。 カートやチェックアウトページへの不要なアクセスを排除することで、注文完了までの時間を90%以上短縮できるため、チェックアウトフローからの摩擦を減らすことができるだけでなく、顧客間の衝動買いを引き起こすこともできます。 5.人工知能 未来は人工知能です。機械学習の可能性はeコマースの1つの側面に限定されないため、これはあらゆるものからあらゆるものに及びます。 AIを活用したシステムを導入すると、次の機能が実現します。 カスタマーケア:チャットボットは、顧客の最も一般的な質問を学習し、それに応じて回答するのが機械の仕事であるため、顧客のニーズのほとんどすべてを処理します。 顧客が尋ねる可能性のあるより具体的なタイプの質問については、ボットは顧客をカスタマーサポートチームにリダイレクトしてさらに問い合わせます。 実際、チャットボットのパフォーマンスが高すぎるため、話している相手が本物かどうかを判断するために追加の対策が必要になることがまれにあります。 パーソナライゼーション:2021年のお客様は、誰もが同じニーズを持っているわけではないので、典型的なブラウジング体験を求めなくなりました。このような考え方から、ストリーミングサービスや店舗でよく見られるパーソナライズされた体験が生まれ、パーソナライズされた提案がプラットフォームを成功させる鍵となります。 画像検索:最新の機械学習アルゴリズムを用いて、お客様が欲しい商品を既存のデータから検索して見つけることができます。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
14 May 2021 / Published in Magento, TechBlogs
Magento 2.3.x 以下のバージョンでは、バルクアクションが起動しないという問題がよく発生していました。このバグはMagentoの開発ブランチで修正されていますが、その修正をMagentoストアに実装するには少々の手作業が必要です。 この記事では、このバグを掘り下げて、この問題に対処するための解決策をご提案します。 関連トピック:Magento 2 UIフォームの作成 1.再現の手順 これは実際には簡単に再現できるバグです。 1.1. Magento 2 の管理画面で、「カタログ(Catalog)」 > 「商品(Products)」を開きます。 1.2. 「すべての製品(All Products)」を選択し、「アクション」で「属性の更新(Update attributes)」を選択します。 1.3. 商品の属性を更新します。ここでは、商品説明を更新する例を紹介します。 1.4. 「保存」をクリックすると、複数の製品を選択したにもかかわらず、0件のアイテムがアップデートの予定になっていることがわかります。 また、「Bulk Actions Log」(「System」→「Action Logs」→「Bulk Actions」)を確認すると、以前に適用したバルクアクションのジョブが開始されていないことがわかります。 2.解決方法 このバグを回避するにはいくつかの方法があります。ここでは、このバグが解消された場合に試すことのできるいくつかの方法を紹介します。 2.1.Magento 2.4.x 以上の場合 Magento 2.4.x 以上の場合、Magento の開発ブランチに修正プログラムが用意されています。 <Magento_dir>vendor/magento/module-asynchronous-operations/etc/ このフォルダの中で、db_schema.xmlを編集してください(最初にファイルのバックアップを取ることを忘れないでください)。このファイルの37行目を見てください。 そして、nullable=”false “をnullable=”true “に変更します。その後、以下を実行してください。 これにより、新しいバルクアクションジョブの問題が解決されるはずです(以前にスタックしたバルクアクションジョブはまだスタックしたままです)。以前のcronアクションジョブのスタックを解除するには、手動で次のコマンドを実行してcronジョブを実行してください。 2.2.Magento 2.3.x以下の場合 以前のMagentoのバージョン(Magento 2.3.x以下)では、異なる方法で物事を進めたいと思うでしょうが、その方法はいくつかあります。 2.2.1.手動でクーロンジョブを実行する この問題に対する最も一般的な解決策は、cron ジョブを手動で実行することです。 または、cronが正しく実行されているか確認してください。 crontabが設定されていない場合は、以下のメッセージが表示されます。 crontabは、以下のことを教えてくれます。 使用している PHP バイナリ (複数の場合もあります) どの Magento cron スクリプトを実行しているか (特にスクリプトのパス) cron のログがどこにあるか cron ジョブを実行した後、以前に実行したアクションジョブが正常に終了したことがわかります。 2.2.2.env.phpのcron_consumers_runnerに変更を加えること 上記の方法でうまくいかない場合は、env.phpファイルを編集してみてください。このファイルで、cron_consumers_runnerを探し、その内容を以下のコードで置き換えてください。 もし、ファイルの中にcron_consumers_runner関数が見当たらない場合は、env.phpの一番下に以下のように挿入すればOKです。 3.結論 この記事が、この問題を解決するために必要な修正方法をお届けできることを願っています。もし、上記の方法で解決できない場合は、下記のコメント欄にご連絡ください。 ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
12 May 2021 / Published in Magento, TechBlogs
この記事では、Magento 2 で複数の配送先を設定する方法についてご案内します。 この機能により、顧客はチェックアウト時に複数の配送先を追加することができます。 複数の配送先を設定することで、チェックアウト時に複数の配送先に商品を配送することができ、配送先の最大数を設定することができます。この機能は、お客様のショッピング体験を向上させるだけでなく、販売者が一度の注文で簡単に住所を管理できる非常に便利な機能です。 以下の手順で、Magento 2で管理画面から複数の住所を設定してください。 Magento 2で複数の配送先住所を設定する手順 ステップ1: 管理者パネルにログインします。 ステップ2: 管理パネルのサイドバーで、「ストア(Stores)」→「設定(Settings)」→「構成(Configuration)」と進みます。 ステップ3: 左側のパネルで、「SALES」→「Multishipping Settings」を選択します。 ステップ4:「オプション(Options)」セクションを展開します。 ステップ5: 「Allow Shipping to Multiple Addresses」をYesに設定します。 ステップ6: 「複数の住所への配送を許可する最大数量(Maximum Qty Allowed for Shipping to Multiple Addresses)」を入力します。 ステップ7: 完了したら、「Save Config」ボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
12 May 2021 / Published in Magento, TechBlogs
この記事では、Magento 2でOrder Summaryに表示するアイテムの最大数を変更する方法についてご案内します。 Magento 2 の 「Maximum Number Of Items To Display In Order Summary」 の機能を使って、顧客のショッピング体験を向上させましょう。この機能では、オーダーサマリーに表示するアイテムの最大数を変更することができます。 設定でアイテム数を増やした場合は、顧客は注文サマリーにすべてのアイテムを表示することができ、設定でアイテム数を減らした場合は、一部のアイテムのみを表示することができます。 デフォルトではこの値は10に設定されていますが、以下の手順で簡単に変更することができます。 Magento 2でオーダーサマリーに表示するアイテムの最大数を変更する手順 ステップ1: 「管理者パネル(Admin Panel)」にログインします。 ステップ2: 管理パネルのサイドバーで、「ストア(Stores)」→「設定」→「構成」と進みます。 ステップ3: 左側のパネルで、「SALES」>「チェックアウト」を選択します。 ステップ4: 「チェックアウトオプション(Checkout Options)」セクションを展開します。 ステップ5: 「オーダーサマリーに表示する最大アイテム数(Maximum Number Of Items To Display In Order Summary)」を入力します。 ステップ 6: 「Save Config」ボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
11 May 2021 / Published in Magento, TechBlogs
属性の優先度に基づく商品の検索を改善しました。この記事では、Magento 2 の検索ウェイトを設定する方法についてご案内します。 検索ウェイトを設定すると、他よりも優先度の高いプロパティが検索結果に表示される際に役立ちます。これにより、カスタマーエクスペリエンスが向上し、お客様が必要なアイテムを見つけやすくなり、店舗の売上向上につながります。 Magento 2のデフォルトでは、1~10の10段階の検索ウェイトが設定されており、1が最も低いウェイト、10が最も高いウェイトとなります。例えば、システム内に検索ウェイト3のcolor属性と検索ウェイト1のdescription属性がある場合、redという単語を検索すると、color属性の値がredである商品のリストは表示されますが、redという単語を含むdescriptionを持つ商品は表示されません。この例では、color属性の方がdescription属性よりも定義された重みが大きくなっています。 Magento 2の検索ウェイトを設定する手順 ステップ1: 「管理パネル(Admin Panel)」にログインします。 ステップ2: 「管理画面(Admin Panel)」のサイドバーで、「ストア(Stores)」→「属性(Attributes)」→「商品(Product)」と進みます。 ステップ3:リストの中から属性を見つけ、クリックして編集モードにします。 ステップ4:左側のパネルで「Storefront Properties」を選択します。 ステップ 5: 検索ウェイト設定 「Use in Search」をYesに設定すると、検索クエリに属性が含まれるようになります。 Search Weight(検索ウェイト)を1~10の数字に設定します。値が入力されていない場合、すべての属性の検索ウェイトはデフォルトで1に設定されます。 ステップ6: 完了したら、「Save Attribute」ボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
11 May 2021 / Published in Magento, TechBlogs
この記事では、「Magento 2でカスタマーアカウントのスコープを設定する方法」についてご案内します。 カスタマーアカウントのスコープは、アカウントが作成されたウェブサイトに限定することも、ストア階層のすべてのウェブサイトやストアと共有することもできます。 したがって、顧客はストア階層の各ウェブサイトにアカウントを作成する必要がありますが、ストア階層のすべてのウェブサイトおよびストアにアカウントを使用することもできます。 Magento 2でカスタマーアカウントの範囲を設定する手順 ステップ1: 管理者パネルにログインします。 ステップ2: 管理パネルのサイドバーで、「ストア(Stores)」→「設定(Settings)」→「構成(Configuration)」と進みます。 ステップ3: 左側のパネルで、CUSTOMERS > Customer Configurationを選択します。 ステップ 4: 「アカウント共有オプション(Account Sharing Options)」セクションを展開します。 ステップ 5: 「Share Customer Accounts」を設定します。 Global: 顧客のアカウント情報をMagentoのすべてのウェブサイトとストアで共有します。 ウェブサイトごと:アカウントが作成されたウェブサイトに顧客のアカウント情報を制限します。 ステップ 6: 完了したら、「Save Config」ボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
11 May 2021 / Published in Magento, TechBlogs
地域のビジネス戦略に合わせて、住所の行数を設定しましょう。この記事では、Magento 2でStreet Addressの行数を変更する方法についてご案内します。 国や地域、地方によって住所の形式は異なります。住所はMagento 2のデフォルト設定よりも短くしたり、長くしたりすることができます。ローカルビジネスをしているなら、それを変更することは必須です。 Magento 2でストリートアドレスの行数を変更する手順 ステップ1: 「管理者パネル(Admin Panel)」にログインします。 ステップ2: 「管理パネル(Admin Panel)」のサイドバーで、「ストア(Stores)」→「設定(Settings)」→「構成(Configuration)」と進みます。 ステップ3: 左のパネルで、「CUSTOMERS」 > 「Customer Configuration」を選択します。 ステップ4: 「名前(Name)」と「アドレスオプション(Adress Option)」セクションを展開します。 ステップ5:任意の「番地の行数」を変更します。デフォルト値は3です。 ※留意:有効な範囲は1~4です。 ステップ6:「Save Config」ボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
10 May 2021 / Published in Magento, TechBlogs
ウィッシュリストを使って、ストアの顧客体験を高めましょう。この記事では、Magento 2 でウィッシュリストを設定する方法についてご案内します。 確かに、何か商品を購入する際には、何度も検討することになるでしょう。また、欲しい商品があっても買うタイミングではない場合、ウィッシュリストに登録することができます。ウィッシュリストは、ストアにあると便利な機能です。お客様の体験をもたらし、ウィッシュリストに登録された商品からの売上向上に貢献します。 Magento 2でWishlistを設定するステップ ステップ1: 「管理者パネル(Admin Panel)」にログインします。 ステップ2: 管理パネルのサイドバーで、「ストア(Stores)」→「設定(Settings)」→「構成(Configuration)」と進みます。 ステップ3: 左側のパネルで、「CUSTOMERS」>「Wish List」を選択します。 ステップ4:「一般的なオプション」セクションを展開します。そして、以下のようにします。 「Enabled」フィールドを「Yes」に設定して、ストアのウィッシュリストモジュールを有効にします。 「Show in Sidebar(サイドバーに表示)」フィールドを「Yes」に設定して、ウィッシュリストをサイドバーに表示します。 ステップ5: [Share Options]セクションを展開します。次に、以下の操作を行います。 ・Email Senderには、メッセージの送信者として表示されるべきストアの連絡先を設定します。 一般的な連絡先 営業担当者 カスタマーサポート カスタムメール ・顧客がウィッシュリストを共有するときに使用するメールテンプレートを設定します。 ・Max Emails Allowed to be Sentの値を入力して、顧客が一括して送信できるメールの数を制限します。デフォルトは10で、最大許容値は10,000です。 ・メッセージのサイズを制限するために、Email Text Length Limitの値を入力します。既定値は255です。 ステップ6:「My Wish List Link」セクションを展開します。そして、次のようにします。 ・ウィッシュリストの概要を表示する」を設定します。 欲しい物リストのアイテム数を表示します。 アイテムの数量を表示します。 ステップ7:Save Configボタンをクリックします。   ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
10 May 2021 / Published in Magento, TechBlogs
ストアでは Magento 2 を使用していますが、新しいエクステンションをインストールしたり、設定を変更したり、あるいはサーバーのメモリをオーバーロードしたりすると、次のようなエラーが表示されます。このエラーが表示されることがあります 。例外印刷はMagento 2のセキュリティ上の理由からデフォルトで無効になっています。しかし、あなたはまだそこに問題の種類を正確に知りません。以下のガイドに従って、完全なメッセージを表示してください。 関連トピック:Magento 2 System.xml構成の作成方法 1.エラー 2.Magentoで例外処理を有効にすること この記事では、次のような解決策を提供します。 Magento 2 での例外処理の有効化Magento 1 での例外処理の有効化 2.1.Magento 2 での例外印刷の有効化 これはMagento 1と似ていますが、pub/errorsという別のフォルダにあります。 「pub/errors/local.xml.sample」ファイル を pub/errors/local.xml にリネームしてください。以下のトレース結果を見てください。 「var/report」にアクセスすると、エラーレポートのリストが表示されます。 以下は同様のエラーがあります。 関連トピック:Magentoの未来:2021年以降のEコマースの影響、成功、課題 2.1. 1.キャッシュの問題 2.1.2. セッションの問題 2.1.3. レジストリの問題 3.Magento 1で例外印刷を有効にすること 「errors/local.xml.sample」ファイル を 「errors/local.xml」 にリネームしてください。 とすると、例外印刷が有効になり、以下のようなトレースが表示されるようになります。 ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace
10 May 2021 / Published in Magento, TechBlogs
このトピックでは、「Magento 2のビュー作成: ブロック、レイアウト、テンプレート」では、ブロック、レイアウト、テンプレートを含むMagento 2のビューについて学びます。前回のトピックでは、CRUDモデルについて説明しました。ご存知のように、ビューはページの表現を出力するために使われます。Magento 2では、ビューはブロック、レイアウト、テンプレートの3つのパスで構成されています。ここでは、Hello Worldというシンプルなモジュールを作って、その仕組みを見てみましょう。 関連トピック:Magento 2で設定、アップグレード、アンインストールのスクリプトを作成する方法 1.Magento 2 でのビュー作成 ステップ1:コントローラの作成ステップ2: レイアウトファイル.xmlの作成ステップ3:ブロックの作成ステップ4. テンプレートファイル.phtmlの作成 1.1.ステップ1:コントローラの作成 まず、レイアウトファイル.xmlを呼び出すためのコントローラを作成します。 ファイル:app/code/Mageplaza/HelloWorld/Controller/Index/Display.php ビューをレンダリングするために,PageFactoryを宣言し,executeメソッドで作成します。 1.2.ステップ2:レイアウトファイル.xmlの作成 レイアウトは、Magento 2 モジュールのビュー層の主要なパスです。レイアウトファイルは、ページ構造を定義する XML ファイルで、{module_root}/view/{area}/layout/ フォルダにあります。エリアパスには frontend か adminhtml を指定でき、レイアウトが適用される場所を定義します。 default.xml という特別なレイアウトファイルがあり、このファイルはそのエリア内のすべてのページに適用されます。一方、レイアウトファイルは次のようなフォーマットの名前を持ちます。また、レイアウトファイルは、{ルーターid}{コントローラー名}_{アクション名}.xmlという形式で作成されます。 レイアウトの詳細については、Magento のトピック、およびレイアウト構造の説明を参照してください。 ページをレンダリングするとき、Magentoはレイアウトファイルをチェックしてページのハンドルを見つけ、ブロックとテンプレートをロードします。ここでは、このモジュール用にレイアウトハンドルファイルを作成します。 ファイル:app/code/Mageplaza/HelloWorld/view/frontend/layout/helloworld_index_display.xml このファイルでは、このページのブロックとテンプレートを定義しています。 ブロックのクラス:Mageplaza_HelloWorld_Block_Display テンプレートファイル: Mageplaza_HelloWorld::sayhello.phtml ネーム:必須の属性で、ブロックの参照先を特定するために使用されます。 関連トピック:Magento 2プログラムでキャッシュをクリアする 1.3.ステップ3:ブロックの作成 ブロックファイルには、必要なすべてのビューロジックが含まれている必要があり、htmlやcssは一切含まれていません。ブロックファイルには、すべてのアプリケーションのビューロジックが含まれているはずです。 ファイル作成: ファイルのコンテンツ: Magento 2 のすべてのブロックは、MagentoFramework\View\Element\Template を継承する必要があります。このブロックでは、”Hello World “という言葉を表示するメソッド sayHello() を定義します。このメソッドは、テンプレートファイルで使用します。 1.4.ステップ4: テンプレートファイルの作成 「sayhello.phtml」というテンプレートファイルを作成します。 以下のコードを挿入します。 レイアウトファイルの中で、Mageplaza_HelloWorld::sayhello.phtmlというテンプレートを定義しています。これはMagentoがモジュールMageplaza_HelloWorldのtemplatesフォルダにsayhello.phtmlというファイル名を見つけることを意味しています。モジュールのテンプレートフォルダは app/code/{ベンダー名}/{モジュール名}/view/frontend/templates/ です。 テンプレートファイルでは、変数$blockを使って、ブロックオブジェクトを表現しています。ご覧のように、Blockの中でメソッドsayHello()を呼び出しています。これで完成です。もう一度このページ(http:///helloworld/index/display)にアクセスして、結果をご覧ください。 前回のモデル(CRUD)では、コントローラでpostFactoryモデルを呼び出しました。 今回は、ブロックとテンプレートを使って、テーブルにすべてのデータを表示してみます。 ファイル編集:app/code/Mageplaza/HelloWorld/Block/Display.php コンテンツ: ブロックファイルでは、mageplaza_helloworld_postテーブル上のすべてのデータを取得するメソッドgetPostCollectionを作成し、テンプレートではこれを呼び出します。 app/code/Mageplaza/HelloWorld/view/frontend/templates/sayhello.phtmlを編集します。 コンテンツ: 完了したら、「php bin/magento cache:clean」を実行して、結果を確認してください。 以下のように表示されます。 「Exception printing is disabled by default for security reasons(セキュリティの理由から、デフォルトでは例外印刷が無効になっています)というエラーメッセージが表示されれば、このトピックを参照ください。 ►►►サービスについてMagento, Sitecore, Shopify Plus, BigCommerce, Amazon Marketplace