Ergebnis 1 bis 3 von 3

Thema: Funktion für Alias-Generierung von tl_page

  1. #1
    Contao-Fan Avatar von tpk
    Registriert seit
    25.02.2011.
    Ort
    48369 Saerbeck
    Beiträge
    832

    Standard Funktion für Alias-Generierung von tl_page

    Hi,

    wie finde ich die Funktion, die den Alias beim Anlegen einer Seite generiert?

  2. #2
    Contao-Nutzer Avatar von Nils Heinold
    Registriert seit
    04.09.2010.
    Ort
    Uckermark
    Beiträge
    155
    User beschenken
    Wunschliste

  3. #3
    Contao-Nutzer Avatar von poldixd
    Registriert seit
    12.07.2012.
    Ort
    Berlin
    Beiträge
    51

    Standard

    Hallo,

    am besten guckst du mal unter modules/core/dca/tl_article.php

    DCA ARRAY:
    PHP-Code:
            'alias' => array
            (
                
    'label'                   => &$GLOBALS['TL_LANG']['tl_article']['alias'],
                
    'exclude'                 => true,
                
    'inputType'               => 'text',
                
    'search'                  => true,
                
    'eval'                    => array('rgxp'=>'alias''doNotCopy'=>true'maxlength'=>128'tl_class'=>'w50'),
                
    'save_callback' => array
                (
                    array(
    'tl_article''generateAlias')
                ),
                
    'sql'                     => "varbinary(128) NOT NULL default ''"

            
    ), 
    Funktion
    PHP-Code:
        /**
         * Auto-generate an article alias if it has not been set yet
         * @param mixed
         * @param \DataContainer
         * @return string
         * @throws \Exception
         */
        
    public function generateAlias($varValueDataContainer $dc)
        {
            
    $autoAlias false;

            
    // Generate an alias if there is none
            
    if ($varValue == '')
            {
                
    $autoAlias true;
                
    $varValue standardize(String::restoreBasicEntities($dc->activeRecord->title));
            }

            
    $objAlias $this->Database->prepare("SELECT id FROM tl_article WHERE id=? OR alias=?")
                                       ->
    execute($dc->id$varValue);

            
    // Check whether the page alias exists
            
    if ($objAlias->numRows 1)
            {
                if (!
    $autoAlias)
                {
                    throw new 
    Exception(sprintf($GLOBALS['TL_LANG']['ERR']['aliasExists'], $varValue));
                }

                
    $varValue .= '-' $dc->id;
            }

            return 
    $varValue;
        } 
    generateAlias muss natürlich noch ein wenig angepasst werden

    Viele Grüße!

Aktive Benutzer

Aktive Benutzer

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

Berechtigungen

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