52

TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

  • Upload
    others

  • View
    4

  • Download
    0

Embed Size (px)

Citation preview

Page 1: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TYPO3 CMS 7.3 - îáíîâëåíèÿÍîâîââåäåíèÿ, èçìåíåíèÿ è èñïðàâëåíèÿ

Àâòîðû:Patrick Lobacher è Michael Schams

29/June/2015Creative Commons BY-NC-SA 3.0

Page 2: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Îáçîð ãëàâ

Ââåäåíèå

Backend / Âíóòðåííèé èíòåðôåéñ

TScon�g è TypoScript

Ãëóáèííûå èçìåíåíèÿExtbase è FluidÓñòàðåâøèå/óäàëåííûå ôóíêöèèÈñòî÷íèêè è àâòîðû

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 3: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Ââåäåíèå

The Facts

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 4: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

TYPO3 CMS 7.3 - ôàêòû

Äàòà âûõîäà: 16 èþíÿ 2015

Òèï: "Sprint Release"

Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü

Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer è îáðàáîòêà ðàñøèðåíèé

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 5: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Ñèñòåìíûå òðåáîâàíèÿ

PHP*: v5.5.0 - v5.6.x

MySQL: v5.5.x - v5.6.x (no strict mode)

Äèñêîâîå ïðîñòðàíñòâî: ìèí. 200 ÌÁ

PHP íàñòðîéêè:

memory_limit >= 128Mmax_execution_time >= 240sïàðàìåòð êîìïèëÿöèè �disable-ipv6 íå äîëæåí èñïîëüçîâàòüñÿ

Âíóòðåííèé èíòåðôåéñ òðåáóåò IE >= 9 èëè ëþáîé äðóãîéñîâðåìåííûé áðàóçåð

*) Ïîäðîáíîñòè: PHP Minimum Requirements for TYPO3 CMS 7

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 6: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Ãðàôèê ðàçðàáîòêè è âûõîäà

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 7: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Ìàðøðóòíàÿ êàðòà TYPO3 CMS

Ïðèìåðíûå äàòû âûõîäà è èõ íàïðàâëåííîñòü:

v7.0 02/Dec/2014 Ïåðåðàáîòêà âíóòðåííåãî èíòåðôåéñà ÷àñòü 1

v7.1 24/Feb/2015 ×èñòêà ÿäðà è îïòèìèçàöèÿ

v7.2 28/Apr/2015 Âíåøíèé èíòåðôåéñ

v7.3 16/Jun/2015 Ýêîñèñòåìà ïàêåòîâ, Composerè ðàáîòà ñ ðàñøèðåíèÿìè

v7.4 04/Aug/2015 Ïåðåðàáîòêà âíóòðåííåãî èíòåðôåéñà ÷àñòü 2

v7.5 29/Sep/2015 (áóäåò îïðåäåëåíî...)

v7.6 xx/xxx/2015 TYPO3 CMS 7 LTS (Long Term Release)

https://typo3.org/typo3-cms/roadmap/

http://typo3.org/news/article/embrace-and-innovate-typo3-cms-7/

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 8: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Óñòàíîâêà

Îôèöèàëüíàÿ ïðîöåäóðà óñòàíîâêè ïîä Linux/Mac OS X(DocumentRoot, íàïðèìåð /var/www/site/htdocs):

$ cd /var/www/site$ wget - -content - disposition get . typo3. org/7.3$ tar xzf typo3_src-7.3.0. tar . gz$ cd htdocs$ ln -s . ./typo3_src-7.3.0 typo3_src$ ln -s typo3_src/index .php$ ln -s typo3_src/typo3$ touch FIRST_INSTALL

Symbolic links ïîä Microsoft Windows:

Èñïîëüçóéòå junction ïîä Windows XP/2000Èñïîëüçóéòå mlink ïîä Windows Vista è Windows 7

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 9: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ââåäåíèå

Îáíîâëåíèå äî TYPO3 CMS 7.x

Îáíîâëåíèå âîçìîæíî ëèøü ñ TYPO3 CMS 6.2 LTS

Ñíà÷àëà TYPO3 CMS < 6.2 íåîáõîäèìî îáíîâèòü äî TYPO3 CMS6.2 LTS

Èíñòðóêöèè ïî îáíîâëåíèþ:

http://wiki.typo3.org/Upgrade#Upgrading_to_7.3

Îôèöèàëüíîå ðóêîâîäñòâî TYPO3 "TYPO3 Installation andUpgrading": http://docs.typo3.org/typo3cms/InstallationGuide

Îáùèé ïîäõîä:

Ïðîâåðêà ìèíèìàëüíûõ ñèñòåìíûõ òðåáîâàíèé (PHP, MySQL è ò. ä.)Ïðîñìîòð deprecation_*.log èç ñòàðîé óñòàíîâêè TYPO3Îáíîâëåíèå âñåõ ðàñøèðåíèé äî ïîñëåäíèõ âåðñèéÇàãðóçêà íîâûõ èñõîäíûõ ôàéëîâ è çàïóñê Install Tool �Upgrade WizardÎáçîð ìîäóëåé, çàïóñêàåìûõ äëÿ âíóòðåííèõ ïîëüçîâàòåëåé (íå îáÿçàòåëüíî)

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 10: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Backend / Âíóòðåííèé èíòåðôåéñ

Ãëàâà 1:

Backend / Âíóòðåííèé èíòåðôåéñ

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 11: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Backend / Âíóòðåííèé èíòåðôåéñ

Íàçâàíèå ñòðàíèöû â ìîäóëÿõ Ñòðàíèöà è Ñïèñîê

Èçìåíèòü íàçâàíèÿ ñòðàíèö â ìîäóëÿõ "Ñòðàíèöà" è "Ñïèñîê" òåïåðüìîæíî äâàæäû ù¼ëêíóâ ïî çàãîëîâêó ñòðàíèöû èëè ïî çíà÷êóðåäàêòèðîâàíèÿ.

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 12: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Backend / Âíóòðåííèé èíòåðôåéñ

Install Tool: óäàëåíèå îáðàáîòàííûõ ôàéëîâ

 ðàçäåëå "Clean up" èç Install Tool äîáàâëåí íîâûé ôóíêöèîíàë äëÿóäàëåíèÿ âðåìåííûõ ôàéëîâ (íàïðèìåð, ýñêèçîâ èçîáðàæåíèé) èç FAL.Ýòî ïîëåçíî ïðè èçìåíåíèè íàñòðîåê äëÿ ðàáîòû ñ ãðàôèêîé, ëèáîïîñëå îáíîâëåíèÿ GraphicsMagick/ImageMagick äëÿ ïðèíóäèòåëüíîãîïåðåñîçäàíèÿ âñåõ èçîáðàæåíèé.

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 13: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Backend / Âíóòðåííèé èíòåðôåéñ

Íîâîå ïîëå â ìåòà äàííûõ FAL Meta Data

Ê ìåòà äàííûì çàïèñåé FAL áûëî äîáàâëåíî ïîëå "Copyright" (systemextension: �lemetadata).

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 14: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

Ãëàâà 2:

TScon�g è TypoScript

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 15: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

Íîâàÿ ôóíêöèÿ stdWrap strtotime

Íîâîå ñâîéñòâî TypoScript stdWrap strtotime ïîçâîëÿåòïðåîáðàçîâûâàòü ôîðìàòèðîâàííûå äàòû â Unix timestamps,íàïðèìåð, äëÿ âû÷èñëåíèÿ äàò

Âîñïðèíèìàþòñÿ çíà÷åíèÿ 1 èëè ëþáàÿ ñòðîêà âðåìåíè,èñïîëüçóåìàÿ â âèäå ïåðâîãî àðãóìåíòà ôóíêöèè PHP strtotime()

date_as_timestamp =TEXTdate_as_timestamp {value = 2015-04-15strtotime = 1

}

next_weekday =TEXTnext_weekday {data =GP: selected_datestrtotime = + 2 weekdaysstrftime =%Y-%m-%d

}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 16: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

GPmerged â Óñëîâèÿõ

Åñëè â óñëîâèÿõ TypoScript èñïîëüçîâàòü ïåðåìåííûå GP, òîâîçâðàùåíû áóäóò ëèøü POST ïåðåìåííàÿ, â ñëó÷àå, åñëè çàïðîññîäåðæèò è POST, è GET ïåðåìåííûå.

Íîâûé ïàðàìåòð GPmerged îáúåäèíÿåò îáà ìåòîäà è âîçâðàùàåòðåçóëüòàò

[ globalVar = GPmerged:tx_demo| foo = 1]page.90 =TEXTpage.90.value =DEMO

[ global ]

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 17: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

Íîâûå ïàðàìåòðû äëÿ stdWrap.case

Ïàðàìåòðû uppercamelcase è lowercamelcase äîáàâëåíû êstdWrap.case

Ïðèìåð:

tt_content = CASEtt_content {key. f ie ld = CTypemy_custom_ctype =< lib .userContentmy_custom_ctype {

f i l e = EXT: site_base/Resources/Private/Templates/SomeOtherTemplate.htmlsettings .extraParam = 1

}default =< lib .userContentdefault {f i l e = TEXTf i l e . f ie ld = CTypef i l e .stdWrap. case = uppercamelcasef i l e .wrap = EXT: site_base/Resources/Private/Templates/| .html

}}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 18: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

Äëÿ ôàéëîâ JavaScript äîáàâëåíî ñâîéñòâî integrity (1)

Ñâîéñòâî integrity äîáàâëåíî ïðè âêëþ÷åíèè ôàéëîâ JavaScript äëÿóêàçàíèÿ SRI è âîçìîæíîñòè âåðèôèêàöèè ðåñóðñîâ(SRI: Sub-Resource Integrity, ñìîòðèòå ñëåäóþùèé ñëàéä)

Ýòî ïðèìåíèìî ê ñâîéñòâàì TypoScript PAGE page.includeJSLibs,page.includeJSFooterlibs, includeJS è includeJSFooter

Ïðèìåð:

page {includeJS {jQuery = https://code . jquery .com/jquery -1.11.3.min. jsjquery . external = 1jQuery.disableCompression = 1jQuery.excludeFromConcatenation = 1jQuery. integrity = sha256-7LkWEzqTdpEfELxcZZlS6wAx5Ff13zZ83lYO2/ujj7g=

}}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 19: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

TScon�g è TypoScript

Äëÿ ôàéëîâ JavaScript äîáàâëåíî ñâîéñòâî integrity (2)

SRI � ýòî ñïåöèôèêàöèÿ W3C, ïîçâîëÿþùàÿ ðàçðàáîò÷èêàìóáåäèòüñÿ, ÷òî ðàñïîëîæåííûå íà ñòîðîííèõ ñåðâåðàõ ðåñóðñû íåáûëè ïîääåëàíû, äëÿ ÷åãî èñïîëüçóåòñÿ

Ñîçäàíèå õåøåé öåëîñòíîñòè:

Ïàðàìåòð 1: https://srihash.orgÏàðàìåòð 2: èñïîëüçîâàíèå ñëåäóþùåé êîìàíäû shell

cat FILENAME. js | openssl dgst -sha256 -binary | openssl enc -base64 -A

Ïîäðîáíåå:

http://www.w3.org/TR/SRI/

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 20: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Ãëàâà 3:

Ãëóáèííûå èçìåíåíèÿ

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 21: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Èíòåãðàöèÿ Symfony/Console â CommandController (1)

Òåïåðü CommandController ïîçâîëÿåò èñïîëüçîâàòü Symfony/Consoleèçíóòðè è ïðåäîñòàâëÿåò ðàçíûå ìåòîäû:

TableHelper

outputTable($rows, $headers = NULL)

DialogHelper

select($question, $choices, $default = NULL, $multiSelect = false, $attempts= FALSE)ask($question, $default = NULL, array $autocomplete = array())askCon�rmation($question, $default = TRUE)askHiddenResponse($question, $fallback = TRUE)askAndValidate($question, $validator, $attempts = FALSE, $default =NULL, array $autocomplete = NULL)askHiddenResponseAndValidate($question, $validator, $attempts = FALSE,$fallback = TRUE)

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 22: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Èíòåãðàöèÿ Symfony/Console â CommandController (2)

ProgressHelper

progressStart($max = NULL)progressSet($current)progressAdvance($step = 1)progressFinish()

(ïðèìåðû êîäà íà ñëåäóþùèõ ñëàéäàõ)

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 23: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Èíòåãðàöèÿ Symfony/Console â CommandController (3)

<?phpnamespace Acme\Demo\Command;use TYPO3\CMS\Extbase\Mvc\Controller\CommandController;

class MyCommandController extends CommandController {public function myCommand() {

// render a table$this->output->outputTable(array(array( 'Bob' , 34, 'm') ,array( 'Sally ' , 21, ' f ' ) ,array( 'Blake ' , 56, 'm')

) ,array( 'Name' , 'Age' , 'Gender') ) ;

// select$colors = array( 'red ' , 'blue ' , 'yellow ') ;$selectedColorIndex = $this->output->select ( 'Please select one color ' , $colors , 'red ') ;$this->outputLine( 'You choose the color %s . ' , array($colors [ $selectedColorIndex ]) ) ;

[ . . . ]

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 24: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Èíòåãðàöèÿ Symfony/Console â CommandController (4)

[ . . . ]// ask$name = $this->output->ask( 'What is your name?' . PHP_EOL, 'Bob' , array( 'Bob' , 'Sally ' ,

'Blake ') ) ;$this->outputLine( 'Hello %s . ' , array($name)) ;

// prompt$likesDogs = $this->output->askConfirmation( 'Do you like dogs? ') ;i f ($likesDogs) {$this->outputLine( 'You do like dogs ! ') ;

}

// progress$this->output->progressStart(600) ;for ($i = 0; $i < 300; $i ++) {$this->output->progressAdvance() ;usleep(5000) ;

}$this->output->progressFinish() ;

}}?>

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 25: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Backend Login API (1)

Ïîëíîñòüþ ïåðåðàáîòàíà àâòîðèçàöèÿ âî âíóòðåííåì èíòåðôåéñå èïðåäñòàâëåí íîâûé API

Èçâëå÷åíà ôîðìà OpenID, êîòîðàÿ òåïåðü èñïîëüçóåò íîâûé API(äàâàÿ íåçàâèñèìîñòü îò ãëàâíûõ êëàññîâ ÿäðà)

Íîâàÿ êîíöåïöèÿ àâòîðèçàöèè áàçèðóåòñÿ íà "ïðîâàéäåðàõàâòîðèçàöèè", êîòîðûå ìîæíî çàðåãèñòðèðîâàòü â ôàéëåext_localconf.php ñëåäóþùèì îáðàçîì:

$GLOBALS[ 'TYPO3_CONF_VARS' ] [ 'EXTCONF' ] [ ' backend ' ] [ ' loginProviders '][1433416020] = ['provider ' => \TYPO3\CMS\Backend\LoginProvider\UsernamePasswordLoginProvider : : class

,' sorting ' => 50,' icon - class ' => 'fa -key' ,' label ' => 'LLL:EXT:backend/Resources/Private/Language/locallang . xlf : login . link '

] ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 26: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Backend Login API (2)

Ïàðàìåòðû çàäàþòñÿ ñëåäóþùèì îáðàçîì:

provider:íàçâàíèå êëàññà ïðîâàéäåðà, êîòîðûé äîëæåí ðåàëèçîâûâàòüTYPO3\CMS\Backend\LoginProvider\LoginProviderInterfacesorting:ïîðÿäîê ññûëîê íà âîçìîæíûå ïðîâàéäåðû àâòîðèçàöèè íàôîðìå àâòîðèçàöèèicon-class:íàçâàíèå çíà÷êà-íàäïèñè äëÿ ñûëêè íà ôîðìå àâòîðèçàöèèlabel:ìåòêà äëÿ ññûëêè íà ïðîâàäåðà àâòîðèçàöèè äëÿ ôîðìûàâòîðèçàöèè

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 27: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Backend Login API (3)

The LoginProviderInterface ñîäåðæèò ëèøü ìåòîä

public function render(StandaloneView $view, PageRenderer $pageRenderer,

LoginController $loginController);

Ïàðàìåòðû îïðåäåëÿþòñÿ òàêèì îáðàçîì:

$view:Fluid StandaloneView âûâîäÿùèé ôîðìó àâòîðèçàöèè.Íåîáõîäèìî óêàçàòü ôàéë øàáëîíà, à òàêæå, ïîíåîáõîäèìîñòè, äîáàâèòü ïåðåìåííûå äëÿ ñîáñòâåííûõ íóæä.$pageRenderer:Ýêçåìïëÿð PageRenderer èìååò âîçìîæíîñòü äîáàâëåíèÿíåîáõîäèìûõ ðåñóðñîâ JavaScript.$loginController:Ýêçåìïëÿð LoginController.

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 28: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Backend Login API (4)

 øàáëîíå äîëæåí áûòü ðàçäåë <f:layout name="Login"> è<f:section name="loginFormFields"> (äëÿ ïîëåé ôîðìû):

<f : layout name="Login" /><f : section name="loginFormFields"><div class="form-group t3js - login -openid- section" id="t3 - login -openid_url- section"><div class="input -group"><input type="text" id="openid_url"

name="openid_url"value="{presetOpenId}"autofocus="autofocus"placeholder="{f : translate(key: 'openId' , extensionName: 'openid ')}"class="form-control input - login t3js - clearable t3js - login -openid- f ie ld" />

<div class="input -group-addon"><span class="fa fa -openid"></span>

</div></div>

</div></f : section>

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 29: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

CategoryRegistry ñ íîâûìè ïàðàìåòðàìè

Ìåòîä CategoryRegistry->addTcaColumn ïîëó÷àåò ïàðàìåòðû äëÿçàäàíèÿ l10n_mode è l10n_display:

\TYPO3\CMS\Core\Utility\ExtensionManagementUtility : :makeCategorizable($extensionKey ,$tableName,' categories ' ,array(

'l10n_mode' => ' string (keyword) ' ,' l10n_display ' => ' l i s t of keywords'

)) ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 30: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Ñïðàéòû â ìîäóëÿõ âíóòðåííåãî èíòåðôåéñà

Ìîäóëè âíóòðåííåãî èíòåðôåéñà (îñíîâíûå, âðîäå "Âåá" è

ïîäìîäóëè, âðîäå "Ñïèñîê ôàéëîâ") òåïåðü ìîãóò èñïîëüçîâàòü

ñïðàéòû äëÿ çíà÷êîâ

(ìîæíî èñïîëüçîâàòü ëèøü ñïðàéòû, èçâåñòíûå äëÿ TYPO3!)

Ïðèìåð:\TYPO3\CMS\Core\Utility\ExtensionManagementUtility : :addModule(

'web' ,' layout ' ,'top ' ,\TYPO3\CMS\Core\Utility\ExtensionManagementUtility : : extPath($_EXTKEY) . 'Modules/

Layout/ ' ,array(

' script ' => '_DISPATCH' ,'access ' => 'user ,group' ,'name' => 'web_layout' ,' configuration ' => array( ' icon ' => 'module-web') ,' labels ' => array(' ll_ref ' => 'LLL:EXT:cms/layout/locallang_mod. xlf ' ,

) ,)

) ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 31: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

FormEngine NodeFactory API (1)

Òåïåðü âîçìîæíî çàðåãèñòðèðîâàòü íîâûå óçëû è ïåðåíàçíà÷àòüñóùåñòâóþùèå

$GLOBALS[ 'TYPO3_CONF_VARS' ] [ 'SYS' ] [ ' formEngine ' ] [ ' nodeRegistry'][1433196792] = array('nodeName' => 'input ' ,' priority ' => 40,' class ' => \MyVendor\MyExtension\Form\Element\T3editorElement : : class

) ;

Ïðèâåä¼ííûé ïðèìåð ðåãèñòðèðóåò íîâûé êëàññMyVendor\MyExtension\Form\Element\T3editorElement â êà÷åñòâåêëàññà, ôîðìèðóþùåãî òèï TCA input, êîòîðûé äîëæåíðåàëèçîâûâàòü èíòåðôåéñTYPO3\CMS\Backend\Form\NodeInterface

Êëþ÷îì ìàññèâà ñëóæèò Unix timestamp äàòû äîáàâëåíèÿðåãèñòðèðóåìîãî ýëåìåíòà

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 32: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

FormEngine NodeFactory API (2)

Åñëè äëÿ îáðàáîòêè òîãî æå òèïà áûëî çàðåãèñòðèðîâàíî íåñêîëüêîýëåìåíòîâ, èñïîëüçóåòñÿ èìåþùèé âûñøèé ïðèîðèòåò (îò 0 äî 100)

Íîâûé òèï TCA ìîæíî ðåãèñòðèðîâàòü ñëåäóþùèì îáðàçîì:TCA

'columns' => array('bodytext ' => array('config ' => array('type ' => 'text ' ,'renderType' => '3dCloud' ,

) ,) ,

)

ext_localconf.php

$GLOBALS[ 'TYPO3_CONF_VARS' ] [ 'SYS' ] [ ' formEngine ' ] [ ' nodeRegistry'][1433197759] = array('nodeName' => '3dCloud' ,' priority ' => 40,' class ' => \MyVendor\MyExtension\Form\Element\ShowTextAs3dCloudElement: : class

) ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 33: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Ãëóáèííûå èçìåíåíèÿ

Ñèãíàë postProcessMirrorUrl

Ñèãíàë postProcessMirrorUrl ïåðåìåù¼í â íîâûé êëàññ

BREAKING CHANGE!

 ñëåäóþùåì ïðèìåðå êîäà ïðèíèìàåòñÿ âî âíèìàíèå âåðñèÿTYPO3:

$signalSlotDispatcher->connect(version_compare(TYPO3_version, '7.0 ' , '<')? 'TYPO3\\CMS\\Lang\\Service\\UpdateTranslationService ': 'TYPO3\\CMS\\Lang\\Service\\TranslationService ' ,

'postProcessMirrorUrl ' ,'Vendor\\Extension\\Slots\\CustomMirror' ,'postProcessMirrorUrl '

) ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 34: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Ãëàâà 4:

Extbase è Fluid

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 35: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

ActionMenuItemGroupViewHelper (1)

Ýòîò ïðîåêòîð/ViewHelper ïîçâîëÿåò èñïîëüçîâàòü ãðóïïûïàðàìåòðîâ â ïîëÿõ âûáîðà âíóòðåííåãî èíòåðôåéñà,êîíòðîëèðóþùèå âûáèðàåìûå äåéñòâèÿ

Ïðèìåð:

<f :be.menus.actionMenu><f :be.menus.actionMenuItem label="Default : Welcome" controller="Default" action="

index" /><f :be.menus.actionMenuItem label="Community: get in touch" controller="Community"

action="index" /><f :be.menus.actionMenuItemGroup label="Information"><f :be.menus.actionMenuItem label="PHP Information" controller="Information"

action="listPhpInfo" /><f :be.menus.actionMenuItem label="Documentation" controller="Information"

action="documentation" /><f :be.menus.actionMenuItem label="Hooks" controller="Information" action="hooks"

/><f :be.menus.actionMenuItem label="Signals" controller="Information" action="

signals" /><f :be.menus.actionMenuItem label="XClasses" controller="Information" action="

xclass" /></f :be.menus.actionMenuItemGroup>

</f :be.menus.actionMenu>

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 36: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

ActionMenuItemGroupViewHelper (2)

Ïðèìåð ïðåäûäóùåãî ñëàéäà âûâîäèòñÿ ñëåäóþùèì îáðàçîì:

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 37: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Ïîääåðæêà øàáëîíîâ äëÿ FlashMessagesViewHelper

Òåïåðü FlashMessagesViewHelper ïîääåðæèâàåò øàáëîíû/templates

Íîâûé àòðèáóò as ïîçâîëÿåò óêàçàòü íàçâàíèå ïåðåìåííîé,êîòîðóþ ìîæíî èñïîëüçîâàòü âíóòðè äî÷åðíèõ ýëåìåíòîâïðîåêòîðà/ViewHelper äëÿ äîñòóïà ê âñïëûâàþùèì ñîîáùåíèÿì

Ïðèìåð:

<f : flashMessages as="flashMessages"><ul class="myFlashMessages"><f : for each="{flashMessages}" as="flashMessage"><l i class="alert {flashMessage . class}"><h4>{flashMessage . t i t le}</h4><span class="fancy- icon">{flashMessage .message}</span>

</li></f : for>

</ul></f : flashMessages>

Çàìå÷àíèå: òåïåðü ïàðàìåòð renderMode óñòàðåë

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 38: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Íîâûå ñâîéñòâà cObject FLUIDTEMPLATE (1)

cObject FLUIDTEMPLATE áûë äîïîëíåí templateRootPaths ètemplateName

×òî ïîçâîëÿåò óêàçàòü íàçâàíèå øàáëîíà è äëÿ âûâîäà áóäåòèñïîëüçîâàí øàáëîí ñ ýòèì íàçâàíèåì íàðÿäó ñ óêàçàííûìôîðìàòîì ïî ïóòè äëÿ øàáëîíîâ èç íàñòðîéêè templateRootPaths

templateRootPaths èñïîëüçóåò òó æå ëîãèêó ðåçåðâèðîâàíèÿ, ÷òî èlayoutRootPath è partialRootPath

templateName: string/stdWraptemplateRootPaths: ìàññèâ ïóòåé ê ôàéëàì ñ ïîääåðæêîéïðåôèêñà "EXT:"

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 39: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Íîâûå ñâîéñòâà cObject FLUIDTEMPLATE (2)

Ïðèìåð TypoScript:

l ib . stdContent = FLUIDTEMPLATElib .stdContent {templateName =TEXTtemplateName.stdWrap {cObject = TEXTcObject {data = levelf ie ld : -2 ,backend_layout_next_level , slideoverride . f ie ld = backend_layoutsplit {token = frontend__1.current = 11.wrap = |

}}ifEmpty = Default

}templateRootPaths {10 = EXT: frontend/Resources/Private/Templates20 = EXT: sitemodification/Resources/Private/Templates

}}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 40: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Óäàëåíèå xmlns-àòðèáóòîâ è òåãîâ HTML (1)

Ñ ââåäåíåì â îáèõîä àòðèáóòîâ xmlns:* äëÿ ïîäêëþ÷åíèÿïðîåêòîðîâ/ViewHelpers, ñòàëà âîçìîæíà ïîääåðæêà ñî ñòîðîíûIDE äëÿ øàáëîíîâ Fluid. Ïðîáëåìà áûëà â òîì, ÷òî àòðèáóòûxmlns:* ñ ñîîòâåòñòâóþùèì òåãîì òàêæå âûâîäèëèñü, ÷òî îáû÷íîíåæåëàòåëüíî.

Îáîéòè ïðîáëåìó óäàâàëîñü ñ èñïîëüçîâàíèåì sections, íî òàêîåðåøåíèå íåèíòóèòèâíî ïîíÿòíî, è íåäîïóñòèìî â ìàêåòàõ/layouts.Ýòî òàêæå íåãàòèâíî îòðàæàåòñÿ íà çàäåéñòâîâàííûõ ðåñóðñàõ.

xmlns:* àòðèáóòû äëÿ âåðíûõ îáëàñòåé èìåíîâàíèÿ ViewHelper

òåïåðü óäàëÿþòñÿ ïåðåä âûâîäîì, åñëè èñïîëüçóåòñÿ ñëåäóþùèé

ñèíòàêñèñ: http://typo3.org/ns/<phpNamespace>

(xmlns àòðèáóòû äëÿ íå-ViewHelper îáëàñòåé � ñîõðàíÿþòñÿ)

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 41: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Óäàëåíèå xmlns-àòðèáóòîâ è òåãîâ HTML (2)

Âêëþ÷åíèå îáëàñòåé èìåíîâàíèÿ ViewHelper âíóòðè òåãà HTML ñàòðèáóòîì data-namespace-typo3-�uid="true" äëÿ ïðåäîòâðàùåíèÿâûâîäà âñåãî òåãà HTML

<html data-namespace-typo3- fluid="true"xmlns: f="http://typo3.org/ns/TYPO3/CMS/Fluid/ViewHelpers"xmlns:n="http://typo3.org/ns/GeorgRinger/News/ViewHelpers">

<f : i f condition="{newsItem. t i t le}"><f :then><n: titleTag>{newsItem. t i t le}</n: titleTag>

</f :then><f : else><n: titleTag>News-Detail</n: titleTag>

</f : else></f : i f>

</html>

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 42: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Íîâûå ìåòîäû âî Fluid-StandaloneView

StandaloneView äîïîëíåí setTemplateRootPaths($templatePaths) èsetTemplate($templateName, $throwException = TRUE)

ñ òåì æå ôóíêöèîíàëîì, ÷òî è cObject FLUIDTEMPLATE

Ïðèìåð (âûâîä øàáëîíà email):

$view = GeneralUtility : :makeInstance(StandaloneView : : class ) ;$view->setLayoutRootPaths(array(GeneralUtility : : getFileAbsFileName(

'EXT:my_extension/Resources/Private/Layouts ') )) ;$view->setPartialRootPaths(array(GeneralUtility : : getFileAbsFileName(

'EXT:my_extension/Resources/Private/Partials ') )) ;$view->setTemplateRootPaths(array(GeneralUtility : : getFileAbsFileName(

'EXT:my_extension/Resources/Private/Templates') )) ;$view->setTemplate( 'Email/Notification ') ;$emailBody = $view->render() ;

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 43: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Îáðàáîòêà äàííûõ äëÿ FLUIDTEMPLATE cObject (1)

cObject FLUIDTEMPLATE äîïîëíåí dataProcessing

Ýòà íàñòðîéêà ñëóæèò äëÿ äîáàâëåíèÿ îäíîãî èëè íåñêîëüêèõîáðàáîò÷èêîâ äëÿ ðàáîòû ñ ïåðåìåííîé $data âûâîäèìîãî âòåêóùèé ìîìåíò cObject(íàïðèìåð, tt_content èëè page)

Ïðîöåññîð äîëæåí ðåàëèçîâûâàòü èíòåðôåéñFluidTemplateDataProcessorInterface è ñîäåðæàòü ñëåäóþùèé ìåòîä:

function process(array &$data , array $processorConfiguration ,array $configuration , StandaloneView $view) {[ . . . ]

}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 44: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Extbase è Fluid

Îáðàáîòêà äàííûõ äëÿ FLUIDTEMPLATE cObject (2)

Ïðèìåð:

my_custom_ctype = FLUIDTEMPLATEmy_custom_ctype {templateRootPaths {10 = EXT:your_extension_key/Resources/Private/Templates

}templateName = CustomNamesettings {extraParam = 1

}dataProcessing {1 = Vendor\YourExtensionKey\DataProcessing\MyFirstCustomProcessor2 = AnotherVendor\AnotherExtensionKey\DataProcessing\MySecondCustomProcessor2 {options {myOption = SomeValue

}}

}}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 45: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

Ãëàâà 5:

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 46: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

Ðåîðãàíèçàöèÿ FormEngine

TCA:

Ïàðàìåòðû _PADDING, _VALIGN è DISTANCE óäàëåíû èçTCA['aTable']['columns']['aField']['con�g']['wizards']

Êëþ÷ TCA['aTable']['ctrl']['mainPalette'] óäàë¼í

TScon�g:

Êëþ÷è mod.web_layout.tt_content.�eldOrder èTCEFORM.aTable.aField.linkTitleToSelf óäàëåíû

Óëîâêè/hooks:

Óëîâêè/hooks èñïîëüçóþò êëþ÷ type âìåñòî form_type

Óëîâêà/hook getSingleFieldClass óäàëåíà

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 47: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

Óäàëåíèå IdentityMap èç Extbase Persistence

Êëàññ IdentityMap óäàë¼í èç Extbase persistence

(ãåíåðèðóåòñÿ Re�ectionException ïðè åãî èñïîëüçîâàíèè)

Äîñòóï ê ðàíåå ñóùåñòâóþùåìó ñâîéñòâó IdentityMap âíóòðèDataMapper è Repository òåïåðü íå óäàñòñÿ, à ñîçäàíèåýêçåìïëÿðà IdentityMap áîëåå íåâîçìîæíî

Âìåñòî ýòîãî èñïîëüçóéòå ýêçåìïëÿð "Sessions":

$session = GeneralUtility : :makeInstance(ObjectManager : : class )->get(\TYPO3\CMS\Extbase\Persistence\Generic\Session : : class

) ;

$session->registerObject($object , $identifier ) ;

i f ($session->hasIdentifier ( $identifier )) {$object = $session->getObjectByIdentifier($identifier , $className) ;

}

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 48: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

Ðàçíîå (1)

Èñïîëüçîâàíèå ôàéëà typo3conf/extTables.php íå ðåêîìåíäîâàíî.

Âìåñòî ýòîãî èñïîëüçóéüòå ôàéë:

<your_extension>/Con�guration/TCA/Overrides/pages.php

Íàñòðîéêà $TYPO3_CONF_VARS[GFX][png_to_gif] óäàëåíà

 óñòàíîâêàõ TYPO3 CMS, íå èìåþùèõ óñòàíîâëåííîåðàñøèðåíèå rsaauth, ïàðîëè âíóòðåííåãî èíòåðôåéñà òåïåðüïðåîáðàçóþòñÿ â îáû÷íûé òåêñò(ðåøåíèå: óñòàíîâèòü ðàñøèðåíèå rsaauth èëè èñïîëüçîâàòü

HTTPS äëÿ âíóòðåííåãî èíòðåôåéñà)

Ìåòîä exec_SELECTgetRows() òåïåðü ïðîâåðÿåò ïàðàìåòð$uidIndexField. Åñëè óêàçàííîå ïîëå íå ïðèñóòñòâóåò âðåçóëüòàòàõ èç áàçû äàííûõ, âûçûâàåòñÿInvalidArgumentException.

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 49: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Óñòàðåâøèå/óäàëåííûå ôóíêöèè

Ðàçíîå (2)

DBAL ïàðàìåòð con�g.classFile óäàë¼í

Ïàðàìåòðû iconOnly è styleAttributes èç CshViewHelper òåïåðüïîìå÷åíû êàê íå ðåêîìåíäóåìûå

Ïàðàìåòð TypoScript page.bgImg òåïåðü íå ðåêîìåíäîâàí

Ìåòîä isEnabled() êëàññà T3editor òåïåðü íå ðåêîìåíäîâàí

Ñòàðûé TYPO3 ClassLoader óäàë¼í äëÿ ïîëüçû èëè èñïîëüçóåòñÿComposer ClassLoader

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 50: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Èñòî÷íèêè è àâòîðû

Ãëàâà 6:

Èñòî÷íèêè è àâòîðû

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 51: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Èñòî÷íèêè è àâòîðû

Èñòî÷íèêè

Íîâîñòè TYPO3:

http://typo3.org/news

Èíôîðìàöèÿ ïî âûõîäó âåðñèé:

http://wiki.typo3.org/TYPO3_CMS_7.3.0

INSTALL.md è ChangeLog

typo3/sysext/core/Documentation/Changelog/7.3/*

TYPO3 Bug-/Issuetracker:

https://forge.typo3.org/projects/typo3cms-core

Ðåïîçèòîðèè TYPO3 Git:

https://git.typo3.org/Packages/TYPO3.CMS.git

https://git.typo3.org/Packages/TYPO3.Fluid.git

TYPO3 CMS 7.3 - îáíîâëåíèÿ

Page 52: TYPO3 CMS 7.3 · Òèï: "Sprint Release" Íàïðàâëåííîñòü: îõâàò, èííîâàöèè, äîñòóïíîñòü Ôîêóñ: ýêîñèñòåìà ïàêåòîâ, Composer

Èñòî÷íèêè è àâòîðû

Ñëàéäû íîâîââåäåíèé TYPO3 CMS:

Patrick Lobacher(Èññëåäîâàíèÿ, ñáîð èíôîðìàöèè è íåìåöêàÿ âåðñèÿ)

Michael Schams(Ëèäåð ïðîåêòà è àíãëèéñêàÿ âåðñèÿ)

Ïåðåâîä÷èêè:Àíäðåé Àêñ¼íîâ, Sergio Catala, Jigal van Hemert, Michel Mix, Sinisa Mitrovic,

Angeliki Plati, Nena Jelena Radovic, Roberto Torresani

http://typo3.org/download/release-notes/whats-new

Licensed under Creative Commons BY-NC-SA 3.0

TYPO3 CMS 7.3 - îáíîâëåíèÿ