Menu Obrazkowo tekstowe w Kategoriach - automatycznie generowane z miniatur

marcincook

Avatar: marcincook

2009-09-08 04:00

Chciałbym w menu Kategorie wstawić miniaturkę która jest przypisana do tej strony. (oczywiście dynamicznie) wielkość potem dopasuję w CSS. a kolejnych zagłębieniach może ukryje.

ZNACZY TAAAAK BYM CHCIAŁ BAAARDZO:

<a href="strona"><img src="files/domyślna miniaturka strony">Nazwa Strony</a>



Może ma ktoś jakiś pomysł ????
Kombinuję już nad tym dwa miesiące, i udało mi się wsadzić liste podstron zawartych w stronie w lewą kolumnę ale to głupio wygląda jak wchodzimy już w dany artykół a lista plików oczywiście ginie z kolumny.
za mało znam Qcms i za mało okazuje się php :)

Kombinowałem tak ale coś robię źle i nie wychodzi:

<a href="$aData[sLinkName]" $aData[sSelected]><img src="$config[dir_files]$aImagesDefault[iSizeValue1]/$aDataImage[sFileName]" />$aData[sName]</a>



Dostaje skierowanie na katalog files ale potem D dwa razy // a nie ma nazwy pliku:

<a href="wysokie,16.html"><img src="files//">Wysokie</a>



Nie wierze że nie ma na to jakiegoś prostego rozwiązania, ale zaczynam wierzyć że jestem za głupi :)

Oczywiście edytuje plik z menu
CSS to dla mnie pestka ale z PHP mam spore problemy.

Z góry dziękuję za pomoc

» Quick.Cms v2.x

Makaron

Avatar: Makaron

2009-09-08 14:35

Trzeba by było dodać na początku funkcji throwMenu() w pliku core/pages.php kod:

$oFile =& Files::getInstance( );


Oraz później już w pętli foreach kod:

        if( isset( $oFile ) && isset( $oFile->aImagesDefault[1][$aData['iPage']] ) ){
          
$aDataImage $oFile->aFilesImages[1][$oFile->aImagesDefault[1][$aData['iPage']]];
          
$oTpl->setVariables'aDataImage'$aDataImage );
          }


Wtedy możesz stosować w szablonie templates/menu_3.tpl kod:

<img src="$config[dir_files]$aDataImage[iSizeValue1]/$aDataImage[sFileName]" alt="$aDataImage[sDescription]" />

marcincook

Avatar: marcincook

2009-09-08 18:25

COŚ NIE TAK

Ale coś źle wstawiam albo nie wiem gdzie to mam wstawić. Mianowicie:

Wszystko działa SUPER ale wyświetlane są fotki dla następnej strony

czyli:
KATEGORIE JAK SĄ
Namioty
Obuwie
Akcesoria

MENU ORAZKOWE:
Namioty - fotka z regulaminu
Obuwie - fotka z Namiotów
Akcesoria - fotka z Obuwia


Nie wiem co robie źle ale bierze fotki z jakby poziomu wyżej

Proszę o Pomoc lub solucje dokładną gdzie co wstawić lub gdzie dodać np -1 czy +1 etc bo trochę się pogubiłem

Może nie tak stosuję Poniżej kod:

pages.php

  /**
  * Return pages to menu
  * @return string
  * @param string $sFile
  * @param int    $iType
  * @param int    $iPageCurrent
  * @param int    $iDepthLimit
  */
  
  
function throwMenu$sFile$iType$iPageCurrent null$iDepthLimit ){
    
    
$oFile =& Files::getInstance( );
    
    if( !isset( 
$this->aPagesParentsTypes[$iType] ) )
      return 
null;
    
$this->mData null;

    if( isset( 
$iPageCurrent ) )
      
$this->generatePageParents$iPageCurrent );

    
$this->generateMenuData$iType$iPageCurrent$iDepthLimit);
    if( isset( 
$this->mData[0] ) ){
      
$oTpl     TplParser::getInstance( );
      
$content  null;
      
$i        0;
      
$iCount   count$this->mData[0] );

      foreach( 
$this->mData[0] as $iPage => $bValue ){
        
        if( isset( 
$oFile ) && isset( $oFile->aImagesDefault[1][$aData['iPage']] ) ){
          
$aDataImage $oFile->aFilesImages[1][$oFile->aImagesDefault[1][$aData['iPage']]];
          
$oTpl->setVariables'aDataImage'$aDataImage );
          }
          
        
$aData $this->aPages[$iPage];

        
$aData['sSubContent'] = isset( $this->mData[$iPage] ) ? $this->throwSubMenu$sFile$iPage$iPageCurrent) : null;

        
$aData['iStyle']    = ( $i ) ? 01;
        
$aData['sStyle']    = ( $i == ( $iCount ) ) ? 'L'$i 1;
        
$aData['iDepth']    = 0;
        
$aData['sSelected'] = ( $aData['iPage'] == $iPageCurrent ) ? $oTpl->tbHtml$sFile'SELECTED' ) : null;

        
$oTpl->setVariables'aData'$aData );
        
$content .= $oTpl->tbHtml$sFile'LIST' );

        
$i++;

      } 
              
      
// end foreach

      
if( isset( $content ) ){
        
$aData['sMenuType'] = $GLOBALS['aMenuTypes'][$iType];
        
$oTpl->setVariables'aData'$aData );
        return 
$oTpl->tbHtml$sFile'HEAD' ).$content.$oTpl->tbHtml$sFile'FOOT' );
      }
    }
  } 
// end function throwMenu



menu3.tpl:

<!-- BEGIN LIST --><li class="l$aData[sStyle]"><a href="$aData[sLinkName]" $aData[sSelected]><img src="$config[dir_files]$aDataImage[iSizeValue1]/$aDataImage[sFileName]" alt="$aDataImage[sDescription]" />$aData[sName]</a>$aData[sSubContent]
                                               </
li><!-- END LIST -->

<!-- 
BEGIN HEAD --><div id="menu3"><div class="type">$aData[sMenuType]</div><ul><!-- END HEAD -->
<!-- 
BEGIN FOOT --></ul></div><!-- END FOOT -->

<!-- 
BEGIN HEAD_SUB --><ul class="sub$aData[iDepth]"><!-- END HEAD_SUB -->
<!-- 
BEGIN FOOT_SUB --></ul><!-- END FOOT_SUB -->

<!-- 
BEGIN SELECTED -->class="selected"<!-- END SELECTED -->




Podaję link do strony:
http://www.alexa-inwestycje.pl

Dziękuję z góry za pomoc

I tak w jednej odpowiedzi Makaron dał mi więcej niż zrobiłem przez dwa miesiące
Z góry Serdeczne dzięki

Makaron

Avatar: Makaron

2009-09-09 09:45

Raczej nie z następnej kategorii, a pewnie nie ma opływania i tak to dziwnie się prezentuje, że zdjęcie wskakuje niżej. Sprawdzałeś to w kodzie? Lepszym rozwiązaniem byłoby zastosowanie styli i wartości background:url();

marcincook

Avatar: marcincook

2009-09-09 11:50

No tak ale jak przypisać "background:url(); " do czegoś co klient doda za 2 miesiące w zasadzie nie da się nad tym zapanować.

PHP nie znam na tyle żeby sobie z tym problemem poradzić (html-css bez problemu) ale tego statycznie nie uzyskam.

Sęk w tym iż chciałem żeby taka 50 lub 75 pikselowa miniaturka dodana była przed każdym linkiem gdyż ta strona będzie mało obszerna w treść.

Pomysł Makarona jest świetny !!!
Może to kwestia jakichś błędów może trzeba by przeczytać to jeszcze raz co w tym kodzie siedzi za dziabełek co zdjęcia bierze z kąd chce:)


PANOWIE I PANIE - Nie Podawajcie się :)

Makaron

Avatar: Makaron

2009-09-10 12:50

Background stylem tak samo można nadać w biegu. Po prostu użyć wewnętrznych styli:

style="background:url($config[dir_files]$aDataImage[iSizeValue1]/$aDataImage[sFileName]) no-repeat left top;"


Powinno grać.

marcincook

Avatar: marcincook

2009-09-11 01:49

Makaron

Proszę bardzo. Czy mógłbyś napisać gdzie dokładnie umieścić to co napisałeś ?

Ja mam cały czas wrażenie że ja popełniam błąd we wstawianiu tego w pętle foreach lub w tpl-ce menu.

(cyt:Trzeba by było dodać na początku funkcji throwMenu() ...
Oraz później już w pętli foreach kod: ...)

Ja myślę że ten problem tkwi w mojej wiedzy z php i po prostu robię błąd w skrypcie.
Poległem na tych miniaturkach w menu i nie kończę na razie css bo nie będzie potrzeby jeśli mi się tego nie uda zrobić jak chce.

Ja to chyba po prostu źle implementuje do plików bo zastosowanie miejscowego stylu nic nie zmieniło

Podaję link do strony:
http://www.alexa-inwestycje.pl

<em>Gość z tej firmy na którym jest teraz Qcms chce kupić wersje płatną narzędzia ale na razie twierdzi "że co to za świetne narzędzie jak takie żeczy się dzieją"

PS.
Czy jak wykupie płatną wersje narzędzia teraz a nie po tym jak facet uzna że kupuje , to czy pomoże mi ktoś via mail to zbudować???? Sęk w tym że opłaciłem już domenę i serwa więc kusiłem się że za narzędzie zapłacę za tydzień (kaska) a najpierw zbuduje stronę.
</em>
Proszę pomóżcie tak czy siak - robię już to 2 miesiące i jakoś chyba to teraz za punkt honoru traktuje. Kurcze to się musi dać zrobić. może wersja narzędzia ma znaczenie.

qCMS 2.0

marcincook

Avatar: marcincook

2009-09-11 02:01

Zobaczcie proszę na stronie http://www.alexa-inwestycje.pl
ten skrypt na prawdę pobiera fotki "Jakby ze strony wcześniejszej"
nie wiem czemu i staram się dojść do tego ale ja w sumię nie rozumię samego skryptu
do końca bo co innego znać php a co innego "umieć" a co innego "kopiuj z tąd wklej tam"
html i css to pestka dla mnie ale php się dopiero uczę. Więc poproszę tak łopatologicznie.

Proszę pomóżcie ludziska.

PS. umiem zastosować style miejscowe
i zamiast url wpisać skrypt który mi url wygeneruje w locie,
ale ja nie rozumiem samego skryptu tego w pętli forech bo myślę że on coś bierze poziom wyżej niż powinien albo już nie wiem co.

qCMS 2.0

pawulon

Avatar: pawulon

2010-12-13 21:26

Witam. też chciałbym zrobić, żeby w menu danej strony pojawiał się obrazek załadowany jako plik.
Czy ktoś już poradził sobie z tym problemem, że wyświetlany w menu obrazek jest ze strony poprzedniej?

Pozdrawiam.

Do góry
o nas | kontakt