Vietnes dzinejs
#1
Man, ka jau es rakstīju, attiecībā uz kubele attīstību apnikusi šie php+mysql risinājumi, un gribas kaut ko vieglu html'īgu un man piedavā: https://getgrav.org/downloads Būs jāizmēģina.
"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
#2
Nu iekopēju to grav webserverī, viss it kā iet. Nu laikam jāatrod laiks kaut ko rakstīt, mazliet ātrāk par pensijas laiku Wink
https://labsa.mooo.com/inzenieris/lv
"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
#3
Grav is a modern open source flat-file CMS

Grav ir moderna atvērtā koda plakano failu CMS, - kas nozīmē ka aktīva "atvērtā koda" Satura Pārvaldības Sistēma (SPS jeb CMS). "Plakano failu" nozīme ka nav aizmugurē darbojošās tiešsaistes datubāzes, bet viss tiek glabāts viegli pieejamā "atklātā tekstā" flat jeb plakanā datubāzē.
"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
#4
Vienkāršs piemērs GRAV lapas Markdown failam (
Kods:
default.md
):
Kods:
---
title: Mana lapa
---

# Sveiki, šī ir GRAV lapa

Šeit ir parasts teksts. 

Un šeit ir saite uz [Google](https://www.google.com).

Vai arī iekšēja saite uz citu GRAV lapu: 
[Pāriet uz kontaktu lapu](/contacts)
👉 Paskaidrojums:
  • Kods:
    --- ... ---
    daļa ir frontmatter, kur var norādīt lapas parametrus (
    Kods:
    title
    ,
    Kods:
    menu
    ,
    Kods:
    visible
    u.c.).
  • Kods:
    [teksts](URL)
    ir standarta Markdown saites sintakse.
  • Ārējām saitēm lieto pilnu URL (
    Kods:
    https://...
    ).
  • Iekšējām saitēm pietiek ar GRAV lapas ceļu (
    Kods:
    /contacts
    atvērs
    Kods:
    /user/pages/contacts/default.md
    ).
Lieliski, GRAV iekšējās saites var veidot vairākos veidos, atkarībā no tā, kā struktūrē lapas mapēs.
Ļoti īsumā: katra GRAV lapa ir mape ar
Kods:
default.md
(vai
Kods:
item.md
u.c.) failu, un tās ceļš nosaka adresi.
1. Vienkārša iekšējā saite
Ja tev ir struktūra:
Kods:
user/pages/
  01.home/default.md
  02.about/default.md
  03.contacts/default.md
Tad saitē vari rakstīt:
Kods:
[Par mani](/about) 
[Kontakti](/contacts)
👉
Kods:
/about
un
Kods:
/contacts
atbildīs
Kods:
02.about
un
Kods:
03.contacts
.

2. Saite uz apakšlapu
Ja lapai ir apakšlapas, piem.:
Kods:
02.about/
   default.md
   team/
      default.md
   history/
      default.md
Tad:
Kods:
[Komanda](/about/team) 
[Vēsture](/about/history)

3. Saite ar page.find() Twig sintaksē
Ja lapas saturs tiek rakstīts Twig režīmā (
Kods:
.md
failā
Kods:
process: { twig: true }
), vari izmantot GRAV API:
Kods:
[Kontakti]({{ page.find('/contacts').url }})
Tas ir noderīgi, ja lapu pārvieto, saite automātiski pielāgosies.

4. Saite uz enkuriem (lapas iekšienē)
Ja lapā ir sadaļas ar virsrakstiem, vari piesaistīties pie tiem:
Kods:
[Pāriet uz sadaļu zemāk](#projekti)
## Projekti
Šeit sākas projekta apraksts...

⚡ Praktiska piezīme: GRAV "pārdēvē" mapes nosaukumu par URL segmentu.

Kods:
02.about/

Kods:
/about
neatkarīgi no cipara priekšā.

Tu gribi izveidot apakšlapu (piem., “Revit”), un no tās lapas saturā vai izvēlnē ielikt saiti atpakaļ uz saknes lapu (homepage).
GRAV struktūrā tas izskatītos tā:
Kods:
user/pages/
  01.home/
    default.md
  02.revit/
    default.md

1.
Kods:
default.md
Revit lapai
Kods:
---
title: Revit
---
# Revit tēma
Šī ir tematiskā Revit lapa. 
Atpakaļ uz [Sākumlapu](/).
👉
Kods:
(/)
vienmēr norāda uz saknes lapu (homepage).

2. Alternatīva ar Twig (ja vajag dinamisku)
Ja lapā ieslēgts Twig (
Kods:
process: { twig: true }
), vari drošāk rakstīt:
Kods:
[Atpakaļ uz sākumlapu]({{ base_url_absolute }})
Tas izmantos konfigurācijā norādīto saknes adresi (droši arī apakšdomēnos, apakšmapēs).

3. Navigācijas izvēlnē (ja vēlies globālu saiti)
Ja vēlies, lai izvēlnē vienmēr ir saite uz “Revit” un vienmēr ir saite uz “Sākumlapa”, pietiek to iestatīt
Kods:
default.md
frontmatter:
Kods:
user/pages/02.revit/default.md
---
title: Revit
menu: Revit
visible: true
---
Tad izvēlnē būs abas lapas, un lietotājs varēs klikšķināt uz Sākumlapa vai Revit bez papildus Markdown saitēm.
"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
#5
Lielisks jautājums 👍
Twig ir sagatavju valoda (šablonu valoda), ko izmanto GRAV (un arī Symfony, Drupal u.c.).
Ar to tu vari “ievietot loģiku” HTML vai Markdown lapās — piemēram, izdrukāt mainīgos, izveidot nosacījumus vai ciklus.

Kā Twig darbojas GRAV vidē
  • Parasti GRAV lapa ir tikai Markdown (
    Kods:
    .md
    ) fails.
  • Ja lapas frontmatter sadaļā pievieno:
    Kods:
    process:
      twig: true
    tad GRAV ļauj lapas saturā izmantot Twig.

Twig sintakses piemēri
  1. Mainīgā izdruka
Kods:
Mājaslapas adrese: {{ base_url_absolute }}
  1. Iekšējās lapas URL meklēšana
Kods:
[Kontakti]({{ page.find('/contacts').url }})
Tas nozīmē: atrod lapu
Kods:
/contacts
un izdrukā tās URL.
(Ļoti noderīgi, jo, ja lapas nosaukums mainīsies, saite joprojām strādās.)
  1. Nosacījumi
Kods:
{% if page.title == "Revit" %}
Šī ir Revit lapa
{% endif %}
  1. Cikls (lapu saraksts)
Kods:
{% for p in page.children %}
- [{{ p.title }}]({{ p.url }})
{% endfor %}
Tas automātiski izveido sarakstu ar apakšlapu saitēm.

Kāpēc Twig ir noderīgs?
  • Dinamisks saturs: piemēram, automātiskas saites, jaunāko rakstu saraksts.
  • Mazāk kļūdu: ja pārvieto lapas, Twig saitēs nekas “nelūzīs”.
  • Elastība: vari pārbaudīt nosacījumus un mainīt saturu atkarībā no konteksta.

"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
#6
Ja gribi detalizētu un uzticamu informāciju par Twig, ir vairāki labi avoti:

1. Oficiālā Twig dokumentācija
  • Vietne: https://twig.symfony.com/doc/
  • Saturs: visu Twig sintaksi, funkcijas, filtrus, nosacījumus, ciklus un labākās prakses piemērus.
  • Plus: ļoti skaidri izklāstīti piemēri, piemēroti arī GRAV lietošanai.

2. GRAV dokumentācija par Twig
  • Vietne: https://learn.getgrav.org/17/themes/twig-primer
  • Saturs: Twig kontekstā tieši GRAV, piemēram, kā izmantot
    Kods:
    page.find()
    , mainīgos, ciklus, nosacījumus.
  • Ļoti noderīgi, jo dažas GRAV funkcijas atšķiras no tīrā Twig.

3. YouTube un raksti
  • Meklēšana:
    Kods:
    "Twig tutorial"
    vai
    Kods:
    "GRAV CMS Twig"

  • Viegli saprotami video ar soli pa solim piemēriem.

4. Praktiskie piemēri
  • Atver savu GRAV projektu, ieliec
    Kods:
    process: { twig: true }
    un eksperimentē:
Kods:
{{ base_url_absolute }}
{{ page.find('/contacts').url }}
{% for p in page.children %}
- [{{ p.title }}]({{ p.url }})
{% endfor %}
  • Šādi vari redzēt, kā Twig strādā dzīvē.
"Kā cilvēks, kam trūkst pašcieņas, nav dīdzējs, bet nīcējs, tā arī tauta, kurai nav pašapziņas." K.Mīlenbahs
Atbilde
« Vecāks | Jaunāks »


Pārlēkt uz:


Users browsing this thread: 1 Guest(s)