Hallo Toflar,
leider habe ich mich zu früh gefreut
Was will ich?
Ich möchte gerne eine persönliche Anrede (Herr/Frau) ausgeben. Ich weiss, dass es dafür Inserttags gibt. Aber wie gesagt, ich bin PHP-Anfänger und lerne am beseten, wennich versuche es selbst nachzustellen.
dazu habe ich über xt_members_fieldeditor ein neues Feld erzeugt, wo die persönliche Anrede bei einem Mitgleid hiterlget ist.
PHP-Code:
<?php if (!defined('TL_ROOT')) die('You can not access this file directly!');
/**
* @copyright varix 2010
* @author varix
* @package Backend
* @license GPL
* @creator xtmembers field editor, copyright 2009 aurealis, http://www.aurealis.de
* @filesource
*/
if (strpos($GLOBALS['TL_DCA']['tl_member']['palettes']['default'], '{personal_legend},') === false) {
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] .= ',xt_anrede_neu';
} else {
$GLOBALS['TL_DCA']['tl_member']['palettes']['default'] = str_replace('{personal_legend},','{personal_legend},xt_anrede_neu,', $GLOBALS['TL_DCA']['tl_member']['palettes']['default']);
}
$GLOBALS['TL_DCA']['tl_member']['fields']['xt_anrede_neu'] = array
(
'label' => &$GLOBALS['TL_LANG']['tl_member']['xt_anrede_neu'],
'exclude' => true,
'search' => true,
'inputType' => 'select',
'options' => array('Frau' => &$GLOBALS['TL_LANG']['tl_member']['xt_anrede_neu_select']['Frau'],'Herr' => &$GLOBALS['TL_LANG']['tl_member']['xt_anrede_neu_select']['Herr']),
'eval' => array('feEditable' => true,'feViewable' => true,'feGroup' => 'personal','tl_class' => 'w50','mandatory' => true,'includeBlankOption' => true)
);
/**
* Class tl_member_xt_members_anrede
*
* Provide miscellaneous methods that are used by the data configuration array.
* @copyright varix 2010
* @author varix
* @package Controller
*/
class tl_member_xt_members_anrede extends tl_member
{
}
?>
Jetzt habe es mir nochmal angeschaut und geesehen, dass es sich um ein Array handelt und bei dem array options die unterschiedlichen Anreden Herr/Frau)hinterlegt sind.
Dann habe ich es mit folgende Code versucht:
PHP-Code:
<?php
$this->import('Database');
$inhalt = $this->Database->execute("SELECT xt_anrede_neu FROM tl_member");
$GlOBALS['TL_DCA']['tl_member']['fields']['xt_anrede_neu']['options'] = $anzeige;
echo $anrede;
?>
Ich war/bin in der Annahme, dass wenn das Mitgleid sich angemeldet hat, dass Feld entsprechdn gesetzt ist. Leider hat es keine Ausgabe gegeben.
Kannst dur mir einen Anstoss in die richtige Richtung geben? Habe ich einen Gedankenfehler?
Gruß
varix
P.S. ich hoffe mich als Anfänger verständlich ausgedrückt zu haben
Lesezeichen