Tematy bez nowych odpowiedzi

RealURL config mm_forum


Autor Wiadomość
Napisane: 09.10.2007 [15:16]
pol
Twórca tematu
zarejestrowany: 06.09.2007
Posty: 1
Witam

Widzę, że forum.typo3swiat.pl ma dość ciekawie przepisany config realURL mm_forum.
Czy mogę poprosić o źródło? Najbardziej zależy mi na ustawieniu linka do ostatniego posta w temacie (ten pod ikonką)

pozdrawiam
pol
Napisane: 09.10.2007 [16:16]
kasztan
admin
zarejestrowany: 14.08.2006
Posty: 489
Witam na forum,

naturalnie możemy się podzielić wiedzą.

TYPOSCRIPT
'mm_forum' => array(
array(
'GETvar' => 'tx_mmforum_pi1[action]',
'valueMap' => array(
'temat' => 'list_topic',
'post' => 'list_post',
),
),
array(
'GETvar' => 'tx_mmforum_pi1[fid]',
'lookUpTable' => array(
'table' => 'tx_mmforum_forums' ,
'id_field' => 'uid',
'alias_field' => 'forum_name',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),
array(
'GETvar' => 'tx_mmforum_pi1[tid]',
'lookUpTable' => array(
'table' => 'tx_mmforum_topics' ,
'id_field' => 'uid',
'alias_field' => 'uid',
'addWhereClause' => ' AND NOT deleted',
'useUniqueCache' => 1,
'useUniqueCache_conf' => array(
'strtolower' => 1,
'spaceCharacter' => '-',
),
),
),                                                           
array(
'GETvar' => 'tx_mmforum_pi1[page]',
 
 
),
array(
'GETvar' => 'tx_mmforum_pi1[user_id]',
 
),
 
),


Pozdrawiam

Kasztan

Certified Level 2 "TYPO3 Night Crew" Member
Certified "TYPO3 TRYDIVER"
Napisane: 17.04.2009 [10:45]
salvi
zarejestrowany: 02.04.2008
Posty: 17
Jak pozbyć się tych wielokrotnych ukośników z linków? Wszystko działa, ale głupio to wygląda i wolałbym się ich pozbyć...

nie wiem też jak Google reaguje na takie wielokrotne ukośniki...

Napisane: 17.04.2009 [11:33]
biesior
admin
zarejestrowany: 20.03.2008
Posty: 1338
Niestety mm_forum przekazuje dość sporo parametrów w linkach, dlatego jego porządne skonfigurowanie wymaga bardzo delikatnych i precyzyjnych zmian.

Osobiście poleciłbym Ci skoncentrowanie się na realurlowym fixedPostVars...

Dodatkowo dokumentacja mm_forum sugeruje wymuszenie wyświetlania niektórych parametrów, jako sposób na puste slashe (de facto np. /forum/new_post//214.html oznacza /forum/new_post/{parametr niedopisany do linka}/214.html) - zatem jeśli wymusisz jego wstawienie - zlikwidujesz te puste przestrzenie.

Sprawdź właściwość w panelu administracyjnym mm_forum: General > Enable RealURL support (ja nie mam nigdzie postawionego fora a na tym testować nie będę... bo... mi nie wolno icon_smile.gif poza tym google pogubi ścieżki icon_smile.gif )

zobacz manuala mm_forum - tam masz opisaną właśnie tą sytuację:
http://typo3.org/documentation/document-library/extension-manuals/mm_forum/0.1.7/view/1/4/#id4000956

Sesja wygasła, zaloguj się, żeby się wylogować.

T3CI
Certified Level 2 TYPO3 Night Crew Member.
KO System enthusiast
Napisane: 17.04.2009 [11:43]
biesior
admin
zarejestrowany: 20.03.2008
Posty: 1338
biesior napisał/a

Sprawdź właściwość w panelu administracyjnym mm_forum: General > Enable RealURL support...


PS: konkretnie: moduł Web - mm_forum -> Install -> General settings -> Enable RealURL support

This option will activate the mm_forum-RealURL support. This will extend links generated by the mm_forum with additional parameters allowing RealURL to create nicer looking URLs.

Innymi słowy powypełnia puste slashe, daj proszę znać, jak to działa icon_smile.gif

Sesja wygasła, zaloguj się, żeby się wylogować.

T3CI
Certified Level 2 TYPO3 Night Crew Member.
KO System enthusiast
Napisane: 17.04.2009 [15:32]
salvi
zarejestrowany: 02.04.2008
Posty: 17
Dzięki Biesior! Coś-niecoś Twoje uwagi wniosły. Teraz walczę, walczę i walczę - ale albo mam wielokrotne slashe, albo mi linki nie działają... Powalczę i zobaczymy co z tego wyjdzie... Jak się uda to dam znać...

Napisane: 18.04.2009 [23:22]
salvi
zarejestrowany: 02.04.2008
Posty: 17
OK, coś nie coś wymodziłem. Ale najpierw słowo wstępu:

Z konfiguracją taką jak podana powyżej i w wielu innych źródłach w najlepszym wypadku wychodziły mi linki w postaci:

PHP
www.mojeforum.tld/forum/[b]mm_forum[/b]/kategoria/5/


no i ten fragment mm_forum wkurzał mnie niebotycznie.

W końcu wygooglałem gdzieś na jakimś niemieckim forum poniższą konfigurację i używając wskazówek Biesiora doszedłem do w miarę przyzwoitych efektów, tzn. linki wyglądają np. tak:

PHP
http://www.mojeforum.tld/forum/kategoria/5/


Oto konfiguracja do RealURLa:

PHP
$TYPO3_CONF_VARS['EXTCONF'] ['realurl'] ['_DEFAULT'] = array(
 
'init' => array(
        'enableCHashCache' => 1,
        'enableUrlDecodeCache' => 1,
        'enableUrlEncodeHash' => 1,
        'respectSimulateStaticURLs'=>1,
        'postVarSet_failureMode' => 'redirect_goodUpperDir',
 
),
'rewrite' => array(
),
'preVars' => array(
 
        array(
                'GETvar' => 'L',
                'valueMap' => array(
                        'pl' => '0',
                        'en' => '1',
                ),
                'noMatch' => 'bypass',
                //'valueDefault' => 'de',
        ),
        array(
              'GETvar' => 'no_cache',
              'valueMap' => array(
                      'no_cache' => 1,
             ),
              'noMatch' => 'bypass',
        ),
),
 
'pagePath' => array(
        'type' => 'user',
        'userFunc' => 'EXT:realurl/class.tx_realurl_advanced.php:&tx_realurl_advanced->main',
        'spaceCharacter' => '-',
        'languageGetVar' => 'L',
        'expireDays' => 3,
),
 
'fileName' => array (
        'defaultToHTMLsuffixOnPrev' => 0,
        'index' => array(
                'page.html' => array(
                        'keyValues' => array (
                                'type' => 1,
                        ),
                ),
        ),
),
 
 'fixedPostVarSets' => array(),
 'fixedPostVars' => array(
                'mm_forum_pi3' => array(
                        array(
                                'GETvar' => 'tx_mmforum_pi3[folder]',
                                'valueMap' => array(
                                        'odebrane'  => 'inbox',
                                        'wyslane'   => 'send',
                                        'archiwum'  => 'archiv'
                                )
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi3[action]',
                                'valueMap' => array(
                                        'czytaj'    => 'message_read',
                                        'napisz'    => 'message_write',
                                        'kasuj'     => 'message_del'
                                )
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi3[messid]',
                                'lookUpTable' => array(
                                        'table' => 'tx_mmforum_pminbox' ,
                                        'id_field' => 'uid',
                                        'alias_field' => 'subject',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array(
                                                'strtolower' => 1,
                                                'spaceCharacter' => '-',
                                        ),
                                ),
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi3[userid]',
                                'lookUpTable' => array(
                                        'table' => 'fe_users' ,
                                        'id_field' => 'uid',
                                        'alias_field' => 'username',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array(
                                                'strtolower' => 1,
                                                'spaceCharacter' => '-',
                                        ),
                                ),
                        )
                ),
                'mm_forum_pi1' => array(
                        array(
                                'GETvar' => 'tx_mmforum_pi1[action]',
                                'valueMap' => array(
                                        'kategoria' => 'list_topic',
                                        'temat' => 'list_post',
                                        'profil' => 'forum_view_profil',
                                        'nowy-wpis' => 'new_post',
                                        'nowy-temat' => 'new_topic',
                                        'zglos' => 'post_alert',
                                        'edytuj-wpis' => 'post_edit',
                                        'kasuj-wpis' => 'post_del',
                    'historia-wpisow' => 'post_history',
                    'bez-odpowiedzi' => 'list_unans',
                    'nieczytane' => 'list_unread',
                    'ustaw-jako-przeczytane' => 'reset_read',
                    'wlacz-powiadomienia' => 'set_havealook',
                    'wylacz-powiadomienia' => 'del_havealook',
                    'dodaj-do-ulubionych' => 'set_favorite',
                    'ustaw-jako-rozwiazany' => 'solve',
                    'ustaw-jako-nierozwiazany' => 'unsolve',
                    'usun-z-ulubionych' => 'del_favorite',
                    'prefiks' => 'list_prefix'
                                ),
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi1[fid]',
                                'lookUpTable' => array(
                                        'table' => 'tx_mmforum_forums' ,
                                        'id_field' => 'uid',
                                        //'alias_field' => 'forum_name',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array(
                                                'strtolower' => 1,
                                                'spaceCharacter' => '-',
                                        ),
                                ),
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi1[tid]',
                                'lookUpTable' => array(
                                        'table' => 'tx_mmforum_topics' ,
                                        'id_field' => 'uid',
                                        //'alias_field' => 'topic_title',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array(
                                                'strtolower' => 1,
                                                'spaceCharacter' => '-',
                                        ),
                                ),
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi1[pid]',
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi1[page]',
                        ),
                        array(
                                'GETvar' => 'tx_mmforum_pi1[user_id]',
                                'lookUpTable' => array(
                                        'table' => 'fe_users' ,
                                        'id_field' => 'uid',
                                        'alias_field' => 'username',
                                        'addWhereClause' => ' AND NOT deleted',
                                        'useUniqueCache' => 1,
                                        'useUniqueCache_conf' => array(
                                                'strtolower' => 1,
                                                'spaceCharacter' => '-',
                                        ),
                                ),
                        ),
 
                ),
                '6' => 'mm_forum_pi1',
                '18' => 'mm_forum_pi3'
        ),
);


Zauważcie, że wykomentowałem wszystkie 'alias_field'. Zrobiłem to dlatego, że wolę mieć parametry liczbowe niż opisowe. Te drugie może by coś więcej dawały pod względem pozycjonowania, ale linki robią się niekiedy koszmarnie długie i w związku z tym nieestetyczne. Efektem ubocznym jest to, że PHP wywala trochę warrningów więc trzeba wyłączyć na amen raportowanie błędów (co i tak się robi w środowisku produkcyjnym):

PHP
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/mojeforum.tld/httpdocs/t3lib/class.t3lib_db.php on line 834
 
Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /var/www/vhosts/mojeforum.tld/httpdocs/t3lib/class.t3lib_db.php on line 861


W razie czego oświećcie mnie jeśli powinienem zrobić tu coś inaczej.
Poza tym w powyższym kodzie mogą być jakieś kwiatki - używajcie na własne ryzyko i dajcie znać jak coś znajdziecie.

Znalazłem też już jeden syf. Link do profilu użytkownika wygląda tak:

PHP
http://www.mojeforum.tld/forum/profil/salvi/


ale w module "informacje o portalu" niestety wygląda tak:

PHP
http://www.mojeforum.tld/forum/profil/////salvi/


i nie mam pojęcia co z tym zrobić. Ktoś ma jakiś pomysł?