Skocz do zawartości
Pecetowicz Forum komputerowe

Batflat CMS. Aktualizacja kodu Bloga. Dynamiczne numery.


Przejdź do rozwiązania Rozwiązane przez -n3veR,

Rekomendowane odpowiedzi

Witam. Trafiłem na dość większy problem. Przenoszę starą stronę na nowy CMS ( Batflat ). Lekki i Przyjazny

Na starej stronię ktoś wymyślił ze każdy post na stronie głównej ma przypisany numer od 1-13. I Można pod nim wstawić "reklame" i pozycja reklamy zawsze jest na wyznaczonych miejscach "if($i==8) itp

Plik 

Ukryta zawartość

    Zareaguj na post lub odpowiedz w temacie aby zobaczyć ukrytą zawartość.

Potrzebuję pomocy jak to zrobić w batflacie

Jak zrobić, żęby posty na głównej stronie dostawaly dynamicznie numery od 1-xx

Ukryta zawartość

    Zareaguj na post lub odpowiedz w temacie aby zobaczyć ukrytą zawartość.

Może ktoś bardziej kumaty ode mnie mi pomoże albo naprowadzi na pomysł.

  • Lubię to! 2
  • Wrr 1
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Ekspert

Linijka 243 masz takie coś:

$this->tpl->set('blog', $assign);

A pod `$assign['posts']` masz wszystkie posty (linijka 226), więc w sumie chwilę wcześniej możesz dodać dodatkowe dane do `$row` dla 1-x.

Później w pliku `blog.html` - gdzie pewnie też jest pętla, która te posty wyświetla - trzeba wyświetlić te dodatkowe info, które umieściłeś wcześniej w PHP i już.

  • Lubię to! 2
  • Super 1
Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)

@MeshαrskyBo są to pliki php do pobrania, za duża ilość kodu. 

@-n3veR Kurde, nie wiele mi to mówi, Nie wiem co dodać... Probowałem zrobić for() ale każdy post dostaw ten sam numer. 😕

Zawartość Blog.posts 

            {loop: $blog.posts}
            <article class="col-xs-12 col-sm-12 post-color" style="background: #fcfcfc;height: 130px;margin: 5px 0px;" data="{$value.ads_id}">
                {if: $value.cover_photo}
                <div class="row">
                <div class="col-sm-2 post-image" style="margin-bottom: 5px;">
                    <a href="{$value.url}">
                        <div style="background-image: url('{$value.cover_url}'); background-size: cover;height:100px;width: 100px; background-position: center;"></div>
                    </a>
                </div>
                {/if}
                <div class="col-sm-10 post-header">
                    <h2>
                        <a href="{$value.url}">{$value.title}</a>
                    </h2>
                    <p style="font-size:12px">{$value.intro}</p>
                </div>
                <div class="col-sm-12" style="background-color: rgb(238, 238, 238);">
                    <p style="font-size:10px;padding:0px;line-height:0.5;">Data: {$value.published_at}</p>
                </div>
            </div>
            </article>
            {/loop}

 

Edytowane przez Damian Damiano
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Ekspert

@Damian Damiano co to mają być za dane dla pierwszych 13-stu postów? Dodatkowy atrybut dla `article`?

  • Super 1
Odnośnik do odpowiedzi
Udostępnij na innych stronach
Napisano (edytowane)

@-n3veR 
Mam moduł reklamowy. I Teraz Chce zrobić żeby właśnie każdy 'Article' dostawał jakiś "ads_id" od 0 do XX.
Tylko on też musi być dodawany automatycznie. 

I Wtedy właśnie dodaje w blog.html
{If: $position.ads == $value.ads_id}{

No i Kod HTML} 
Więc jak będzie 13 postów na strone to ostatni musi dostać do ads_id = 13.
A pierwszy post ads_id = 0; 

To pod tym wyznaczonym "article" pokaże się ten kod reklamy.

Tak jak w pliku news.inc.php
Ktoś wymyślił ze każda tabelka z postem ma jakis " $i " 
a reklama dodawana była, że 
if($i == 1){

}

To właśnie pod pierwszym postem pokazywała się reklama i chcę to zrobić w batflacie.
Więc musze jakoś wygenerować te " $i " dla każdego posta 🙂

Edytowane przez Damian Damiano
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Ekspert
  • Rozwiązanie
Napisano (edytowane)

W Site.php podmień to (187 linijka)

foreach ($rows as $row) {

na to:

foreach ($rows as $key => $row) {

Podmień też to (225 linijka) :

$this->filterRecord($row);

Na to:

$row['ads_id'] = $key;

$this->filterRecord($row);

No i teraz w pliku szablonu będziesz mógł korzystać z klucza `ads_id`.

 

Nie wiem tylko jakiego typu i co zawiera `$key` z zapytania dla `$rows`. Dlatego najpierw sprawdź 'co tam siedzi'.

Edytowane przez -n3veR
  • Lubię to! 2
  • Super 1
Odnośnik do odpowiedzi
Udostępnij na innych stronach
  • Ekspert

Najlepiej, to ogarnij dokumentację: https://www.php.net/manual/en/control-structures.foreach.php

$rows to array. Ogólna budowa arraya jest taka:

$array = [
'key1' => 'value1',
'key2' => 'value2',
'key3' => 'value3',
'key4' => 'value4',
'key5' => 'value5',
];

No i jeżeli potrzebujesz w pętli poznać pod jakim kluczem jest dana wartość, to korzystasz z rozszerzonej wersji foreach() - tej co ja 😉

  • Lubię to! 3
  • Super 1
Odnośnik do odpowiedzi
Udostępnij na innych stronach

Problem wciąż nierozwiązany? Dodaj swoją odpowiedź

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto. Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Podobna zawartość

    • Przez v3nz
      phpLiteAdmin for Batflat CMS.
      phpLiteAdmin is a web-based SQLite database admin tool written in PHP with support for SQLite3 and SQLite2. Following in the spirit of the flat-file system used by SQLite, phpLiteAdmin consists of a single source fil that is dropped into a directory on a server and then visited in a browser.
      There is no installation required. The available operations, feature set, interface, and user experience is comparable to that of phpMyAdmin.
      Home Page: phpliteadmin.org Last Updated: 2018 Version: 1.0.0 GitHub: sruupl/batflat-pla License: GPL v3 Download phpLiteAdmin for Blat
      Download the latest version of phpLiteAdmin from GitHub.
      How to install phpLiteAdmin
      Download this repository on your computer. Unzip the downloaded files. Move extracted files to the Batflat directory into the phpliteadmin folder. Change the default password in the configuration file. Open in browser http://your-domain.com/phpliteadmin/
    • Przez CzareK
      Batflat to polski system zarządzania treścią, który jest prosty, lekki i szybki. Po raz pierwszy został wydany w maju 2016. Darmowa wersja aplikacji jest udostępniona w ramach licencji, która wymaga pozostawienia informacji o autorach oraz linku zwrotnego. Batflat sprawdza się świetnie podczas tworzenia małych serwisów, takich jak wizytówki firmowe, portfolia, blogi czy strony domowe. 
      Skrypt powstał jako lekka alternatywa dla ciężkich i przestarzałych CMS-ów. Budując ten system zarządzania treścią staraliśmy się o to, by nawet początkujący webmaster potrafił podpiąć swój szablon oraz napisać własny moduł.
      Zaimplementowaliśmy prosty system szablonów i banalną architekturę aplikacji. CMS nie wymaga do działania bazy MySQL, gdyż wszystkie dane gromadzi w jednym pliku. Powoduje to niesamowite ułatwienie podczas przenoszenia strony na inny serwer. Wystarczy skopiować wszystkie pliki i przenieść. To wszystko. Niczego nie trzeba konfigurować i zmieniać.
      Batflat posiada tłumaczenie polskie, angielskie, francuskie, rosyjskie, tureckie, włoskie i szwedzkie. Zarówno panel administracyjny jak i szablon domyślny jest w pełni responsywny, co zapewnia dostęp na każdym urządzeniu mobilnym, nawet na telefonie.
      Batflat is a Polish content management system that is simple, light and fast. It was first released in May 2016. The free version of the application is shared under a license that requires leaving information about the authors and backlinks. Batflat works great when creating small websites such as business identity, portfolios, blogs or home pages.
      Batflat does not require MySQL database, because all the data are collected in a single file.
      Author: Sruu Home Page: batflat.org Current Version: 1.3.6 Last Update: 2020 License: GNU GPLv3 GitHub: sruupl/batflat Languages: Polish, English, French, Italian, Turkish, Swedish and Russian. Download Batflat
      Latest version from GitHub
      Features
      Lightweight Fast Simple SEO Friendly Multilingual Mobile Ready Easy Theming Requirements
      Apache 2.2+ with mod_rewrite PHP version 5.6+ Access to SQLite How to Install Batflat
      First download the latest version of Batflat. Extract all files from the compressed package and then transfer them to the local directory or remote server. Open your browser and navigate to the address where the Batflat’s files are located. To go to the administration panel, add /admin/ at the end of the URL. The initial login and password are “admin”. It should be changed right after login for security reasons.  Previews


    • Przez v3nz
      Witam. Wykonuję strony internetowe a'la portfolio, jakieś strony dla przewoźników, architektów, itp. Dotychczas robiłem wszystko w kodzie, bez CMS-a, a gdy klient chciał jakieś zmiany to pisał do mnie i ja mu je robiłem. Z czasem mam coraz więcej klientów i takie rozwiązanie zaczyna być bardzo uciążliwe. Chciałbym dostarczać klientowi stronę z prostym panelem admina, gdzie bez problemu mógłby dodać jakieś nowe zdjęcie na stronę, nowy tekst lub edytować tekst / zdjęcie. Nie chcę używać wordpress'a, bo według mnie na takie błahe potrzeby jest on niepotrzebny i tylko obciążałby serwery. W takim razie, co polecacie? 🙂
    • Przez Heisenberg9931
      Witam. Pobrałem system zarządzania treścią Batflat. Jak mogę go zainstalować / wgrać na swojej stronie. Jest jakaś instrukcja albo poradnik? 
×
×
  • Dodaj nową pozycję...