Antwort
 
LinkBack Themen-Optionen Thema bewerten Ansicht
  #1  
Alt 15.03.07, 12:06
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 53
Beiträge: 109

RealUrl-konformer Link auf Datensatz: z.B. Tomaten


Moin,
irgendwie werde ich nicht fündig. Nun ja, gibt es eine Möglichkeit, anstelle
www . xyz-seite . de /rezepte/kochzutaten.html?zeige=3&cHash=f2501f2304

folgenden Link zu generieren:
www . xyz-seite . de /rezepte/tomate.html

Ich will den Titel einer Zutat aus meiner Extensiontabelle Zutaten als html-Datei ausgeben. Geht das?

Gruss Mensch
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.

Geändert von mensch (07.05.08 um 07:40 Uhr).
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #2  
Alt 15.03.07, 13:40
Benutzerbild von Cybersmog
TYPO3 Forum Team
Moderator
 
Registriert seit: 24.02.06
Alter: 31
Beiträge: 2.001

Ja, sowas geht.
Entweder, wenn es wenige, statische Daten sind, über "valueMap", ansonsten über "lookUpTable". Hier ein Beispiel von tt_news:
PHP-Code:
'GETvar'      => 'tx_ttnews[tt_news]',
'lookUpTable' => array(
    
'table'               => 'tt_news',
    
'id_field'            => 'uid',
    
'alias_field'         => 'title',
    
'addWhereClause'      => ' AND NOT deleted',
    
'useUniqueCache'      => 1,
    
'useUniqueCache_conf' => array(
        
'strtolower'     => 1,
        
'spaceCharacter' => '-',
        )
    ), 
Gruß
Peter
__________________
An eagle soars, but a weasel never gets sucked into a jet engine!
TYPO3 schreibt sich TYPO3!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #3  
Alt 15.03.07, 13:52
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 53
Beiträge: 109

Danke Cybersmog, werde mich damit beschäftigen. Gruss Mensch
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
  #4  
Alt 02.04.07, 18:00
Benutzerbild von mensch
Forum Stammgast
 
Registriert seit: 11.01.07
Ort: NRW, Köln
Alter: 53
Beiträge: 109

Meine Tomaten-Lösung


Angemerkt sei: bei mir läuft seit geraumer Zeit bereits Realurl für die mehrsprachigen Standardseiten. Ziel war, dass der Link aus meiner eigenen Extension mit folgender URL
Code:
http://www.MeineSeite.com/de/gesundheit/zutaten.html?tx_MeineExtensionf_pi2%5BParameterVariante1%5D=58&cHash=9e6e618640
anders (verständlicher) umgesetzt werden sollte.

Jedoch konnte nur einem Dummie wie mir passieren, dass er verzweifelt überlegt, wie er in seiner Extension RealUrl mitgeben kann, dass dann die Links entsprechend den Vorgaben in der Konfiguration umgesetzt werden. Im nachhinein war klar, dass ich gar nix zu diesem Thema habe finden können, denn: RealUrl erkennt anhand der Parameter und des Extensionnamens, welche Behandlung greifen muss (hab mal wieder komplizierter gedacht als notwendig).

Also für alle Dummies wie ich, die ein eigenes Frontend-Plugin entwickelt haben und im Zusammenspiel mit RealUrl die Links z.B. für die Einzelübersicht der Tomaten (können auch CD's sein, Strickmuster, Automarken etc.) klar verständlich umgesetzt haben wollen:

1. Lesen der RealUrl-Documentation: http://typo3.org/documentation/docum....1.4/view/1/2/ (Habe ca. 1/100 verstanden :sad:)
2. Lesen der Beispielkonfiguration bei RealURL einbinden
3. Sichern der typo3conf/ext/realurl/ext_localconf.php (gaaanz wichtig, sonst frimmelt man)
4. Anpassen der eigenen typo3conf/ext/realurl/ext_localconf.php
5. Die Links in der Klasse korrekt aufrufen
6. Falls man die typo3conf/ext/realurl/ext_localconf.php total verhauen hat und sogar im Backend nichts mehr geht: Wissen, welche Cache-Dateien über ftp zu löschen sind.

Beispiel zu Punkt 4
Wichtig ist, dass Ihr im Bereich "pagePath" die "rootpage_id" mit der ID Eurer Rootpage initialisiert.
PHP-Code:
<?php
$TYPO3_CONF_VARS
['SC_OPTIONS']['t3lib/class.t3lib_tstemplate.php']['linkData-PostProc']['tx_realurl'] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->encodeSpURL';
$TYPO3_CONF_VARS['SC_OPTIONS']['tslib/class.tslib_fe.php']['checkAlternativeIdMethods-PostProc']['tx_realurl'] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->decodeSpURL';

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urldecodecache'] = 'tx_realurl_urldecodecache';
$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearAllCache_additionalTables']['tx_realurl_urlencodecache'] = 'tx_realurl_urlencodecache';

$TYPO3_CONF_VARS['SC_OPTIONS']['t3lib/class.t3lib_tcemain.php']['clearPageCacheEval']['tx_realurl'] = 'EXT:realurl/class.tx_realurl.php:&tx_realurl->clearPageCacheMgm';

$TYPO3_CONF_VARS['FE'] ['addRootLineFields'] .= ',tx_realurl_pathsegment,alias,nav_title,title';

$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(
  
'init' => array(
    
'enableCHashCache' => 1,
    
'enableUrlDecodeCache' => 1,
    
'enableUrlEncodeHash' => 1,
  ),
  
'rewrite' => array(
  ),
  
'preVars' => array(
    array(
      
'GETvar' => 'L',
      
'valueMap' => array(
        
'de' => '0',
        
'tr' => '1',
        
'valueDefault' => 'de',
      ),
    ),
  ),
  
'pagePath' => array(
    
'type' => 'user',
    
'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
    
'spaceCharacter' => '-',
    
'languageGetVar' => 'L',
    
'expireDays' => 3,
    
'rootpage_id' => '70'
  
),
  
'fileName' => array (
    
'defaultToHTMLsuffixOnPrev' => 1,
    
'index' => array(
      
'page.html' => array(
        
'keyValues' => array (
          
'type' => 1,
        ),
      ),
    ),
  ),
  
'postVarSets' => array(
    
'_DEFAULT' => array(
      
'zutat' => array (
        array (
          
'GETvar' => 'tx_MeineExtension_pi2[ParameterVariante1]',
          
'lookUpTable' => array (
            
'table' => 'tx_bin1tarif_n',
            
'id_field' => 'uid',
            
'alias_field' => 'feld1',
            
'useUniqueCache'=> 1,
            
'useUniqueCache_conf' => array (
              
'strtolower' => 1,
              
'spaceCharacter' => '-',
            ),
          ),
        ),
      ),
      
'malzeme' => array (
        array (
          
'GETvar' => 'tx_MeineExtensionf_pi2[ParameterVariante2]',
          
'lookUpTable' => array (
            
'table' => 'tx_bin1tarif_n',
            
'id_field' => 'feld2',
            
'alias_field' => 'n1',
            
'useUniqueCache'=> 1,
            
'useUniqueCache_conf' => array (
              
'strtolower' => 1,
              
'spaceCharacter' => '-',
            ),
          ),
        ),
      ),
    ),
  ), 
);
?>
Beispiel1 zu Punkt 5 - Initialisieren der Links
PHP-Code:
function MeineListe($rs,$sprache)  {
    
$h1=(int)0;
    
$rgw='';
    while(
$this->internal['currentRow'] = $GLOBALS['TYPO3_DB']->sql_fetch_assoc($rs))  {
      if (
$h1 <> $this->internal['currentRow']['feld3']) 
      {
        
$h1=$this->internal['currentRow']['nsort'];
        
$rgw .= '<h1>'.$this->internal['currentRow']['ng'.$sprache].'</h1>';
      }
      
$link=$this->internal['currentRow']['n'.$sprache];
      if (
$sprache == 1){
        
$piVars = array("tx_MeineExtension_pi2[ParameterVariante1]" => $this->internal['currentRow']['uid']);
      } else {
        
$piVars = array("tx_MeineExtension_pi2[ParameterVariante2]" => $this->internal['currentRow']['uid']);
      }
      
$rgw.=$this->pi_linkTP($link,$piVars,1).'<br />';     
    }
    return 
$rgw;
  } 
Beispiel2 zu Punkt 5 - Auslesen der Parameter
PHP-Code:
$Aufrufparameter $this->piVars['ParameterVariante1']; 
Darüber hinaus hatte ich unsägliche Probleme mit dem cachen meiner eigenen Extension, denn meine Listenübersicht übernahm die Cacheeinstellung meiner Seite, jedoch die Einzelansicht ging auf no_cache=1. Das bedeutete, dass jede Einzelansicht gerendert wurde.

Mein Ziel war, dass auch die Einzelseiten einmal generiert aus dem Cache geladen werden sollten. Nach grossem hin und her, habe ich festgestellt, dass es ausreicht wenn man bei dem $this->pi_linkTP Aufruf den cache auf 1 stellt. Prämisse bei alledem ist: [EXT][extCache] = 1.

Das Ergebnis war folgende URL
Code:
http://www.MeineSeite.com/de/gesundheit/zutaten/zutat/tomate.html
Gruss Mensch
__________________
Noch immer Typ3Dummie: Wenn ich weiss, dass ich nichts weiss, weiss ich mehr, als wenn ich nicht weiss, dass ich nichts weiss.

Geändert von mensch (02.04.07 um 18:07 Uhr). Grund: Wünsche frohes werkeln
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!Spurl this Post!Reddit! Diesen Post bei linksilo.de bookmarken!
Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Druckversion-Link mit RealURL und TemplaVoila CodAv TYPO3 3.x Fragen und Probleme 7 31.07.07 16:08
RealURL macht Probleme mit dem to-top link mrzweig Suchmaschinenfreundliche URLs (SEO) 4 26.07.07 11:25
Sprachauswahl mit RealURL-Link yahooooo Suchmaschinenfreundliche URLs (SEO) 2 28.06.07 20:04
Realurl schneidet link ab (oder so..) arillus Suchmaschinenfreundliche URLs (SEO) 6 18.04.07 00:00
tt_news-Link und RealUrl Florian Suchmaschinenfreundliche URLs (SEO) 0 21.08.06 13:29


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:55 Uhr.


Powered by vBulletin® Version 3.7.3 (Deutsch)
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0