Skocz do zawartości

Rekomendowane odpowiedzi

Opublikowano

Witam do umieszczania pewnego kodu w treści pierwszego posta każdego tematu korzystam ze skryptu:

<if test="reklama:|:$post['post']['post_count'] == 1">

Ale jak to zapisać aby kod był aktywowany w 1, 11, 21, 31, 41...... itd. czyli co 10 postów bez robienia czegoś w stylu:

<if test="reklama:|:$post['post']['post_count'] == 1, 11, 21, 31, 41...">

Da się zrobić coś na zasadzie x+10 czy coś ? Bo przecież nie będę wypisywał Y możliwości.. ^_^

Z góry dzięki za pomoc ;]

Opublikowano

hymm, no w sumie powinno to działać. Ale jakaś magiczna moc po zaimplementowaniu tego wyświetla mi skrypt w twoim "Ads in topic", ktore jest ustawione jako drugi post kazdego tematu, przez co ma id 0. Any idea?

Opublikowano

Tzn. ? Co się może kryć? ;p Myśle, że coś się gryzie z Twoim skryptem. Numeracja postów wygląda tak: 1 0 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 0 22.... 0 to post z reklamą z twojego skryptu.

Opublikowano

o ok, to działa. A jak by tu jeszcze dodać aby działało to dla dwóch liczb?

Troche kombinowałem ale nic z poniższych kodów nie działa ;p

<if test="$post['post']['post_count'] && ! ( $post['post']['post_count']  % 10 AND 1 )">

<if test="$post['post']['post_count'] && ! ( $post['post']['post_count']  % 10 && 1)">

<if test="$post['post']['post_count'] && ! ( $post['post']['post_count']  % 10 )"></if>
<if test="$post['post']['post_count'] && ! ( $post['post']['post_count']  % 1)"></if>

Opublikowano (edytowane)

Dziwne, w tym przypadku:

<if test="$post['post']['post_count'] && ! ( ( $post['post']['post_count']  % 10 ) || ( $post['post']['post_count']  % 6 ) )">

Nie wyświetla się ani w 6 ani w 10 poście. Dopiero w 20, 30, 40, ale nadal bez 26, 36, 46.

W tym wypadku:

<if test="$post['post']['post_count'] && ! ( ( $post['post']['post_count']  % 1 ) || ( $post['post']['post_count']  % 10 ) )">

Wyswietla sie tylko w co 10 poscie: 10, 20, 30 40, itd. nie wyswietla sie w 1, 21, 31, 41.

Natomiast w tym wypadku:

<if test="$post['post']['post_count'] && ! ( ( $post['post']['post_count']  % 10 ) || ( $post['post']['post_count']  % 1 ) )">

Rowniez wyswietla sie tylko w co 10 poscie: 10, 20, 30 40, itd. nie wyswietla sie w 1, 21, 31, 41..

Oprócz tego we wszystkich powyższych kombinacjach przestaje działać Twój skrypt Ads in Topic. ;p

P.S. Strony mam podzielone po 20 postów.

Edytowane przez Xawier
  • Manager
Opublikowano

Nie rozumiesz. Operator % zwraca resztę. Jeśli reszta z dzielenia jest zero to wtedy pokazuje reklamę ( dzięki ! ).

Zatem jakim cudem ma pokazać w 26 skoro reszta z dzielenia 26/6 nie jest równa zero.

Musisz użyć zmiennej właśnie warunkującej ilość postów na stronę, odpowiednio przemnożyć przez $this->request['st'] i odjąć od głównego licznika postów, jeśli istnieje ta zmienna ( st ).

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Opublikowano (edytowane)

aaa ;p Tylko w takim razie dlaczego to nie działa w tym przypadku:

<if test="$post['post']['post_count'] && ! ( ( $post['post']['post_count']  % 10 ) || ( $post['post']['post_count']  % 1 ) )">

Przecież w przypadku dzielenia 1/1 to reszta wynosi 0.

EDIT: Chyba juz wiem, ten zapis szuka posta, ktory daje reszte 0 przy dzieleniu przez 10 ORAZ 1.

Edytowane przez Xawier
  • Manager
Opublikowano

Problem ROZWIĄZANY. Jeśli są jakiekolwiek wątpliwości, pytania proszę o założenie nowego tematu.

Wszelkie uzasadnione reklamacje/pretensje/sugestie/rady przyjmuje ekipa forum.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.