# Shopware Wiki
## THN Größen
| **sizes** |
| -------- |
| 240x240 |
| 600x600 |
| 1280x1280 |
## Image-Import // .csv
| **Feldname** | **Beschreibung** | **Gültige Werte** | **Besonderheiten** |
| -------- | -------- | -------- | -------- |
| odernumber | Artikelnummer | Text | Art.-Nr.|
|image | Link zum Bild des Artikels | HTTP-Link | Das Feld darf nicht leer sein |
| main | Vorschaubild (ja/nein) | boolen (1/2)||
| relations | Varianten/Bildmapping | Text | Ausgabe immer in Vorm von Gruppe:Option |
https://docs.shopware.com/de/shopware-5-de/import-export/import-export-artikelbilder
## Kategorien-Zubehör
| **Name** | **System-ID** |
| -------- | -------- | -------- |
| C4 PRO WOMEN Zubehör| 84 |
| C4 PRO CARBON | 85 |
| C4 BASIC | 86 |
| C4 PRO | 87 |
| C4 | 88 |
| E1 | 89 |
| C3 PRO | 90 |
| C3 PRO WOMEN | 91 |
| C3 BASIC | 92 |
| S2 SPORT | 93 |
| SR2 | 94 |
| R2 | 95 |
| R2 BASIC | 96 |
| M1 | 97 |
| M1 PRO | 98 |
| R2 CARBON | 99 |
> In Shopware gibt es keine Kopfvariante. Jede Variante kann als Elternvariante gewählt werden.
## Größen
| **Größe Zahlen** | **Größe Buchstabe** |
| -------- | -------- |
| 53| XS |
| 55| S |
| 57| M |
| 59| L |
| 61| XL |
| 63| XXL |
| 65| 3XL |
## Variablen
### Sprachen
> EN languageId: 3
> FR languageId: 4
> IT languageId: 5
Helme nicht mehr dabei:
C3 Women
C3
S2
SR1
Concept
S1 PRO
S1
R1
J1
C2
## Upload
-> Upload Helme überschreibt
-> Upload Zubehör
## Artikel aktualisieren/importieren
* Excel
* Datei öffnen und bearbeiten
* Die Datei als **.csv** speichern.
> Excel kann die Datei nicht als UTF-8 kodieren, so werden z. B. Umlaute und Sonderzeichen nicht Richtig dargestellt.
* Mit Notepad+++ können wir die **.csv** in das Format UTF-8 kodieren
* Die .csv Datei mit Notepad++ öffnen
* Im Menü Encoding den Punkt **Encode in UTF-8** wählen.
* Datei speichern
* In Shopware einloggen und .csv importieren
* Unter Inhalte > Import/Export können wir die .csv importieren
* Import
* Datei auswählen
* Profil wählen
* default_articles (Artikel)
* Import starten
> Shopware Wiki: Artikel Import/Export (https://docs.shopware.com/de/shopware-5-de/import-export/import-export-artikel)
> Notfall: Hier ist eine [UTF-8-Codetabelle](https://www.utf8-zeichentabelle.de/unicode-utf8-table.pl?number=1024&htmlent=1). Hiermit können Umlaute und Sonderzeichen manuell im UTF-8 Format kodiert werden.
## Article_complete_helmets.csv bearbeiten
### Varianten mit Excel hinzufügen
| **ordernumber** | **mainnumber** | Kommentar |
| -------- | -------- | -------- |
| 4548273380 | **4548273380** | 4548273380 ist die Elternvariante |
| 4548274380 | **4548273380** | 4548274380 wird der Elternvariante zugeordnet |
| 4548275380 | **4548273380** | 4548275380 wird der Elternvariante zugrodnet |
> In Shopware gibt es keine Kopfvariante. Jede Variante kann als Elternvariante gewählt werden.
### SEO-Kurzbeschreibung und -Titel hinzufügen
| **description** | **...** | metatitle |
| -------- | -------- | -------- |
| SEO-Beschreibung hier hinzufügen | ... | Meta-Titel hier hinzufügen|
### Artikel-Beschreibung hinzufügen
| **description_long** |
| -------- |
| Artikel-Beschreibung im Folgenden HTML-Code-Format hier hinzufügen |
```htmlembedded=
<p>Text</p>
<ul>
<li><h4>Headline 1</h4>text</li>
<li><h4>Headline 2</h4>text</li>
</ul>
```
### Zubehör-Artikel anlegen
Die Verknüpfung muss in der
articles_complete_zubehoer.xlsx angelegt werden.
| **similar** | ... | **accessory** |
| -------- | -------- | -------- |
| Mainnumber | ... | Mainnumber|
## Subshops management
### Subshops unter Artikel/Kategorien
* Subshops duplizieren
---
## Buglist
### Artikel lässt sich nicht löschen
Der Artikel kann in der Shopware-Datenbank über phpMyAdmin gelöscht werden.
* Datenbank Backup erstellten. Datenbank als SQL exportieren.
* In der Datenbank sind alle Artikel sind in der Tabelle **s_articles**
### Fehler beim Import
#### Article tax 404 not found
* IN phpMyAdmin einloggen
* SQL Befehl ausführen und fehlerhafte Artikel löschen.
```sql
SELECT * FROM `s_articles_details` WHERE `s_articles_details`.articleID NOT IN ( SELECT id FROM `s_articles`);
```
## Custom Css
### Content-Bulletpoints
```css
sc_custom_bulletpoints {
font-size: 20px;
font-size: 1.25rem;
line-height: 24px;
line-height: 1.5rem;
}
```
// Issues - overwirte check -Y update shopware
https://github.com/shopware/shopware/commit/d389efdd56a48b68e81791dd3c4fd17aeb927118
### Schuberth Template entwicklung
Media URL // |mediaurl
```htmlembedded=
<?php
function smarty_modifier_mediaurl($value, $format = array())
{
$mediaUrls = [];
$seperator = "|";
$str = trim($value, $seperator);
if(is_numeric($str)) {
$url = getMediaUrlById($str);
if($url !== null)
{
$mediaUrls[] = $url;
}
}else if(strpos($str, $seperator)) {
$ids = explode($seperator, $str);
foreach($ids as $id){
$url = getMediaUrlById($id);
if($url !== null) {
$mediaUrls[] = $url;
}
}
}
return $mediaUrls;
}
function getMediaUrlById($value) {
if (is_numeric($value)) {
$id = (int)$value;
$media = Shopware()->Models()->getRepository('Shopware\Models\Media\Media')->findOneBy(['id' => $id]);
if ($media) {
$path = $media->getPath();
return Shopware()->Container()->get('shopware_media.media_service')->getUrl($path);
}
}
return null;
}
```
```htmlembedded=
{block name='frontend_detail_data_attributes_attr11'}
{if $sArticle.tab_downloads_files|mediaurl}
{assign var="mediaUrls" value=$sArticle.tab_downloads_files|mediaurl}
{foreach from=$mediaUrls item=mediaUrl}
<a style="margin-top: 60px;" href="{$mediaUrl}" target="_blank">
<button class="btn is--primary is--center" name="">
<span>{s namespace='schuberth/tabs' name='downloads'}{/s}</span>
</button>
</a>
{/foreach}
{/if}
{/block}
```
Shopware Bugfix Tabs
/* content--description Bugfix: https://forum.shopware.com/discussion/40094/neuer-tab-reiter-fehler-bei-artikelvarianten*/
_custom.less
```htmlembedded=
.custom-content--description {
.unitize-padding(10, 10);
}
@media screen and (min-width: @tabletViewportWidth) {
.custom-content--description {
.unitize-padding(30, 30);
}
}
```
tabs_bugfix.js
```htmlembedded=
jQuery(document).ready(function() {
$.subscribe( "plugin/swAjaxVariant/onRequestData", function(data, me, response, values, location) {
var counter = 0;
$response = $($.parseHTML(response));
$('.custom-content--description').each(function() {
$(this).html($response.find('.custom-content--description:eq(' + counter + ')').html());
counter++;
});
}
);
});
```
shopware added description notes
description.tpl
```htmlembedded=
{extends file='parent:frontend/detail/tabs/description.tpl'}
{* Product description *}
{block name='frontend_detail_description_text'}
<div class="product--description" itemprop="description">
{$sArticle.description_long}
</div>
{if $Locale == "de_DE"}
<div class="descriptionnote">{$sArticle.descriptionnote}</div>
{else if $Locale == "en_GB"}
<div class="descriptionnote">{$sArticle.descriptionnote3}</div>
{else if $Locale == "fr_FR"}
<div class="descriptionnote">{$sArticle.descriptionnote4}</div>
{else if $Locale == "it_IT"}
<div class="descriptionnote">{$sArticle.descriptionnote5}</div>
{/if}
{/block}
{* Product - Further links *}
{block name='frontend_detail_description_links'}
{/block}
```
_schuberth-template.less
```htmlembedded=
/*article detailpage - descriptionnotes*/
.descriptionnote {
font-style: italic;
color: #768086;
margin-top: 45px;
}
```
## FAQs HTML copy
<ul class="custom_accordion">
<li><a class="custom_accordion_toggle" href="javascript:void(0);">Wie kann ich die richtige Helmgröße für mich bestimmen?</a>
<ul class="inner">
<li>
Legen Sie ein flexibles Maßband (Schneidermaßband) etwas einen Fingerbreit (ca. 2cm) über den Augenbrauen so um den Kopf, dass Sie dden größten Kopfumfang erfassen. Der gemessene Wert entspricht Ihrem Kopfumfang in cm. Die Wahl der richtigen Helmgröße ist eine wichtige Angelegenheit. Nur ein passender Helm bietet bestmöglichen Schutz. Prüfen Sie daher den korrekten Sitz nach Erhalt Ihres Helmes.
<table>
<thead>
<tr><th>Kopfumfang</th><th>Helmgröße</th></tr>
</thead>
<tbody>
<tr>
<td>52-53 cm</td>
<td>XS / 53</td>
</tr>
<tr>
<td>54-55 cm</td>
<td>S / 55</td>
</tr>
<tr>
<td>56-57 cm</td>
<td>M / 57</td>
</tr>
<tr>
<td>58-59 cm</td>
<td>L / 59</td>
</tr>
<tr>
<td>60-61 cm</td>
<td>XL / 61</td>
</tr>
<tr>
<td>62-63 cm</td>
<td>XXL / 63</td>
</tr>
<tr>
<td>64-66 cm</td>
<td>3XL / 65</td>
</tr>
</tbody>
</table>
</li>
</ul>
</li>
<li><a class="custom_accordion_toggle" href="javascript:void(0);">Wo finde ich die Seriennummer?</a>
<ul class="inner">
<li>
test
</li>
</ul>
</li>
<li><a class="custom_accordion_toggle" href="javascript:void(0);">Wo kann ich den Helm für die verlängerte Garantie registrieren?</a>
<ul class="inner">
<li>
test
</li>
</ul>
</li>
<li><a class="custom_accordion_toggle" href="javascript:void(0);">Wo kann ich den Helm für die verlängerte Garantie registrieren?</a>
<ul class="inner">
<li>
test
</li>
</ul>
</li>
</ul>
{"metaMigratedAt":"2023-06-15T03:22:29.514Z","metaMigratedFrom":"Content","title":"Shopware Wiki","breaks":true,"contributors":"[{\"id\":\"18bf4a34-f32c-4388-9069-03ed77e8e45d\",\"add\":13010,\"del\":3576}]"}