Com o cache do Magento 2.0.4 , mais especificamente o cache de páginas ativado , tudo funciona.
Se eu desativá-lo, limpe os cookies e efetue login como cliente, pois os produtos no minicart não estão lá.
A mensagem de boas-vindas realmente não funciona corretamente. Preciso adicionar um produto ao carrinho em uma página do produto para ver o minicart. Do que se eu for fazer o checkout, o país não será exibido no resumo do endereço (endereço de entrega já adicionado à minha conta).
Eu fiz depuração e parece que o problema está apontando para:
module-customer/view/frontend/web/js/customer-data.js. O cookie private_content_versioné definido module-page-cache/view/frontend/web/js/page-cache.jse usado em customer-data.js. Veja a customerData::reloadfunção.
Com o cache da página desativado, os dados não são carregados do servidor como a função dataProvider::getFromServer().
Quando o cache da página está desativado, o cookie private_content_versionnão existe (o page-cache.js não é executado fora do curso). Mas o cookie section_data_idspossui apenas '*' e 'messages' => vazios (falso ou nulo).
Quando o cache da página está ativado, existe private_content_versione section_data_idstem quais chaves com valores:
*: null
cart: 123
compare-products: 123
customer: 123
directory-data: 123
last-ordered-items: 123
multiplewishlist: 123
review: 123
wishlist: 123
Após o login com o cache da página ativado, no painel do cliente, há 2 solicitações adicionais de ajax que carregam dados:
http://test.localhost/customer/section/load/?sections=&update_section_id=false&_=123
http://test.localhost/customer/section/load/?sections=directory-data&update_section_id=false&_=123
Eles contêm objetos json com dados específicos do cliente e dados de diretório, como todos os países e regiões. Com essas chamadas, no checkout, o resumo do endereço exibe o nome do país. Veja: module-customer/view/frontend/web/js/sections-config.js
e module-checkout/view/frontend/web/js/view/shipping-address/address-renderer/default.js, função getCountryName.
Isso é um bug do Magento 2 ou é algo que eu errei? obrigado
GET http://example.com/customer/section/load/?sections=&update_section_id=false&_=1462374643065 500 (Internal Server Error)