Stimmt, verzichten geht wirklich nicht, aber ausblenden schon. Und das ist erstmal besser als gar nichts ^^
Vorher:
PHP-Code:
<div class="widget">
<?php echo $objWidget->generateWithError(); ?> <?php echo ($objWidget instanceof FormCaptcha) ? $objWidget->generateQuestion() : $objWidget->generateLabel(); ?><?php if ($objWidget->required): ?><span class="mandatory">*</span><?php endif; ?>
</div>
Nachher:
PHP-Code:
<div class="widget">
<?php if (eregi("email", $objWidget->generateWithError())): $email="bla@bla.de" ?>
<input id="ctrl_email" type="hidden" maxlength="128" value="keine@mail.de" name="email" style="display:none" />
<?php else: ?>
<?php echo $objWidget->generateWithError(); ?> <?php echo ($objWidget instanceof FormCaptcha) ? $objWidget->generateQuestion() : $objWidget->generateLabel(); ?><?php if ($objWidget->required): ?><span class="mandatory">*</span><?php endif; ?>
<?php endif; ?>
</div>
Die Lösung is zwar auch irgendwie schwachsinnig, aber es funktioniert. Und es ist updatesicher.
Wenn man das Feld weiterhaben haben möchte, aber nicht als Pflichtfeld setzen will, dann müsste man noch javascript einsetzen. Wenn der User nichts ins Feld einträgt setze value="keine@mail.de" - wenn man die Emails dann noch in einem anderen Template anzeigen will, müsste man dort dafür sorgen, dass nichts angezeigt wird, sobald der Wert der E-Mail "keine@mail.de" ist.
Lesezeichen