Support » Lisäosat ja muokkaukset » Mainospaikka etusivun artikkelilistauksessa

  • Tarvittaisiin apua tällaisen ratkaisussa: kyseessä on demotasolla oleva sivusto, jossa etusivu näyttää uutiset, eli artikkelit kategoriasta ”uutiset”. Olen onnistunut (vailla php-koodaustaitoa) saamaan sivulle mainospaikan (iFrame), jonka pitäisi toistua kahden ensimmäisen uutisen jälkeen.

    Löysin valmiin koodinpätkän, jota olen muokkaillut, ja mielestäni sen pitäisi nyt tosiaan näyttää tuo iFrame 2:n uutisen jälkeen. Ongelma on, että mainospaikka kyllä on siellä, mutta jostain syystä KOLMEN uutisen jälkeen, ja SE VARSINAINEN ONGELMA on, että se toistuu jokaisella jatkosivulla, kun siirrytään uutissivuissa eteenpäin. Eli pitäisi saada koodi korjattua niin, että tuo mainospaikka esiintyisi VAIN ensimmäisellä sivulla. En ole tähän löytänyt apuja mistään, enkä itse kokeilemalla eri vaihtoehtoja pääse yhtään eteenpäin.

    Tähän ei nyt varmaan kannata sitä koodia ympätä, mutta jos joku haluaa auttaa, voin laittaa sen nähtäväksi jonnekin?

Esillä 6 vastausta, 1 - 6 (kaikkiaan 6)
  • Pistä vaan se koodi johonkin pastebiniin ja tänne jakoon, niin se on kätevintä.

    Ainakin etusivulle saa rajattua kätevästi käyttämällä is_front_page()-funktiota.

    Thread Starter Eemeli

    (@eemeli)

    Ok, täältä löytyy: http://pastebin.com/gA2N5Pjb

    Jes, eli juuri noin – koodi tulee aina tuolla kohdalla, joka sivulla. Kolmannen jälkeen se tulee siksi, että aloitat laskemisen nollasta. 0, 1, 2…

    Vaihdapa tämä:

    if ($c > 2 )

    muotoon:

    if ($c > 1 && is_front_page() )

    niin toiminee paremmin.

    Thread Starter Eemeli

    (@eemeli)

    Kiitoksia! Vaihdoin tuon kohdan koodiin. Nyt tilanne on kuitenkin sellainen, että kyseinen kohta toistuu aina 2:n uutisen jälkeen (eli 2 uutista > mainospaikka, 2 uutista > mainospaikka jne.), ja jatkuu (kumma kyllä) myös kaikilla jatkosivuilla (/page/2/ jne.).

    Mikähän nyt neuvoksi? Pitäisi saada sellainen loitsu sinne, ettei toistu kuin kerran, eikä tapahdu kuin ”ensimmäisellä” etusivulla.

    Ota siitä se

    $c = 0;

    pois, se käynnistää tuon aina uudestaan.

    Tuon is_front_page() pitäisi kai rajata vain etusivulle, mutta tämä voi auttaa:

    if ($c > 1 && is_front_page() && !is_paged() )

    Thread Starter Eemeli

    (@eemeli)

    Taas pienellä viiveellä palaan asiaan. Tuo viimeinen rivi auttoi ratkaisemaan sen, että näkyy vain ekalla sivulla. Piti muuttaa kylläkin näin, muuten ei toiminut:
    if ($c > 2 && is_home() && !is_paged() )

    Kiitoksia, asia ratkaistu!

Esillä 6 vastausta, 1 - 6 (kaikkiaan 6)
  • The topic ‘Mainospaikka etusivun artikkelilistauksessa’ is closed to new replies.