Собственная тема - Работа с собственными значками
Я хочу добавить значки для корзины, Списка пожеланий и ссылок на учетные записи в заголовке.
Я разместил их /приложение/дизайн/интерфейс/поставщик/тема/веб/изображения/иконки.
Я знаю, что могу установить значки, такие как (пример корзины):
.minicart-wrapper .action.showcart:before {
content: url(http://your-domain.com/.../cart-image.png);
}
Но: Каков URL-адрес значков?
Сначала я попробовал это как
Http://your-domain.com/app/design/frontend/vendor/theme/web/images/icons/cart.png . Это не сработало, но это нормально.
Поэтому я проверил узнайте, как выглядит URL-адрес логотипа, и я мог бы найти рабочий URL-адрес:
Http://your-domain.com/static/version1533293004/frontend/vendor/theme/store/images/icons/Cart.png.
Но есть "версия 1533293004", возможно, это проблема?
Итак, как мне получить рабочие URL-адреса для моих значков?
Редактировать: Или я могу переопределить шаблоны по умолчанию для этого в моей теме? У меня вроде как проблемы с документами Magento2, трудно найти такие конкретные вещи.
1 answers
Ладно, здесь не так уж много помощи.
Поэтому я понял, что мне нужно изменить файлы шаблонов.
Список желаний:
Скопируйте /app/vendor/magento/magento-wishlist/view/frontend/templates/link.phtml
в свою тему, например /app/design/frontend/<vendor>/<themename>/Magento_Wishlist/templates/link.phtml
Теперь я изменил его следующим образом:
<li class="link wishlist" data-bind="scope: 'wishlist'">
<a <?= /* @noEscape */ $block->getLinkAttributes() ?>> <img src="<?= $this->getViewFileUrl('images/icons/Wishlist.png'); ?>"
alt="<?= $block->escapeHtml($block->getLabel()); ?>"
title="<?= $block->escapeHtml($block->getLabel()); ?>">
<!-- ko if: wishlist().counter -->
<span data-bind="text: wishlist().counter" class="counter qty"></span>
<!-- /ko -->
</a>
</li>
<script type="text/x-magento-init">
{
"*": {
"Magento_Ui/js/core/app": {
"components": {
"wishlist": {
"component": "Magento_Wishlist/js/view/wishlist"
}
}
}
}
}
</script>
Мой значок был расположен по адресу /app/design/frontend/<vendor>/<themename>/web/images/icons/Wishlist.png
Для корзины, которую я скопировал /app/vendor/magento/magento-checkout/view/frontend/templates/cart/minicart.phtml
.
Также мне пришлось добавить немного CSS для корзины:
.minicart-wrapper {
margin-left: unset;
.action.showcart {
&::before, &.active::before {
content: normal;
}
.text {
position: unset;
width: auto;
height: auto;
}
.counter.qty {
position: relative;
right: 8px;
margin-bottom: 8px;
}
}
}
Будьте осторожны, вы можете изменить вещи иначе, чем я сделал.
Я все еще не смог изменить ссылку "Моя учетная запись". Я спросил Вопрос здесь: Как я могу изменить ссылку на свою учетную запись?
Но на этот вопрос, вероятно, не будет дан ответ, как и на этот.