PDA

Zobacz pełną wersję : moduły obok siebie



danio_d
30-05-2006, 21:55
Witam,
Albo źle szukałem, albo nie ma tego na forum.
Chciałbym aby moduły, które są podpięte pod jedną 'strefe' były wyświetlane jeden obok drugiego, a nie tak jak jest standardowo jden pod drugim.
Czy moge prosić o pomoc, albo nakierowanie na rozwiazanie.

Dziękuje

Rybik
30-05-2006, 22:24
Ciezki dzien i nie mam weny na gotowca :/
Polecam zajrzec do szablonu Madeyourweb i zastosowanej tam metody publikacji obok siebie stref user1 i user2.
Z ladowaniem obok siebie w jednej strefie nie ma co kombinowac, bo traciloby sie sporo kontroli nad przestrzenia.


<?php
if ((mosCountModules( 'user1' )) && (mosCountModules( 'user2' ))) {
//if both modules are loaded, we need a 50%-layout for them
$usera = 'user1';
$userb = 'user2';
} else if ((mosCountModules( 'user1' )) || (mosCountModules( 'user2' ))) {
// if only one, then 100% no matter which one.
$usera = 'user3';
$userb = 'user3';
}

if (mosCountModules( "user1" )) { ?>
<div id="<?php echo $usera; ?>">
<?php mosLoadModules ( 'user1',-2); ?>
</div>
<?php } if (mosCountModules( "user2" )) { ?>
<div id="<?php echo $userb; ?>">
<?php mosLoadModules ( 'user2',-2); ?>
</div>
<?php } ?>

Knif polega na tym ze najpierw sprawdza czy w obu cos jest publikowane:
tak -> przypisuje zmiennym usera i userb osobne id (user1, user2)
nie -> przypisuje tym zmiennym identyczne id (user3)
potem jeszcze raz sprawdza czy cos jest w user1
tak: laduje user1 ujete w divke z id=usera
potem jeszcze raz sprawdza czy cos jest w user2
tak: laduje user2 ujete w divke z id=userb

w ten sposob jezeli obie strefy sa pelne to laduje je obok siebie w osobnych divach z wlasnym formatowaniem a jezlei ktoras jest pusta to ta druga laduje sie samotnie.
Identyfikatory user1 i user2 w css beda odpowiadac layoutowi 50%/50% a user3 dla pojedynczej na cala szerokosc.

Oczywiscie mozesz tez bez tej kombinacji wrzucic 2 strefy obok siebie.

danio_d
31-05-2006, 08:19
No skoro nie warto kombinować to zastosuje to rozwiązanie.
Dzięki i Pzdr