Nach Update auf 5.2 funktioniert Freitextfeld nicht mehr

Vor dem Update hat folgender Codeschnipsel problemlos funktioniert. Jetzt leider nicht mehr. Das Attribut steht in der Freitextfeldverwaltung als “konfiguriert”. 

{if $sArticle.attr9 == "false"} 
    {include file="frontend/detail/buy.tpl"}
{/if}

Es ist angelegt als s_article_attribut und ich verwende es in der …/detail/index.tpl

Hat jemand eine Idee, woran es liegen könnte?  Undecided Bin für jede Hilfe sehr dankbar!!

@Goethe schrieb:

Vor dem Update hat folgender Codeschnipsel problemlos funktioniert. Jetzt leider nicht mehr. Das Attribut steht in der Freitextfeldverwaltung als “konfiguriert”. 

{if $sArticle.attr9 == “false”}
{include file=“frontend/detail/buy.tpl”}
{/if}

Hat jemand eine Idee, woran es liegen könnte?  Undecided Bin für jede Hilfe sehr dankbar!!

Hallo,

hast du denn einfach mal geprüft, welchen Datentyp das Feld nun hat? Wenn attr9 bei dir eine Checkbox ist, hat diese ja unter 5.2.0 nur noch int(1), es wird also in der Datenbank statt “true” oder “false” nur 1 oder 0 stehen.

Somit müsste der Code-Schnipsel eher:

{if $sArticle.attr9 == false || $sArticle.attr9 == 0} 
    {include file="frontend/detail/buy.tpl"}
{/if}

lauten.

Beste Grüße

Sebastian

1 Like

Die 0 muss noch in “” dann klappt es :) 

{if $sArticle.attr9 == false || $sArticle.attr9 == "0"} 
    {include file="frontend/detail/buy.tpl"}
{/if}

Perfekte Hilfe!! Danke!!!

 

 

Das ist doch ganz großer Murks - so interne Änderungen „unter der Haube“ dürften nicht weitere Auswirkugen auf andere Bereiche haben.
Jetzt muss man allen Ernstes alle tpl-Dateien, Textbausteine, E-Mail Vorlagen, Versandkostenberechnung und wo überall noch Freitextfelder verwendet werden können, untersuchen, ob man nun „true“ gegen 1 ändern muss?

*Man hat ja sonst nichts zu tun*  Thumb-down

 

2 Likes

Hey Sonic,

manchmal kann ich deine Posts nicht so ganz nachvollziehen. Zum einen zwingt dich keiner sofort auf 5.2 upzudaten und dazu kommt, dass wir gesagt haben, dass mit dieser Version das gesamte Handling der Freitextfelder überarbeitet wird, ausgebaut und vereinheitlicht wird. Dazu gibt es auch zahlreiche Dokus.

Da kann natürlich auch so eine Anpassung an den eigenen Anpassungen erforderlich sein. Es geht ja hier auch nicht um ein Bugfix Release. 

Da es größere Änderungen gab, hat es auch eine Beta und drei RCs gegeben. Ab und zu müssen solche Änderungen einfach stattfinden, da man sonst alte Bestandteile und Einstellungen ewig mit sich rumschleppt.

Hier versuchen wir immer einen guten Weg zu finden, so dass auch Anpassungen an eigenen Dingen überschaubar bleiben. Hin und wieder muss man dann halt auch so eine Anpassung nachziehen. Je nachdem an welchen Stellen man eigene Abfragen/Attribute hat, können das sicher im Einzelfall auch ein paar stellen sein.

Sebastian

Ihr müßt schon mal gucken, an wen Ihr Euch richtet!

Nicht „jeder“ ist Agentur, nicht jeder ist Backendprogrammierer.
Und in der Updateanleitung von 5.1.x auf 5.2.x sollte ein fetter Hinweis für Theme-Entwickler sein, dass man dahingehend seine Themes, Textbausteine etc. überprüfen muss.
Grundsätzlich finde ich die neue „Freitextverwaltung“ gut, aber es geht gernicht, wenn im stillem Kämmerlein Bruchstellen eingebaut werden und man „Englische Docus für Backendprogrammierer“ durchforsten muss.

Ich habe auch nicht vor, sofort auf die neue Version zu Wechslen - genau wegen solcher Probleme. Aber solche Änderungen sollten auch für die kommuniziert werden, die keine Programmierer sind. Wie geschrieben - es betrifft ja auch Textbausteine - und ich habe bisher keine Info gehabt, dass ich das für meine Theme oder Textbaustein von „true“ auf 0  ändern muss!

Ich hätte gerade wegen der „Custom Products V2“ gerne schnell auf 5.2 gewechselt - V1 ist ja… 

[Edit] Da ich gerne mein Theme unter 5.1 vorbereiten möchte - geht unter smarty auch sowas wie in_array(„true“,1) für gemischte Inhalte - weil ich nicht unbedingt verschachtelt mit „oder“ arbeiten möchte (…ach - ich guck einfach mal bei smarty selber)

Hallo,

Update von 5.1.6 auf Ver. 5.2.2.

Bei mir steht das freitextfeld attr4 in der Backend Verwaltung auf INT(1); in der Tabelle s_articles_attributes auf varchar(500) und im Template frage ich mit

{if $Article.attr4 == "true"}

ab; das funktioniert aber noch. Wurde da von Shopware in 5.2.2 was angepasst oder muss ich die Spaltentypen in der Datenbank auf INT(1) ändern und die Abfrage auf

{if $Article.attr4 == "1"}

ändern?