Du bist nicht angemeldet. Der Zugriff auf einige Boards wurde daher deaktiviert.

#1 04. März 2013 01:05

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

[GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Ich betreue eine Internetseite, die über CMS made simple zweisprachig gestaltet wurde. Jetzt will ich das News-Modul nutzen, um entsprechende Artikel zu veröffentlichen.

Dazu will ich in den Artikeln zusätzlich zu dem (normalen) deutschen Inhalt auch noch ein Extra-Feld mit dem englischen Inhalt hinzufügen. Das klappt alles ganz gut. Das einzige Problem ist, dass ich es nicht hinbekomme, dass der englische Text immer dann ausgegeben wird, wenn er vorhanden ist. Ist keiner vorhanden, soll weiterhin der deutsche Text angezeigt werden.

Also auf den Punkt: Wie schaffe ich es, dass der englische Text bei Verfügbarkeit angezeigt wird, ansonsten der deutsche?

Vielen Dank für Eure Hilfe!!

Stefan

Offline

#2 04. März 2013 06:21

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Das englische Feld kannst du wie folgt ansprechen:

{$entry->fields.EnglishText->value}

Wichtig: Das Feld muss in diesem Fall "EnglishText" lauten. Genau so ohne Abstand und mit Gross- und Kleinbuchstaben. Ansonsten kannst du dieses nicht direkt anspechen.

Nun kannst du prüfen ob der Text auf Englisch vorhanden ist:

{if $entry->fields.EnglishText->value != ""}{$entry->fields.EnglishText->value}{/if}

[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#3 04. März 2013 08:16

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Ergänzung:
Ich würde hier wieder mit strip_tags bzw. trim arbeiten, um sicherzustellen, dass das Feld wirklich keinen Inhalt hat. Bsp: http://www.cmsmadesimple.de/forum/viewt … 630#p24630


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#4 04. März 2013 08:20

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Danke für die Ergänzung


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#5 04. März 2013 09:39

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Danke für Eure Hilfe. Ich habe das jetzt gerade versucht, aber irgendwie scheint die (erste) Bedingung nicht erfüllt zu sein. Der Code lautet mir nun im DetailTemplate des NewsModuls:

<div id="NewsPostDetailContent"> 
{if $entry->fields.textenglisch->value|strip_tags|trim != ""} 
{$entry->fields.textenglisch->value}
{else}{eval var=$entry->content} {/if}  
</div>

Es scheint so, als ob das Feld nicht gefunden wird, da - wie gesagt - immer die {else}-Anweisung durchgeführt wird. Habe ich hier einen Syntax-Fehler gemacht?

Also das Textfeld wurde über das News-Modul unter der Rubrik "Extra-Felder" mit Namen "textenglisch" als mehrzeiligen Textbereich angelegt.

Offline

#6 04. März 2013 10:21

Klenkes
Server-Pate
Ort: 89428 Syrgenstein
Registriert: 17. Dezember 2010
Beiträge: 1.437

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Komisch...

Ich hab grade mal ein Feld mit Namen: textenglisch angelegt, und den Part des Teplates von oben eingefügt, und es funktioniert prima.

Sicher, dass dein Feld textenglisch heisst und nicht irgendwo vertippt?
Großbuchstaben... hinten ish oder isch...

Offline

#7 04. März 2013 10:24

NaN
Moderator
Ort: Halle (Saale)
Registriert: 09. November 2010
Beiträge: 4.437

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Auch mal den Zwischenspeicher löschen.
Ansonsten einfach mal beide Felder anzeigen lassen und dann im Browser in den HTML-Quelltext schauen, was genau da steht.


Module: GBFilePicker, AdvancedContent
Sicherheit: Beispiel .htaccess-Datei
CMSms 1.12 unter PHP 7:
cmsms-1.12.3.zip (inoffiziell - komplett inkl. Installer)
CMSms 1.12 unter PHP 8:
cmsms-1.12.4.zip (inoffiziell - komplett inkl. Installer)

Offline

#8 04. März 2013 10:32

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Also ich muss dazu sagen, dass ich noch eine "ältere" Version nutze, und zwar 1.8.2. Ich weiß nicht, ob das Auswirkungen hat oder ob Smarty damals anders war.

Derjenige, der das programmiert hat, hat auf die MLE-Version von CMS Made Simple zurückgegriffen. Deswegen kann ich auch nicht ohne weiteres updaten...leider.

Die anderen Sachen versuche ich jetzt nochmal...Danke schon einmal!

Beitrag geändert von SonnenAnlieger (04. März 2013 11:11)

Offline

#9 04. März 2013 10:45

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Ich habe die {if}-Bedingung auskommentiert und wollte nur den Inhalt es Feldes ausgeben.
Im Ergebnis sehe ich inhaltsmäßig gar nichts, als ob entweder kein Inhalt existiert oder aber das Feld nicht gefunden wird.

Die Schreibweise habe ich mehrfach überprüft und auch Copy&Paste verwendet.

Wenn ich den Code wie folgt im Template habe

<div id="NewsPostDetailContent"> 
{*{if $entry->fields.textenglisch->value|strip_tags|trim != ""}*} 
Englischer Text: {$entry->fields.textenglisch->value} 
<br>
Deutscher Text: {eval var=$entry->content}  </div>

kommt folgende HTMl-Ausgabe:

<div id="NewsPostDetailContent">
Englischer Text: 
<br>
Deutscher Text: <p style="text-align: justify;"><strong>Neue Lehman-Urteile: </strong></p> <p style="text-align: justify;"><strong>BGH stärkt</strong><strong> Position der Banken</strong></p>
</div>

Im Ergebnis wird also nichts ausgegeben. Irgendwie komme ich nicht an das Feld bzw. den Inhalt ran.

Beitrag geändert von SonnenAnlieger (04. März 2013 10:45)

Offline

#10 04. März 2013 12:00

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

mach mal ein

<pre>{$entry->fields|print_r}</pre>

und poste den Code hier.

Hast du bei der Felddefinition "öffentlich" aktiviert? Ohne das, kommt das Feld auch nicht.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#11 04. März 2013 12:18

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Ja, das Feld ist öffentlich.

Ich habe den Code von Dir eingefügt und hier ist das Ergebnis:

stdClass Object 
(     
   [value] => eBrief-Test.pdf
   [id] => 5
   [name] => pdf
   [type] => file
) 

stdClass Object
(     
   [value] => test234234234234fggfgfghfgh     
   [id] => 7     
   [name] => textenglisch
   [type] => textarea
)
Array

Offline

#12 04. März 2013 12:32

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Ich habe noch eine Vermutung, aber ich kann die weder bestätigen noch mir eine mögliche Lösung vorstellen. Mir ist aufgefallen, dass weiter unter im Template eine {foreach}-Schleife eingesetzt wird.

{if isset($entry->fields)}
{foreach from=$entry->fields item='field'}

<div class="NewsDetailField">
{if $field->type == 'file' and $field->name == 'Bild'} 	  
{* this template assumes that every file uploaded is an image of some sort, because News doesn't distinguish *}           <img src="{$entry->file_location}/{$field->value}"/>          
{elseif $field->type == 'file' and $field->name == 'pdf'}
<a href="{$entry->file_location}/{$field->value}" target="_blank"><img src="uploads/images/pdf.gif" height="30" width="30">&nbsp;{$field->value}</a>
{else}
{$field->name}&nbsp;{eval var=$field->value}
{/if}
</div>
{/foreach}
{/if}

Der Aufruf

{$field->name}&nbsp;{eval var=$field->value}

zeigt den Inhalt des Felds "textenglisch" tatsächlich an. Vielleicht muss man hier mit den Ausdruck "eval" arbeiten. Aber ich weiß leider nicht, wie ich das auf meine Situation übertragen kann...

Offline

#13 04. März 2013 12:43

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Diese Funktionalität ist wohl in der 1.8.2 noch nicht vorhanden. Hier kommst du so an die Daten:

{if isset($entry->fields)}
  {foreach from=$entry->fields item='field'}
     <div class="NewsSummaryField">
        {if $field->type == 'file'}
          <img src="{$entry->file_location}/{$field->value}"/>
        {else}
          {$field->name}:&nbsp;{eval var=$field->value}
        {/if}
     </div>
  {/foreach}
{/if}

--> Das ist der Standardcode aus dem Template. Diesen kannst du nun auf deine Bedürfnisse anpassen.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#14 04. März 2013 12:45

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

SonnenAnlieger schrieb:

Der Aufruf

{$field->name}&nbsp;{eval var=$field->value}

zeigt den Inhalt des Felds "textenglisch" tatsächlich an. Vielleicht muss man hier mit den Ausdruck "eval" arbeiten. Aber ich weiß leider nicht, wie ich das auf meine Situation übertragen kann...

Das Eval ist nicht unbedingt nötig. Es führt allfällig vorhandenen Smartycode im Inhalt des Newsfeldes aus. Du kannst das Feld auch direkt mit

aufrufen.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#15 04. März 2013 13:01

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

nockenfell schrieb:

Diese Funktionalität ist wohl in der 1.8.2 noch nicht vorhanden. Hier kommst du so an die Daten:

{if isset($entry->fields)}
  {foreach from=$entry->fields item='field'}
     <div class="NewsSummaryField">
        {if $field->type == 'file'}
          <img src="{$entry->file_location}/{$field->value}"/>
        {else}
          {$field->name}:&nbsp;{eval var=$field->value}
        {/if}
     </div>
  {/foreach}
{/if}

--> Das ist der Standardcode aus dem Template. Diesen kannst du nun auf deine Bedürfnisse anpassen.

Wie realisiere ich das denn ohne die {foreach}-Schleife? Ich habe ja nur ein Feld, welches ich ausgeben möchte. Da brauche ich eine solche Schleife doch nicht.

Dieser Code funktioniert leider auch nicht:

{if $entry->field.textenglisch}
{$field.textenglisch->value}
{/if}

@nockenfell: Vielen Dank für Deine Hilfe!!

Beitrag geändert von SonnenAnlieger (04. März 2013 13:02)

Offline

#16 04. März 2013 13:09

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Dein Code ist folgender

{assign var="english" value=false}
{if isset($entry->fields)}
  {foreach from=$entry->fields item='field'}
      {if $field->name == 'textenglisch' and $field->value|strip_tags|trim != ""}
          {eval var=$field->value}
          {assign var="english" value=true}
        {/if}
     </div>
  {/foreach}
{/if}

{if !$english}{eval var=$entry->content}{/if}

Damit wird zuerst das Zusatzfeld angesprochen. Wenn das Feld etwas drin hat, wird es ausgegeben und die Variable $english auf true gesetzt. Falls $english == false ist, wird der normale Content ausgegeben.


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#17 04. März 2013 13:12

nockenfell
Moderator
Ort: Gontenschwil, Schweiz
Registriert: 09. November 2010
Beiträge: 2.934
Webseite

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

Nachtrag: Ohne foreach kommst du meiner Meinung nach gar nicht auf's Feld. Allenfalls weiss NaN es hier noch ein wenig besser


[dieser Beitrag wurde mit 100% recycled bits geschrieben]
Mein Blog  /   Diverse Links rund um CMS Made Simple
Module: btAdminer, ToolBox

Offline

#18 05. März 2013 00:12

SonnenAnlieger
hat von CMS/ms gehört
Registriert: 04. März 2013
Beiträge: 10

Re: [GELÖST] Mehrere Inhaltsfelder bei Artikeln des News-Moduls

nockenfell schrieb:

Nachtrag: Ohne foreach kommst du meiner Meinung nach gar nicht auf's Feld. Allenfalls weiss NaN es hier noch ein wenig besser

Ich habe es jetzt so ausprobiert, wie Du es gesagt hast. Mit der {foreach}-Schleife funktioniert es wirklich. Also anscheinend kann man auf die zusätzlichen Felder nicht direkt, sondern nur über eine generelle Abfrage zugreifen.

Jetzt klappt es in jedem Fall! Vielen Dank!

Offline