이 페이지는 무료 시험 덤프 자료 [ http://exams.dumpsmaterials.com ]에서 가져온 것입니다. 내보내기 날짜:월 Jan 6 3:09:39 2025 / +0000 GMT ___________________________________________________ 제목: [Aug 20, 2023] 완전 업데이트 된 실제 무료 Adobe AD0-E718시험 문제 [Q12-Q35] --------------------------------------------------- [Aug 20, 2023] 완전 업데이트 된 무료 실제 Adobe AD0-E718시험 문제 AD0-E718시험의 무료 AD0-E718연습문제 [Aug-2023] 질문 12Adobe Commerce 설계자는 기본 URL을 사용하여 단일 Adobe Commerce 인스턴스에 두 개의 웹 사이트를 설정해야 합니다: example.com 및 website2.example.com.두 웹 사이트가 동일한 고객 기반을 사용할 수 있도록 설계자는 이 프로젝트를 어떻게 구성해야 합니까? 세션 쿠키 속성을 "SameSite=None"으로 변경합니다. "HTTP_X_FORWARDED_FOR" 헤더에 대한 세션 유효성 검사 비활성화 두 웹사이트의 쿠키 도메인을 ".example.com"으로 설정합니다. 설명 두 웹사이트에 동일한 쿠키 도메인을 설정하면 두 사이트에서 동일한 쿠키로 고객을 인증하므로 두 웹사이트 간에 고객 기반을 공유할 수 있습니다. 이렇게 하면 고객이 두 사이트 간에 전환할 때 두 번 로그인할 필요가 없습니다.질문 13어도비 커머스 아키텍트가 API 기능 테스트 코드를 검토하고 있습니다. 일부 테스트는 고객 주소가 존재하지 않는다는 오류를 전송합니다.테스트 코드에는 다음이 표시됩니다.테스트 오류를 수정하기 위해 아키텍트가 수행해야 하는 단계는 무엇입니까? A)B)C) 옵션 A 옵션 B 옵션 C 테스트 오류는 요청에 잘못된 고객 ID 및 주소 ID를 사용했기 때문에 발생합니다. 이전 고객 및 주소 생성 요청의 응답에서 올바른 고객 ID 및 주소 ID를 얻어야 합니다. 테스트 코드는 하드코딩된 값 대신 $this->customer->getId() 및 $this->address->getId()를 사용해야 합니다. 참조: https://devdocs.magento.com/guides/v2.4/get-started/web-api-functional-testing.htmlQUESTION 14한 아키텍트가 모든 고객 세션 데이터가 무작위로 손실되는 판매자의 Adobe Commerce 프로덕션 환경을 조사하고 있습니다. 고객 세션 데이터는 모든 캐시(Varnish를 통해 처리되는 전체 페이지 캐시 제외)와 마찬가지로 Redis를 사용하여 지속되도록 구성되었으며, 초기 검토 후 Adobe Commerce 관리자 패널을 통해 또는 명령줄에서 bin/iuagento cache: flush를 실행하여 Magento 캐시 스토리지를 플러시하여 고객 세션 데이터 손실을 복제할 수 있습니다. Adobe Commerce 관리자 패널에서 모든 캐시를 새로 고치거나 명령줄에서 bin/magento cache: clean을 실행해도 세션 데이터가 손실되지 않습니다. 다음 단계는 무엇입니까? 판매자에게 캐시 저장소를 플러시하지 않고 나중에 캐시만 새로 고치도록 교육합니다. Adobe Commerce 관리자 패널에서 '스토어 > 구성'의 '세션 데이터 별도 저장' 옵션을 '예'로 설정합니다. app/etc/evn.php를 확인하고 캐시 및 세션 데이터에 대한 Redis 구성이 서로 다른 데이터베이스 번호를 사용하는지 확인합니다. app/etc/env.php를 확인하고 캐시 및 세션 데이터에 대한 Redis 구성이 서로 다른 데이터베이스 번호를 사용하는지 확인하는 것이 다음 단계입니다. 캐시와 세션 데이터 모두에 동일한 데이터베이스 번호를 사용하면 캐시 저장소를 플러시할 때 세션 데이터가 손실될 수 있기 때문입니다. 서로 다른 데이터베이스 번호를 사용하면 세션 데이터를 캐시 데이터에서 분리하여 덮어쓰기를 방지할 수 있습니다. Adobe Commerce 고객 센터에서 세션 스토리지에 Redis 사용을 참조하십시오1. 참조: https://experienceleague.adobe.com/docs/commerce-operations/configuration-guide/cache/redis/redis-session.html?lang=en1QUESTION 15어도비 커머스 아키텍트가 판매자 요구 사항을 충족하기 위해 자체 사용자 지정 가격 로직이 포함된 새로운 제품 유형을 포함하는 데이터 흐름을 설계합니다.구현을 검토할 때 유효한 세 가지 개발은 무엇입니까? (세 가지를 선택하십시오.) etc/product_types.xml 파일의 내용 새 제품 유형에 속하는 속성에 대한 하이드레이터 추상적인 제품 유형 모델에서 확장된 사용자 지정 유형 모델 추상적인 제품 모델 클래스를 확장한 사용자 지정 가격 책정 로직이 포함된 새 클래스 새 제품 유형 등록을 위한 데이터 패치 마젠토 카탈로그 모델 제품 유형 가격을 확장하는 새로운 가격 모델 설명 일부 튜토리얼45에 따르면 Adobe Commerce에서 사용자 지정 제품 유형을 생성하려면 다음과 같은 여러 단계가 필요합니다.* etc 폴더에 제품_types.xml 파일을 만들어 새 제품 유형을 선언* 추상 제품 유형 모델에서 확장하는 사용자 지정 유형 모델 생성* 추상 가격 모델에서 확장하는 사용자 지정 가격 모델 생성* 새 제품 유형의 레이아웃 파일 생성* 새 제품 유형을 등록하는 데이터 패치 생성이 단계를 기반으로 구현을 검토할 때 유효한 세 가지 가능한 개발은 다음과 같다고 할 수 있습니다. etc/product_types.xml 파일의 내용* C. 추상적인 제품 유형 모델에서 확장된 사용자 지정 유형 모델* F. MagentoCatalogModelProductType가격을 확장하는 새 가격 모델 이러한 개발을 통해 자체적인 사용자 지정 가격 로직 및 속성을 가진 새 제품 유형을 만들 수 있습니다.질문 16Adobe Commerce 설계자는 월별 할부 결제 확장 프로그램의 워크플로우를 사용자 지정해야 합니다. 이 확장은 자체 레거시 확장(더 이상 사용되지 않는 결제 방법을 사용하는 모듈)이 있는 기본 웹 사이트 PSR과 계약된 파트너의 확장이며 할부 결제 파트너는 결제 초기화만 관리한 다음 PSP에서 실행할 캡처를 전달합니다. 금액이 성공적으로 매입되면 PSP는 IPN을 통해 웹사이트에 이를 알립니다. IPN의 목적은 '인보이스'를 생성하고 '캡처 정보'를 저장하여 나중에 PSP 자체를 통한 환불 요청에 사용하는 것뿐입니다. 아키텍트는 부작용 없이 요청된 행동을 캡처하기 위해 가장 간단한 솔루션이 필요합니다. 아키텍트는 어떤 솔루션을 구현해야 할까요? $invoice-> () 앞에 플러그인을 추가하고 $payment-> capture()의 호출을 방지하도록 입력을 변경합니다. config.xml에서 결제 수단에 대한 can_ capture 속성을 0로 변경합니다. di.zm1에서 결제 방법 CommandPool에 대해 MagentopaymentGatewayCommandNullCommand 유형으로 캡처 명령을 선언합니다. 부작용 없이 요청된 동작을 캡처하기 위해 Adobe Commerce Architect가 구현할 수 있는 가장 좋은 솔루션은 di.xml에서 결제 방법 CommandPool에 대해 MagentopaymentGatewayCommandNullCommand 유형으로 캡처 명령을 선언하는 것입니다. 이렇게 하면 파트너가 결제를 초기화한 다음 캡처를 PSP에 넘길 수 있으며, 웹사이트가 $payment->capture() 메서드를 호출하지 못하도록 방지할 수 있습니다. 또한 PSP가 IPN을 통해 웹사이트에 통지하여 '인보이스'를 생성하고 나중에 PSP 자체를 통해 환불 요청에 사용할 '캡처 정보'를 저장할 수 있습니다. 아키텍트는 di.xml에서 결제 방법 CommandPool에 대해 MagentoPaymentGatewayCommandNullCommand 유형으로 캡처 명령을 선언하는 솔루션을 구현해야 합니다. 이 명령은 결제 방법에서 캡처 메서드가 호출될 때 아무 작업도 수행하지 않으며, 이는 캡처가 PSP에서 처리되므로 바람직한 동작입니다. NullCommand 클래스는 MagentoPaymentGatewayCommandInterface를 구현하고 실행() 메서드를 재정의하여 null을 반환합니다. $invoice->capture() 메서드 앞에 플러그인을 추가하고 입력을 변경하면 $payment->capture() 메서드의 호출을 막는 것이 아니라 전달되는 인보이스 객체가 변경되므로 옵션 A는 올바르지 않습니다. config.xml에서 결제 방법에 대한 can_capture 속성을 0로 변경하면 캡처 메서드가 호출되는 것을 막는 것이 아니라 관리자 패널에서 캡처 옵션을 비활성화하므로 옵션 B는 올바르지 않습니다. 참조: https://devdocs.magento.com/guides/v2.4/payments-integrations/base-integration/facade-configuration.htmlQUESTION 17아키텍트가 Adobe Commerce 온프레미스 인스턴스에서 Redis에 대한 preload.keys를 구성하고 있습니다.아키텍트는 각 프론트엔드 요청에 대해 다음과 같은 캐시 키가 로드되는 것을 발견합니다: eav_entity_types, GLOBAL_PLUGIN_LIST, DB_IS_UP_TO_DATE , SYSTEM_DEFAULT.* frontend => page_cache의 id_prefix가 061_로 설정되었습니다.* frontend => default: 의 id_prefix는 설정되지 않았습니다.* 아키텍트가 Redis L2 캐싱을 활성화하고 구성했습니다.preload.keys는 어떻게 구성해야 합니까? 질문 18어도비 커머스 설계자는 사이트에서 미리 정의된 제품 세트를 할인된 가격으로 구매할 수 있는 새로운 제품을 제공하는 판매 캠페인을 진행하고 있습니다. 세트의 각 제품에는 별도의 재고 및 세금 등급이 있어야 합니다.한 가지 요구 사항은 타사 시스템을 사용하여 REST API로 보고서를 작성하여 다음 데이터를 가져오는 것입니다.* SKU* 수량* 원래 가격* 판매 가격* 세금 금액건축가가 이러한 요구 사항을 충족하기 위해 사용해야 하는 솔루션은 무엇입니까? * 단순 제품 수집을 위한 고정 번들 제품 생성,* 선택한 모든 옵션에 대한 가격 관리,* MagentoSalesApi데이터 주문 항목 확장 인터페이스에 확장 속성 original_simple_price 추가 및 단순 제품 가격으로 값 채우기; * 단순 제품 수집을 위한 동적 번들 제품 생성, * 콘텐츠 스테이징을 활용하여 캠페인 기간에 맞춰 번들 제품의 특별 가격을 관리, * Adobe Commerce 주문 API를 통해 필요한 데이터를 노출합니다; * 묶음 제품 주문을 위한 그룹화된 제품 생성 및 Magento에서 플러그인 생성 후 그룹화된 제품 모델 제품 유형 그룹화:준비됨:준비됨 고급,* 단순 제품 캠페인에 맞춰 특별 가격을 관리하기 위해 콘텐츠 스테이징 활용,* Adobe Commerce 주문 API를 통해 필요한 데이터 노출; 요구 사항을 충족하기 위해 아키텍트는 다음 솔루션을 사용해야 합니다: * 단순 제품 수집을 위한 고정 번들 제품 만들기. 이렇게 하면 미리 정의된 제품 세트를 할인된 가격으로 구매할 수 있으며 각 제품에 대해 별도의 재고 및 세금 등급을 지정할 수 있습니다. * 선택한 모든 옵션에 대한 가격 관리. 번들의 각 제품에 대한 원래 가격과 판매 가격을 설정할 수 있습니다. * 마젠토 판매Api데이터 주문 항목 확장 인터페이스에 확장 속성 original_simple_price를 추가하고 값을 단순 제품의 가격으로 채웁니다. 이렇게 하면 다른 필수 데이터와 함께 REST API를 통해 단순 제품의 원래 가격을 노출할 수 있습니다. 동적 번들 제품에서는 할인이 적용된 사전 정의된 제품 집합을 설정할 수 없으므로 옵션 B는 올바르지 않습니다. 그룹화된 제품에서는 전체 제품 세트에 대해 할인을 설정할 수 없으므로 옵션 C는 올바르지 않습니다. 참조: https://docs.magento.com/user-guide/catalog/product-create-bundle.html https://devdocs.magento.com/guides/v2.4/extension-dev-guide/extension_attributes/adding-attributes.htmlQUESTION 19여러 사용자 지정 결제 방법을 리팩터링하는 새로 개발된 풀 리퀘스트를 검토하는 동안 아키텍트는 민감한 데이터의 자격 증명을 해독하기 위해 MagentoFramework에 의존하는 여러 클래스를 발견했습니다. 일반적으로 반복되는 코드는 다음과 같습니다. 각 모듈에서 user_secret 구성은 다음과 같이 선언됩니다.아키텍트는 메서드 간의 중복 종속성과 중복 코드를 피하기 위해 최적의 솔루션을 추천해야 합니다. 아키텍트는 어떤 솔루션을 추천해야 하나요? 모든 VendorPaymentModuleGatewayConfigConfig 클래스를 MagentoPayxer.tGatewayConflgConfig의 가상 유형으로 바꾸고 ccnfig.xml 아래에 를 설정합니다. $sccpeConfig의 getvalue 메서드 뒤에 플러그인을 추가하고, 종속성에서 $encryptor를 제거한 후 플러그인에서 구성 이름이 'user.secret'인 경우 값을 해독하는 데 사용합니다. Vendor.Payment 아래에 공통 구성 서비스 클래스 vendorPaymentGatewayconfigConfig를 생성하고 이를 모든 Vender EaymentModuleGatewayConfigConfig 클래스의 부모 클래스로 사용하고 $sccpeConfig 및 $encryptor 종속성을 제거합니다. 메서드 간의 중복 종속성 및 중복 코드를 방지하려면 아키텍트는 모든 VendorPaymentModuleGatewayConfigConfig 클래스를 MagentoPaymentGatewayConfigConfig의 가상 유형으로 대체하고 config.xml에서 를 설정할 것을 권장합니다. 이렇게 하면 이미 scopeConfig 종속성이 있는 핵심 구성 클래스와 구성에서 값을 가져오는 로직을 사용할 수 있습니다. backend_model 속성은 사용자_비밀 값이 핵심 EncryptorInterface 클래스에 의해 자동으로 암호화 및 해독되도록 합니다. 옵션 B는 scopeConfig 객체에 불필요한 복잡성과 오버헤드를 추가하므로 올바르지 않습니다. 옵션 C는 여전히 사용자 지정 구성 서비스 클래스를 만들고 암호화기 종속성을 주입해야 하므로 올바르지 않습니다. 참조: https://devdocs.magento.com/guides/v2.4/payments-integrations/base-integration/integration-intro.html https://devdocs.magento.com/guides/v2.4/config-guide/prod/config-reference-encryptor.htmlQUESTION 20회사에 Adobe Commerce 스토어가 있습니다. 여러 시스템 간에 공유되는 각 제품의 글로벌 ID를 저장하기 위해 "my.attribute"("텍스트" 유형)라는 속성이 생성되며, 라이브 상태가 된 지 몇 달 후 "my.attribute"의 값이 모두 정수가 됩니다. 이로 인해 다른 시스템에서 이 데이터를 수신할 때 문제가 발생합니다.Adobe Commerce 설계자는 "my.attribute"의 유형을 텍스트에서 변경하는 솔루션을 추천해야 합니다.int 이를 위해 설계자가 수행해야 하는 두 단계는 무엇입니까? (두 개를 선택하십시오.) attribute.id에 대해 "catalog_product_entity_text" 테이블에서 "catalog.producLentityjnt" 테이블로 데이터를 마이그레이션합니다. 관리자 > 스토어 > 속성 > 제품으로 이동하여 "my.attribute"를 편집하고 유형을 'text'에서 'inf'로 업데이트합니다. MagentoEavModelEntityAttrlbuteBackend::afterLoad()용 플러그인을 작성하고 "catalog_product_entity_int"에서 데이터를 로드합니다. 데이터 패치를 생성하고 'my.attribute' 유형을 "text"에서 "inf"로 업데이트합니다. bin/magentc 인덱서 명령 실행: catalog_product_attribute 재설정 설명 속성 유형을 변경할 때 필요한 속성 ID를 기준으로 한 테이블에서 다른 테이블로 데이터를 마이그레이션하므로 옵션 A가 맞습니다. 옵션 D는 속성 유형을 프로그래밍 방식으로 변경할 때 권장되는 방법인 'my.attribute' 유형을 "text"에서 "int"로 업데이트하는 데이터 패치를 생성하므로 정답입니다.4.질문 21어디비컴즈 아키텍트는 큐 소비자가 Adobe Commerce Cloud 서버에서 TCP 연결을 너무 자주 닫아 메시지 처리 지연이 발생하는 것을 발견했습니다.아키텍트는 CRON 작업에서 이러한 소비자가 실행될 때 큐에서 사용 가능한 메시지를 처리한 후 종료되지 않도록 해야 합니다.아키텍트는 이 요구 사항을 어떻게 충족해야 합니까? 각 소비자에 대해 더 많은 프로세스를 생성하려면 multiple_process 제한을 늘리세요. 배포 단계에서 소비자_대기_포_최대_메시지 변수를 true로 설정합니다. CRON_CONSUMER_RUNNER변수에 대해 max_messages를 10,000에서 1,000으로 변경합니다. 이 요구 사항을 충족하는 가장 좋은 방법은 배포 단계에서 소비자 대기 최대 메시지 변수를 true로 설정하는 것입니다. 이 변수는 대기열에 더 이상 메시지가 없을 때 소비자가 종료하지 않고 대신 새 메시지를 사용할 수 있을 때까지 기다리도록 하여 연결을 조기에 종료하지 않도록 합니다. 또한 다중 프로세스 제한을 늘려 각 소비자에 대해 더 많은 프로세스를 생성하여 메시지를 더 빠르게 처리할 수 있도록 할 수 있으며, 배포 단계에서 소비자_대기_포_최대_메시지 변수를 true로 설정하면 CRON 작업이 이러한 소비자를 실행할 때 큐에서 사용 가능한 메시지를 처리한 후 소비자가 종료되지 않도록 할 수 있습니다. 이렇게 하면 소비자가 TCP 연결을 너무 자주 닫는 것을 방지하고 성능을 개선할 수 있습니다. Adobe Commerce 도움말 센터에서 메시지 큐 소비자 시작을 참조하십시오1. 참조: https://experienceleague.adobe.com/docs/commerce-operations/configuration-guide/message-queues/consumers.html?lang=en2 https://experienceleague.adobe.com/docs/commerce-operations/configuration-guide/cli/start-message-queues.html1QUESTION 22설계자가 Adobe Commerce 스토어를 새 배송업체와 통합해야 합니다. 카트 데이터는 배송업체의 API로 전송되어 가격을 검색하고 고객에게 표시합니다. 스토어에 기능이 구현된 후 API가 할당량에 도달하면 "요청 수가 너무 많습니다"라는 오류가 반환됩니다. 배송업체는 동일한 콘텐츠의 요청을 너무 많이 API에 전송하는 것에 대해 스토어에 경고합니다. 배송업체 모델에서 문제를 해결하기 위해 아키텍트는 무엇을 변경해야 하나요? 요청이 일치하는 경우 _setCachedQuotes() 및_getCachedQuotes()를 구현하여 데이터를 반환합니다. doShipmentRequest ()에서 API에 요청을 보내기 전에 canCollectRates()를 호출합니다. getResponse ()를 재정의하고 응답을 변수에 저장한 다음 응답이 존재하는지 확인한 다음 반환합니다. 설명캐리어 모델에서 setCachedQuotes() 및 getCachedQuotes()를 구현하면 스토어가 카트 데이터를 캐시에 저장할 수 있으므로 동일한 콘텐츠의 반복 요청을 API에 새 요청을 전송하는 대신 캐시에서 검색할 수 있습니다. 이렇게 하면 요청 수를 줄이고 할당량 제한에 도달하는 것을 방지할 수 있습니다.참조:[1] https://docs.adobe.com/content/help/en/experience-manager-65/commerce/commerce-payment-shipping-modQUESTION 23어디컴즈 상거래 설계자는 온프레미스 배포 프로세스 중에 다운타임이 발생하지 않도록 해야 합니다. 설계자가 따라야 하는 두 단계는 무엇입니까? (두 개 선택) bin/magento setup:upgrade -keep-generated를 실행하여 데이터베이스를 업그레이드합니다. bin/magento setup:upgrade -dry-run=true를 실행하여 데이터베이스를 업그레이드합니다. bin/magento setup:upgrade -convert-old-scripts=true를 실행하여 데이터베이스를 업그레이드합니다. 개발자/zere _down_time/enabled에서 구성 플래그 활성화 배포/파란색_녹색/활성화에서 구성 플래그 활성화 Magento 2 온프레미스 배포 프로세스 중에 다운타임이 발생하지 않도록 하려면 설계자는 다음 두 단계를 따라야 합니다. bin/magento setup:upgrade -keep-generated를 실행하여 데이터베이스를 업그레이드합니다. 이렇게 하면 업그레이드 프로세스 중에 정적 콘텐츠 및 코드 파일의 재생성이 생략되므로 시간이 오래 걸리고 다운타임이 발생할 수 있습니다. 정적 콘텐츠 및 코드 파일은 업그레이드 프로세스 전 또는 후에 별도로 생성해야 하며, deployment/blue_green/enabled에서 config 플래그를 활성화합니다. 이렇게 하면 현재 프로덕션 환경의 복사본(파란색)을 생성하고 새 코드를 여기에 배포(녹색)하는 청록색 배포 전략이 활성화됩니다. 그런 다음 다운타임 없이 트래픽을 파란색 환경에서 녹색 환경으로 전환합니다. 이 옵션은 .magento.env.yaml 파일에 deploy/blue_green/enabled: true와 같은 줄을 추가하여 활성화할 수 있습니다.질문 24어도비 커머스 아키텍트는 사이트에서 미리 정의된 제품 세트를 할인된 가격으로 구매할 수 있는 새로운 제품을 제공하는 판매 캠페인을 진행하고 있습니다. 세트의 각 제품에는 별도의 재고 및 세금 등급이 있어야 합니다.한 가지 요구 사항은 타사 시스템을 사용하여 REST API로 보고서를 작성하여 다음 데이터를 가져오는 것입니다.* SKU* 수량* 원래 가격* 판매 가격* 세금 금액이러한 요구 사항을 충족하기 위해 아키텍트가 사용해야 하는 솔루션은 어느 것입니까? * 단순 제품 수집을 위한 고정 번들 제품 생성,* 선택한 모든 옵션에 대한 가격 관리,* 마젠토 판매ApiDataOrderItemExtension 인터페이스에 대한 확장 속성 original_simple_price 추가 및 단순 제품 가격으로 값 채우기; * 단순 제품 수집을 위한 동적 번들 제품 생성, * 콘텐츠 스테이징을 활용하여 캠페인 기간에 맞춰 번들 제품의 특별 가격을 관리, * Adobe Commerce 주문 API를 통해 필요한 데이터를 노출합니다; * 번들 제품 주문용 그룹화 제품 생성 및 플러그인 켜기 후 생성마젠토그룹화 제품 모델 제품 유형 그룹화:준비됨:준비됨 고급,* 단순 제품 캠페인에 맞춰 특별 가격을 관리하기 위해 콘텐츠 스테이징 활용,* Adobe Commerce 주문 API를 통해 필요한 데이터 노출; 설명 번들 제품은 단순 또는 가상 제품을 기반으로 하는 여러 옵션으로 구성된 사용자 지정 가능한 제품입니다. 그룹화된 제품은 그룹으로 표시되는 간단한 제품 모음입니다.일부 튜토리얼에 따르면 Adobe Commerce에서 번들 제품을 생성하려면 다음과 같은 여러 단계가 필요합니다.* 번들 제품 템플릿 및 속성 세트 선택* 이름, SKU, 가격, 무게 등의 필수 설정 완료* 상태, 가시성, 카테고리 등의 기본 설정 구성* 번들 옵션 및 관련 제품 추가* 이미지 및 메타 데이터 등의 제품 정보 추가* 제품 게시콘텐츠 스테이징은 관리자에서 직접 스토어용 콘텐츠 업데이트를 생성, 미리 보기 및 예약할 수 있는 기능입니다. 콘텐츠 스테이징을 사용하여 제품, 카테고리, 페이지, 블록, 위젯, 가격 규칙 등의 변경 사항이 포함된 캠페인을 만들 수 있습니다.이러한 단계와 기능을 기반으로 이러한 요구 사항을 충족하기 위해 아키텍트가 사용할 수 있는 솔루션은 다음과 같습니다.* B. 간단한 제품을 수집하기 위한 동적 번들 제품 생성, 캠페인에 맞춰 번들 제품의 특별 가격을 관리하는 데 콘텐츠 스테이징 활용, Adobe Commerce 주문 API를 통해 필요한 데이터 노출 이 솔루션을 사용하면 미리 정의된 제품 집합을 할인으로 구매할 수 있는 새 제품을 생성할 수 있습니다. 세트의 각 제품에는 별도의 재고 및 세금 등급이 적용됩니다. 번들 제품의 특별 가격은 콘텐츠 스테이징을 사용하여 관리할 수 있습니다. 필요한 데이터는 Adobe Commerce 주문 API를 통해 노출될 수 있습니다.질문 25개발자가 판매자를 위해 만든 사용자 지정 제품 피드 내보내기 모듈을 검토해야 합니다.솔루션을 배포하기 전 최종 테스트 중에 제품 피드 출력이 올바른지 확인합니다. 코드에 대한 모든 단위 및 통합 테스트가 통과되었지만 솔루션이 프로덕션에 배포된 후 피드 내 제품 가격 값이 여러 제품에 대해 올바르지 않습니다. 데이터가 잘못된 제품은 모두 현재 가격이 인하된 콘텐츠 스테이징 캠페인의 일부입니다. 개발자가 무엇을 잘못하여 콘텐츠 스테이징 캠페인의 제품에 대해 피드 출력이 잘못되었는가? 개발자가 제품 데이터의 활성 캠페인 값을 검색하기 위해 getContentStagingValue() 메서드를 사용하는 것을 잊었습니다. 개발자가 컬렉션이나 저장소가 아닌 entity_id 열을 사용하여 데이터베이스에서 직접 제품 데이터를 검색했습니다. 개발자가 활성 콘텐츠 스테이징 캠페인을 확인하지 않고 제품 데이터를 검색할 때 캠페인 상태를 에뮬레이트했습니다. 설명어도비 커머스 설명서에 따르면 제품 데이터를 검색할 때 개발자는 제품의 활성 캠페인 값이 검색되는지 확인하기 위해 getContentStagingValue() 메서드를 사용해야 합니다. 이 메서드는 활성화되어 있을 수 있는 모든 콘텐츠 스테이징 캠페인을 고려하여 데이터베이스의 기본값이 아닌 콘텐츠 스테이징 캠페인에서 적절한 값을 반환합니다. 이 방법을 사용하지 않으면 제품 피드에 잘못된 데이터가 반환될 수 있습니다.질문 26Adobe Commerce 스토어 소유자가 사용자 지정 고객 속성 "my.attribute"(int 유형)를 설정하고, "my.attribute"가 3보다 큰 고객에게 홈 페이지에 고객별 콘텐츠를 표시해야 합니다. 웹사이트에서 전체 페이지 캐시를 실행 중입니다.모범 사례를 사용하여 이러한 요구 사항을 구현하기 위해 설계자가 수행해야 하는 두 단계는 무엇입니까? (두 개를 선택하세요.) 고객 데이터 JS 라이브러리를 사용하여 "my.attribute" 값을 검색합니다. 마젠토프레임워크 앱Http컨텍스트에 새 컨텍스트 값 "my.attribute"를 추가합니다. 사용자 지정 블록과 콘텐츠가 포함된 html 템플릿을 cmsjndexjndex.xml 레이아웃에 추가합니다. 고객 세그먼트를 생성하고 조건에 "my.attribute"를 사용합니다. 콘텐츠가 포함된 동적 블록을 홈 페이지에 추가합니다. 설명https://docs.magento.com/user-guide/v2.3/stores/attributes-customer.html 모범 사례를 사용하여 캐시된 페이지에 사용자 지정 고객 속성을 표시하는 작업에는 다음과 같은 여러 단계가 포함됩니다.* 표시할 콘텐츠가 포함된 사용자 지정 블록 및 php 템플릿 만들기* 사용자 지정 블록이 표시될 페이지의 레이아웃 파일에 추가* 섹션 만들기.xml 파일을 사용하여 사용자 지정 속성에 대한 새 섹션을 선언* MagentoCustomerCustomerData 섹션 풀 인터페이스용 플러그인 생성하여 섹션 데이터에 사용자 지정 속성 값 추가* 고객 데이터 JS 라이브러리를 사용하여 phtml 템플릿에서 사용자 지정 속성 값 검색 및 표시질문 27건축가는 PHPCS에 새로운 검사를 도입하여 회사 코딩 표준을 개선하고 코드에서 헬퍼 클래스 사용을 금지하는 데 동의합니다.설계자는 다음을 생성합니다.* AwesomeAgencyCodingStandard 네임스페이스 아래의 새 컴포저 패키지* 마젠토 2 코딩 표준을 확장하는 규칙 집합.xml 파일새 코드 규칙을 구현하려면 설계자는 무엇을 해야 하나요? 옵션 B가 새 코드 규칙을 구현하는 올바른 방법입니다. 아키텍트는 PHP_CodeSnifferSniff 추상 클래스를 확장하고 register() 및 process() 메서드를 구현하는 새 클래스를 만들어야 합니다. register() 메서드는 규칙이 적용되는 토큰 배열(예: T_CLASS)을 반환해야 합니다. process() 메서드는 클래스 이름에 Helper가 포함되어 있는지 확인하고 포함될 경우 경고 또는 오류를 추가해야 합니다. 또한 아키텍트는 태그를 사용하여 ruleset.xml 파일에서 새 클래스를 참조해야 합니다. 참조: https://devdocs.magento.com/guides/v2.4/coding-standards/technical-guidelines.html#14-code-style https://github.com/squizlabs/PHP_CodeSniffer/wiki/Coding-Standard-TutorialQUESTION 28서드파티 회사는 보고를 위해 주문 데이터를 가져오기 위해 Adobe Commerce 시스템을 통합할 애플리케이션을 만들어야 합니다. 통합을 위해서는 get /vi/orders 엔드포인트에 대한 액세스 권한이 필요합니다. 이 애플리케이션은 24시간 내내 매시간 자동으로 이 엔드포인트를 호출합니다. 판매자는 관리자 패널을 사용하여 리소스에 대한 액세스를 제한하거나 확장하고 액세스를 취소할 수 있는 기능을 원합니다.이 통합을 위해 타사 시스템에서 Adobe Commerce에서 사용 가능한 인증 유형을 사용하고 구현해야 합니까? 토큰 기반 인증을 사용하여 관리자 토큰을 획득합니다. 타사 시스템은 관리자 사용자 이름과 비밀번호를 사용하여 REST 엔드포인트를 활용하여 관리자 토큰을 가져오고, 이 토큰은 권한 부여를 위해 베어러 토큰으로 사용됩니다. OAuth 기반 인증을 사용하여 시스템 리소스에 대한 액세스를 제공합니다. 통합은 활성화하는 동안 판매자가 패널에서 OAuth 핸드셰이크를 통해 등록합니다. 타사 시스템은 OAuth 프로토콜을 따라 권한을 부여해야 합니다. 토큰 기반 인증을 사용하여 통합 토큰을 받습니다. 통합은 기본 통합 토큰 설정을 사용하여 관리자 패널에서 생성되고 활성화되어 토큰에 대한 액세스 권한을 얻게 되며, 이 토큰은 인증에 사용되는 베어러 토큰으로 사용됩니다. get /v1/orders 엔드포인트를 사용하여 보고를 위한 주문 데이터를 가져오기 위해 Adobe Commerce 시스템을 통합하는 애플리케이션을 만들려면 OAuth 기반 인증을 사용하여 시스템 리소스에 대한 액세스 권한을 제공해야 합니다. OAuth는 시스템에서 사용자 ID나 비밀번호를 공개하거나 저장하지 않고도 내부 데이터에 액세스할 수 있는 타사 애플리케이션을 제어할 수 있는 토큰 전달 메커니즘입니다. 통합은 판매자가 관리자 패널에 등록하고 활성화하는 동안 OAuth 핸드셰이크를 수행합니다. 타사 시스템은 OAuth 프로토콜을 따라 인증을 수행해야 합니다. 판매자는 관리자 패널을 사용하여 리소스에 대한 액세스 권한을 제한하거나 확장할 수 있으며 액세스 권한을 취소할 수 있습니다. 참조: 11: https://devdocs.magento.com/guides/v2.3/get-started/authentication/gs-authentication-oauth.htmlQUESTION 29외부 시스템이 Adobe Commerce GraphQL API를 사용하여 제품 카탈로그 검색 기능을 통합합니다. 설계자는 프런트엔드 유형 선택으로 관리자 패널에 새 속성 my_attribute를 생성합니다. 나중에 설계자는 Productinterface에 이미 my_atcribute 필드가 있지만 mc 값을 반환하는 것을 확인합니다. 이 필드가 옵션 id와 레이블을 모두 포함하는 새 유형이 되기를 원합니다.이 요구 사항을 충족하기 위해 Adobe Commerce 설계자는 다음과 같이 선언하는 새 모듈과 등/schema.graphqls 파일을 만듭니다.setup:upgrade 명령을 호출한 후 제품 인터페이스 필드 xy_attribute의 인트로스펙션은 int로 유지됩니다. my_attribute 필드의 값 유형이 변경되지 않은 이유는 무엇인가요? Productlnterface의 필드는 schema.graphqls 파일을 처리하는 동안 확인됩니다. 해당 속성이 있는 경우 필드 유형에 대해 제품 속성의 백엔드 유형이 설정됩니다. Productlnterface 인터페이스는 이미 Magento.CatalogGraphQI 모듈에 선언되어 있습니다. 확장하려면 Productlnterface를 새로 선언하기 전에 -xceni 키워드를 사용해야 합니다. Magento.CatalogGraphQI 모듈은 동적 속성 스키마 리더의 병합 출력은 schema.graphqls에 선언된 유형을 재정의하며, Magento.GraphQI 모듈보다 순서상 나중에 발생합니다. 제품 쿼리는 지정된 검색 조건과 일치하는 제품에 대한 정보를 반환하는 GraphQL 쿼리입니다. 또한 제품 데이터를 검색하기 위해 제품 인터페이스 필드를 사용하는 방법을 보여줍니다.https://devdocs.magento.com/guides/v2.3/graphql/queries/products.htmlThe Magento.CatalogGraphQI 모듈은 Magento.GraphQI 모듈보다 나중에 발생하며 동적 속성 스키마 리더의 병합 출력은 schema.graphqls에 선언된 유형을 재정의합니다. 동적 속성 스키마 리더는 속성의 백엔드 유형에 따라 제품 속성을 제품 인터페이스에 추가하는 작업을 담당합니다. my_attribute 속성의 백엔드 유형이 int이므로, schema.graphqls 파일에 선언된 사용자 지정 유형에 관계없이 Productinterface의 my_attribute 필드도 int 유형을 갖습니다. 이를 방지하려면 설계자는 속성의 백엔드 유형을 사용자 지정 유형과 일치하도록 변경하거나 속성 이름과 충돌하지 않는 다른 이름을 필드에 사용해야 합니다. 참조: https://devdocs.magento.com/guides/v2.4/graphql/develop/create-graphqls-file.htmlQUESTION 30아직 라이브 상태가 아닌 Adobe Commerce Cloud 프로젝트의 문제를 해결하고 있습니다.개발자는 라이브 전환을 준비하기 위해 스테이징 데이터베이스를 프로덕션으로 마이그레이션합니다. 그러나 개발자가 제품 가져오기 기능을 테스트할 때 새 제품이 프런트엔드에 나타나지 않습니다. 개발자는 바니시 캐시가 지워지지 않는다고 의심합니다. 스테이징은 예상대로 작동하는 것 같습니다. 데이터베이스 마이그레이션 전에 프로덕션이 작동하고 있었는데 가능한 원인은 무엇인가요? 프로덕션에서 배포를 수행하여 빠른 캐싱을 초기화했어야 합니다. 프로덕션 데이터베이스의 사이트 URL은 준비 인스턴스의 URL이므로 업데이트해야 합니다. 프로덕션 데이터베이스의 Fastly 자격 증명이 올바르지 않습니다. 설명 문제의 원인은 프로덕션에서 배포를 수행하여 Fastly 캐싱을 초기화해야 했기 때문일 가능성이 높습니다. 데이터베이스를 준비 단계에서 프로덕션으로 마이그레이션하면 배포가 이루어질 때까지 준비 데이터베이스에 대한 모든 변경 사항이 프로덕션 환경에 반영되지 않기 때문입니다. 여기에는 새 제품이 프런트엔드에 표시되기 위해 지워야 하는 바니시 캐시에 대한 모든 변경 사항이 포함됩니다.질문 31어디비즈니스 커머스 아키텍트가 특정 범위의 결제 금액에 대해서만 무효 거래를 허용하여 기존 결제 게이트웨이 기능을 변경하라는 요청을 받았습니다.공급업체 모듈 파일 etc/config.xml에서 결제 방법에 can,_voidsetto 1 옵션이 있습니다.이 사용자 지정은 어떻게 수행해야 합니까? 마젠토페이먼트모델메소드어댑터를 확장하고 메소드 무효를 다시 구현합니다. 이 새 클래스를 어댑터의 가상 유형 유형을 재정의하는 새로운 유형의 결제 방법 외관 구성으로 사용합니다. 마젠토페이먼트 게이트웨이 컨피그 컨피그 밸류 핸들러 클래스에 대한 새 플러그인을 선언하고 애프터 핸들 메서드를 사용하여 제목 can_void에 대한 결과를 변경합니다. 결제 방법 파사드 구성에서 can_void라는 이름을 가진 새 핸들러를 유형Magento paymentGatewayconfigValueHandlerPool을 기준으로 가상 유형에 추가합니다. 설명 결제 페이지는 가상 유형으로 구성된 결제 어댑터의 인스턴스이며 Magento 판매 관리와 결제 처리기 간에 결제 작업을 처리할 수 있습니다. 또한 결제 방법 파사드에 대한 종속성 주입(DI) 구성을 %Vendor_Module%/etc/di.xml 파일에 추가할 수 있다고 합니다.https://devdocs.magento.com/guides/v2.3/payments-integrations/base-integration/facade-configuration.htmlQUESTION 32 외부 시스템이 Adobe Commerce GraphQL API를 사용하여 제품 카탈로그 검색 기능을 통합합니다.설계자는 프론트엔드 유형 선택으로 관리자 패널에서 새 속성 my_attribute를 생성합니다.나중에 설계자는 Productinterface에 이미 my_atcribute 필드가 있지만 mc 값을 반환하는 것을 확인합니다. 이 필드가 옵션 id와 레이블을 모두 포함하는 새 유형이 되기를 원합니다.이 요구 사항을 충족하기 위해 Adobe Commerce 설계자는 다음과 같이 선언하는 새 모듈과 등/schema.graphqls 파일을 만듭니다.setup:upgrade 명령을 호출한 후 Productlnterface 필드 xy_attribute의 인트로스펙션은 int로 유지됩니다.my_attribute 필드 값 유형이 변경되지 않은 이유는 무엇입니까? Productlnterface의 필드는 schema.graphqls 파일을 처리하는 동안 확인됩니다. 해당 속성이 있는 경우 필드 유형에 대해 제품 속성의 백엔드 유형이 설정됩니다. Productlnterface 인터페이스는 이미 Magento.CatalogGraphQI 모듈에 선언되어 있습니다. 확장하려면 Productlnterface를 새로 선언하기 전에 -xceni 키워드를 사용해야 합니다. Magento.CatalogGraphQI 모듈은 동적 속성 스키마 리더의 병합 출력이 schema.graphqls에 선언된 유형을 재정의하는 순서보다 늦게 발생합니다. 설명제품 쿼리는 지정된 검색 조건과 일치하는 제품에 대한 정보를 반환하는 GraphQL 쿼리입니다. 또한 ProductInterface 필드를 사용하여 제품 데이터를 검색하는 방법도 보여줍니다.https://devdocs.magento.com/guides/v2.3/graphql/queries/products.htmlQUESTION 33어도비 커머스 아