Page List Templates

Эту страницу не рекомендуется править на локальной-вики. Если это действительно необходимо, внесите правки через корневую вики вашей фермы.

Рекомендуется создавать новые шаблоны здесь: ThisSite.PageListTemplates?.

Кстати, логика поиска pagelist-шаблона следующая:

  1. смотрим на текущей странице
  2. смотрим ThisSite.PageListTemplates?
  3. смотрим ThisFarm.PageListTemplates
  4. смотрим Site.PageListTemplates (дефолтные шаблоны PmWiki )

Применяется шаблон, найденным первым. Таким образом, возможно "переопределять" любой шаблон на каждом из первых трех шагов.

fmt=#title (замещает дефолтный шаблон)

Отличия:

  • убрана сортировка "по алфавиту" по-умолчанию (поскольку редко когда это нужно);
  • добавлен параметр list=normal;
  • добавлен опциональный параметр phlist, через который можно сделать список сортированным вот так: (:pagelist group=PmWikiPh phlist=# :)
  • добавлен опциональный параметр phlabel, через который можно передавать кастомный текст в начало листинга
Простой ul/ol-листинг
(:if2 false:)
[[#title]]
(:template defaults phlist=* list=normal :)
(:template first :)(:if !equal {$$phlabel} "" :){$$phlabel}(:ifend:)
(:template each :)
{$$phlist} [[{=$FullName}|+]]
[[#titleend]]
(:if2end:)
(:pagelist fmt=#title phlist=# count=5:)

fmt=#EditmodeCookSyntax (листинг синтаксиса рецептов)

(:if false:)
[[#EditmodeCookSyntax]]
(:template defaults list=normal :)
!!!! {=$Title}
(:div:)
(:include {=$FullName}:)

%right small newwin% [[{=$FullName}|edit]]
(:divend:)
[[#EditmodeCookSyntaxend]]
(:ifend:)
(:pagelist fmt=#EditmodeCookSyntax  group=PmWikiPh name=*-Syntax count=5:)

Подменяемые картинки: синтаксис

Вывод превью, по клику - полноразмерные:
>>phImageSwapper<<
Mini:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-066.jpg,doom2-plut-087.jpg
>><<

Вывод полноразмерных:
>>phImageSwapper<<
Attach:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-066.jpg
Attach:PmWikiPh/MiniPhotogallery-Examples/doom2-plut-087.jpg
>><<

edit

Фотогалерея Mini: синтаксис

Рецепт Mini, оригинальная докуметация

  • Mini:picture.jpg сгенерить превьюшку picture.jpg
  • Mini:pic1.jpg,pic2.jpg,pic3.jpg сгенерить галерею из этих картинок
  • Mini:* сгенерить галерею из всех картинок данной страницы
  • Mini:r*,S*,t* сгенерить галерею из картинок, начинающихся на R, S или T (чувствительно к регистру).
  • Mini:*.jpg,-pic1.jpg все JPG'и кроме pic1.jpg
  • Mini:pic1.jpg,* сначала показать pic1.jpg, затем все остальные, кроме него. Mini:*,pic1.jpg сработает аналогично, точно указанные картинки всегда будут идти перед общими масками
  • [[Other page | mini:picture.jpg ]] - превьюшка, ссылающая на другую страницу (а не на оригинал изображения). Достигается за счет строчной буквы "m",

В целом синтаксис Mini такой же, как Attach, т.е. можно написать, например: Mini:PmWikiPh/SomePage/*7*

Создание галерей с масштабированием - MiniN:*, где:

  • при N = 1 - 151x111
  • при N = 2 - 314x234 (в два раза больше Mini1 по сторонам)
  • при N = 3 - 640x360 (16/9)
  • при N = 4 - 640x480 (в четыре раза больше Mini1 по сторонам)
  • (:mini 120x120:), или, в общем случае (:mini m1=80x80 m2=90x45 m3=141x100 m9=0x128x50x0x90x000000:) - определить собственные параметры масштабирования на данной странице

>>width=652px ...<< - формирует столбец, шириной как Mini4. Красиво.
>>width=978px ...<< - формирует столбец, шириной как Mini4 + Mini2.


Репозиторий рецепта

edit

Мультитеги: синтаксис

(:multytags:off:): на текущей странице отключить механизм выбора "связанных страниц". Вместо него автоматически включится встроенный в PmWiki функционал, автоматически собирающий все вики-ссылки контента страницы. Внимание! Чтобы команда работала, необходимо учесть ее обработку в условиях запуска Мультитегов здесь Настройки режима редактирования.

edit

Мультаплоадер: синтаксис

Пример настроек для Ph:PmWikiPh/Adding-Custom-Frontend-Code

<script type='text/javascript'>
  var showThumbs = 0;
  var checkText = false;
</script>

edit

Подсветка синтаксиса

(:source lang=php linenum tabwidth=4:) [@
Разметка для вывода исходного кода с подсветкой синтаксиса, параметры:
lang=XXX - подсветка по правилам языка XXX, популярные:
    html5
    javascript
    jquery
    php
    css
    text
linenum - включить нумерацию строк
tabwidth=N - ширина при отображении табуляций, работает только при заданном lang
@ ] <- тут без пробела!

Все поддерживаемые языки

Geshi Version: 1.0.8.12

langfull name
4csGADV 4CS
6502acmeMOS 6502 (6510) ACME Cross Assembler format
6502kickassMOS 6502 (6510) Kick Assembler format
6502tasmMOS 6502 (6510) TASM/64TASS 1.46 Assembler format
68000devpacMotorola 68000 - HiSoft Devpac ST 2 Assembler format
abapABAP
actionscriptActionScript
actionscript3ActionScript 3
adaAda
aimmsAIMMS3
algol68ALGOL 68
apacheApache configuration
applescriptAppleScript
apt_sourcesApt sources
armARM ASSEMBLER
asmASM
aspASP
asymptoteasymptote
autoconfAutoconf
autohotkeyAutohotkey
autoitAutoIt
avisynthAviSynth
awkawk
bascomavrBASCOM AVR
bashBash
basic4glBasic4GL
bfBrainfuck
bibtexBibTeX
blitzbasicBlitzBasic
bnfbnf
booBoo
cC
c_loadrunnerC (LoadRunner)
c_macC (Mac)
c_winapiC (WinAPI)
caddclCAD DCL
cadlispCAD Lisp
cfdgCFDG
cfmColdFusion
chaiscriptChaiScript
chapelChapel
cilCIL
clojureClojure
cmakeCMake
cobolCOBOL
coffeescriptCoffeeScript
cppC++
cpp-qtC++ (Qt)
cpp-winapiC++ (WinAPI)
csharpC#
cssCSS
cuesheetCuesheet
dD
dartDart
dclDCL
dcpu16DCPU-16 Assembly
dcsDCS
delphiDelphi
diffDiff
divDIV
dosDOS
dotdot
eE
ecmascriptECMAScript
eiffelEiffel
emaileMail (mbox)
epcEPC
erlangErlang
euphoriaEuphoria
eztEZT
f1Formula One
falconFalcon
foFO (abas-ERP)
fortranFortran
freebasicFreeBasic
freeswitchFreeSWITCH
fsharpF#
gambasGAMBAS
gdbGDB
generogenero
genieGenie
gettextGNU Gettext
glslglSlang
gmlGML
gnuplotGnuplot
goGo
groovyGroovy
gwbasicGwBasic
haskellHaskell
haxeHaxe
hicestHicEst
hq9plusHQ9+
html4strictHTML
html5HTML5
iconIcon
idlUno Idl
iniINI
innoInno
intercalINTERCAL
ioIo
ispfpanelISPF Panel
jJ
javaJava
java5Java(TM) 2 Platform Standard Edition 5.0
javascriptJavascript
jclJCL
jqueryjQuery
kixtartKiXtart
klonecKLone C
klonecppKLone C++
latexLaTeX
lbLiberty BASIC
ldifLDIF
lispLisp
llvmLLVM Intermediate Representation
locobasicLocomotive Basic
logtalkLogtalk
lolcodeLOLcode
lotusformulasLotus Notes @Formulas
lotusscriptLotusScript
lscriptLScript
lsl2LSL2
luaLua
m68kMotorola 68000 Assembler
magiksfMagikSF
makeGNU make
mapbasicMapBasic
matlabMatlab M
mircmIRC Scripting
mmixMMIX
modula2Modula-2
modula3Modula-3
mpasmMicrochip Assembler
mxmlMXML
mysqlMySQL
nagiosNagios
netrexxNetRexx
newlispnewlisp
nginxnginx
nimrodNimrod
nsisNSIS
oberon2Oberon-2
objcObjective-C
objeckObjeck Programming Language
ocamlOCaml
ocaml-briefOCaml (brief)
octaveGNU/Octave
oobasOpenOffice.org Basic
oorexxooRexx
oracle11Oracle 11 SQL
oracle8Oracle 8 SQL
oxygeneOxygene
ozOZ
parasailParaSail
parigpPARI/GP
pascalPascal
pcrePCRE
perper
perlPerl
perl6Perl 6
pfOpenBSD Packet Filter
phpPHP
php-briefPHP (brief)
pic16PIC16
pikePike
pixelbenderPixel Bender 1.0
pliPL/I
plsqlPL/SQL
postgresqlPostgreSQL
postscriptPostScript
povrayPOVRAY
powerbuilderPowerBuilder
powershellPowerShell
proftpdProFTPd configuration
progressProgress
prologProlog
propertiesPROPERTIES
providexProvideX
purebasicPureBasic
pyconPython (console mode)
pys60Python for S60
pythonPython
qq/kdb+
qbasicQBasic/QuickBASIC
qmlQML
racketRacket
railsRails
rbsRBScript
rebolREBOL
regMicrosoft Registry
rexxrexx
robotsrobots.txt
rpmspecRPM Specification File
rsplusR / S+
rubyRuby
rustRust
sasSAS
scalaScala
schemeScheme
scilabSciLab
sclSCL
sdlbasicsdlBasic
smalltalkSmalltalk
smartySmarty
sparkSPARK
sparqlSPARQL
sqlSQL
standardmlStandardML
stonescriptStoneScript
systemverilogSystemVerilog
tclTCL
teratermTera Term Macro
textText
thinbasicthinBasic
tsqlT-SQL
typoscriptTypoScript
uniconUnicon (Unified Extended Dialect of Icon)
upcUPC
urbiUrbi
uscriptUnreal Script
valaVala
vbVisual Basic
vbnetvb.net
vbscriptVBScript
veditVedit macro language
verilogVerilog
vhdlVHDL
vimVim Script
visualfoxproVisual Fox Pro
visualprologVisual Prolog
whitespaceWhitespace
whoisWhois (RPSL format)
winbatchWinbatch
xbasicXBasic
xmlXML
xorg_confXorg configuration
xppX++
yamlYAML
z80ZiLOG Z80 Assembler
zxbasicZXBasic

edit

fmt=#todo (листинг todo-блоков)

(:if false:)
[[#todo]]
(:template none:)
Ни одной задачи не найдено.
(:template defaults list=normal self=0 :)
<div class="panel panel-info">
<div class="panel-heading">[[{=$FullName}|+]] (:if2 !equal {=$:Cost} "":)'-('''{=$:Cost}''' нормочасов)-'(:if2end:)</div>
<div class="panel-body">
(:include {=$FullName}#todo:)
</div>
</div>
[[#todoend]]
(:ifend:)
(:pagelist fmt=#todo #todo group=PmWikiPh count=5:)

Ни одной задачи не найдено.


Ниже следуют Pagelist'инги из Рецептов

SitemapsPack (см. Ph:PmWikiPh/SitemapsPack )

fmt=#SitemapsPack-Editmode (карта сайта для режима редактирования)

(:if false:)
[[#SitemapsPack-Editmode]]
(:template defaults list=normal order=group,-ctime:)
(:template first :)
<br>
<div class='row'>
(:template first {=$Group}:)
<div class='pagelist-SitemapsPack-Editmode col-md-3 col-sm-4 col-xs-6'>
%newwin%[[{=$Group}.{=$Group}|+]]
(:template each:)
* %apply=item object% %obj-title%{=$Title} %newwin obj-link%[[{=$Group}/{=$Name}|GO]] %obj-name%{=$Group}/{=$Name}
(:template last {=$Group}:)
</div>
(:template last:)
</div>
%right% Всего {$$PageCount} страниц.
[[#SitemapsPack-Editmodeend]]
(:ifend:)
(:pagelist fmt=#SitemapsPack-Editmode count=6:)

Легкая сборка PmWiki

  • Легкая сборка PmWiki GO Index/Index

Main?

  • WikiSandbox GO Main/WikiSandbox
  • HomePage GO Main/HomePage

PmWiki

  • Contact us GO PmWiki/ContactUs
  • GroupCustomizations GO PmWiki/GroupCustomizations
  • Forms GO PmWiki/Forms

Всего 6 страниц.

fmt=#SitemapsPack-Accordion (эффектная Карта Сайта в виде аккордеона)

(:if false:)
[[#SitemapsPack-Accordion]]
(:template defaults list=normal order=group,-ctime:)
(:template first {=$Group}:)
!!!!{=$Group}
<div class='pagelist-SitemapsPack-Accordion'>
(:template each:)
<div class='object'>%obj-title%{=$Title} %obj-name%{=$Group}/{=$Name}%newwin%[[{=$Group}/{=$Name}|go]]
</div>
(:template last {=$Group}:)
<div class='clearfix'></div>
</div>
(:template last:)
%right% Всего {$$PageCount} страниц.
[[#SitemapsPack-Accordionend]]
(:ifend:)
(:pagelist fmt=#SitemapsPack-Accordion count=6:)

Index

Легкая сборка PmWiki Index/Indexgo

Main

WikiSandbox Main/WikiSandboxgo
HomePage Main/HomePagego

PmWiki

Contact us PmWiki/ContactUsgo
GroupCustomizations PmWiki/GroupCustomizationsgo
Forms PmWiki/Formsgo

Всего 6 страниц.

fmt=#MultyTags

Формирование списков тегов для режима редактирования
(:if false:)
[[#MultyTags]]
(:template defaults list=normal:)
(:template first {=$Group}:)
(:div class='col-md-3 col-sm-4 col-xs-6 SelectWrapper':)
%newwin% [[{=$Group}.{=$Group}|+]]:
(:template each:)
(:if2 equal {=$Name} {=$Group} :)
(:input select name=phMultyTagsArr[] {=$FullName} "{=$Title} (index)" multiple size=16 class=form-control:)
(:else2:)
(:input select name=phMultyTagsArr[] {=$FullName} "{=$Title}" multiple size=16 class=form-control:)
(:if2end:)
(:template last {=$Group}:)
(:divend:)
(:template last:)
[[<<]] 
[[#MultyTagsend]]
(:ifend:)
превью недоступно

превью недоступно