Ergebnis 1 bis 7 von 7

Thema: Attributtyp URL wird nicht richtig ausgegeben

  1. #1
    Contao-Nutzer
    Registriert seit
    15.05.2012.
    Beiträge
    171

    Standard Attributtyp URL wird nicht richtig ausgegeben

    Ich teste gerade ein wenig herum und stelle fest, dass das URL-Attribut nicht richtig ausgegeben wird, wenn es keinen "Titel" dazu gibt. Also wenn entweder in den "Anzeigeeigenschaften" --> "Titel entfernen" aktiviert ist oder wenn das Titelfeld bei der Eingabe im BE leer belassen wird. In beiden Fällen wird dann zwar der Link im Quelltext ausgegeben, aber nicht in der Seitenansicht, ich "sehe" den Link also nicht auf der Website. Wenn ein Titel vergeben ist, dann ist alles paletti.
    In der "Moviedatabase" habe ich das auch nachbauen können.

    Fall für ein Ticket (welches Repo?) oder mach' ich was falsch?

    Getestet mit der aktuellen Nightly und Contao 2.11.11


    ERGÄNZUNG:
    Falls Ihr Euch auskennt oder falls es weiterhilft: Ich habe versucht, das Problem zu umgehen, indem ich statt eines URL-Attributs ein Text-Attribut hergenommen habe und über das Template daraus einen Link gebastelt habe, ganz einfach so (Anm: ich bin in PHP unbedarft):
    PHP-Code:
    <a href=<?php echo $this->raw?>></a>
    Dabei passiert genau dasselbe: Der Link wird im Quelltext richtig ausgegeben, erscheint aber nicht in der Seitenansicht.
    Geändert von Mary (23.09.2013 um 20:47 Uhr) Grund: Ergänzung

  2. #2
    Contao-Urgestein Avatar von KlausGrenoble
    Registriert seit
    27.01.2013.
    Ort
    Grenoble
    Beiträge
    2.362

    Standard

    Tja, ich hab' das ausprobiert und muß Dir zustimmen. Nicht schlecht !
    Ist mir gar nicht aufgefallen, obwohl ich schon ein URL-Attribut erstellt habe.
    http://metamodels.contao.bugs3.com/d...ango-unchained
    unter dem Rating...
    Ich hab' die letzte dev-Version vor der Alpha.
    Bevor github solltest Du Dich vergewissern, ob das in der Alpha passiert. !! Die wurde heute gerade erst wieder upgedated !!

    Github:
    https://github.com/MetaModels/attribute_url/issues

  3. #3
    Contao-Nutzer
    Registriert seit
    15.05.2012.
    Beiträge
    171

    Standard

    Danke für's Mittesten!
    In der dev tritt das Problem auch auf. Ticket ist schon erstellt (danke für den Link).

  4. #4
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Zitat Zitat von Mary Beitrag anzeigen
    PHP-Code:
    <a href=<?php echo $this->raw?>></a>
    So einen Link sieht man auch nicht auf der Seite! Das hat nichts mit PHP zu tun, ist reines HTML:
    HTML-Code:
    <a href="irgendeineUrl"></a>
    sieht so aus:



    HTML-Code:
    <a href="irgendeineUrl">LinkTitel</a>
    sieht so aus:
    LinkTitel

    Die Frage ist also eher, was denn angegeben werden soll, wenn im Attribut kein Titel steht. Die URL wäre vielleicht ein passender Ersatz?

    Gruß,
    folkfreund

  5. #5
    Contao-Nutzer
    Registriert seit
    15.05.2012.
    Beiträge
    171

    Standard

    HTML-Code:
    <a href="irgendeineUrl"></a>
    Damit hast Du natürlich vollkommen recht, das kann nicht funktionieren. MM gibt das aber so aus, wenn kein Titel angegeben ist. Und wenn ich in den Attribut-Einstellungen "Titel deaktivieren" einstelle, dann kann ich in der Folge auch überhaupt keinen Titel mehr eingeben. Da fehlt noch was in der Anwendung ;-).

  6. #6
    Contao-Urgestein Avatar von folkfreund
    Registriert seit
    09.04.2010.
    Beiträge
    1.928

    Standard

    Hallo Mary,

    ich habe gerade kein aktuelles Testprojekt, in dem ich das nachstellen könnte. Hab mir aber eben die aktuelle DEV runtergeladen.
    In metamodelsattribute_url/templates/mm_attr_url.html5 findest du folgendes:
    PHP-Code:
    <?php $arrValues deserialize($this->raw); ?>
    <span class="url">
      <a<?php echo ($this->settings->no_external_link) ? '' ' target="_blank"'?>
          href="<?php echo $this->replaceInsertTags($arrValues[1]); ?>">
                     <?php echo $arrValues[0]; ?>
      </a>
    </span>
    Da siehst du

    wie man per deserialize den gespeicherten Wert 'auspackt' und
    dass als Linktext immer $arrValues[0] ausgegeben wird.

    Du kannst das Template anpassen und bei einem leeren Linktext den Wert hinter href als Linktext ausgeben lassen:

    z.B. so (ungetestet)
    PHP-Code:
    <?php $arrValues deserialize($this->raw); ?>
    <span class="url">
      <?php
        $url 
    $this->replaceInsertTags($arrValues[1]);
        
    $text = empty($arrValues[0]) ? $url $arrValue[0];
        echo 
    '<a' . ($this->settings->no_external_link) ? '' ' target="_blank"' ' href="' $url '">' $text '</a>';
       
    ?>
    </span>
    Gruß, folkfreund

  7. #7
    Contao-Nutzer
    Registriert seit
    15.05.2012.
    Beiträge
    171

    Standard

    Vielen Dank!! Werde ich ausprobieren!

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •