TYPO3 CMS 7.0 · Ââåäåíèå typo3 cms 7.0 - ôàêòû Âûõîä: 2 äåêàáðÿ 2014...
Transcript of TYPO3 CMS 7.0 · Ââåäåíèå typo3 cms 7.0 - ôàêòû Âûõîä: 2 äåêàáðÿ 2014...
TYPO3 CMS 7.0 - îáíîâëåíèÿÍîâîââåäåíèÿ, èçìåíåíèÿ è èñïðàâëåíèÿ
Àâòîðû:Patrick Lobacher è Michael Schams
21/December/2014Creative Commons BY-NC-SA 3.0
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Îáçîð ãëàâ
ÂâåäåíèåBackendUITScon�g è TypoScriptÃëóáèííûå èçìåíåíèÿ
Extbase è FluidÓñòàðåâøèå/óäàëåííûåôóíêöèè
Èñòî÷íèêè è àâòîðû
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
Ââåäåíèå
Ôàêòû
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
TYPO3 CMS 7.0 - ôàêòû
Âûõîä: 2 äåêàáðÿ 2014
Òèï: "ñïðèíò"
Âèäåíèå: îõâàò, èííîâàöèè, äîñòóïíîñòü
Ôîêóñ: êàïèòàëüíûé ðåìîíò âíóòðåííåãî èíòåðôåéñà
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
Ñèñòåìíûå òðåáîâàíèÿ
PHP*: v5.5.0 - v5.6.x
MySQL: v5.5.x - v5.6.x (áåç strict mode)
Ìåñòî íà äèñêå: ìèí. 200 MB
Íàñòðîéêè PHP:
memory_limit >= 128Mmax_execution_time >= 240sïàðàìåòð êîìïèëÿöèè �disable-ipv6 íå äîëæåí èñïîëüçîâàòüñÿ
Âíóòðåííèé èíòåðôåéñ òðåáóåò IE >= 9 èëè ëþáîéñîâðåìåííûé áðàóçåð
*) Äåòàëüíî: PHP Minimum Requirements for TYPO3 CMS 7
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
Ãðàôèê ðàçðàáîòêè è âûõîäà
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
TYPO3 CMS äîðîæíàÿ êàðòà
Ïðèìåðíûå äàòû âûõîäà è èõ îñíîâíîé ôîêóñ:
v7.0 � 02/Dec/2014 Ïåðåðàáîòêà âíóòðåííåãî èíòåðôåéñà ÷àñòü 1
v7.1 � 17/Ôåâð./2015×èñòêà ÿäðà è îïòèìèçàöèÿ
v7.2 � 10/Ìàðò/2015 Âíåøíèé èíòåðôåéñ
v7.3 � 21/Àïð./2015 Êîìïîçèòîð ýêîñèñòåìû
v7.4 � 09/Èþíü/2015Ïåðåðàáîòêà âíóòðåííåãî èíòåðôåéñà ÷àñòü 2
v7.5 � 28/Èþëü/2015 (áóåäåò óòî÷íåíî...)
v7.6 � 13/Îêò./2015 ïðå-LTS èíôåðíî
v7.7 � 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.0 - îáíîâëåíèÿ
Ââåäåíèå
Óñòàíîâêà
Îôèöèàëüíàÿ ïðîöåäóðà óñòàíîâêè ïîä Linux/Mac OS X(DocumentRoot íàïðèìåð /var/www/site/htdocs):
$ cd /var/www/site$ wget - -content - disposition get . typo3. org/7.0$ tar xzf typo3_src-7.0.0. tar . gz$ cd htdocs$ ln -s . ./typo3_src-7.0.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.0 - îáíîâëåíèÿ
Ââåäåíèå
Îáíîâëåíèå äî TYPO3 CMS 7.x
Îáíîâëåíèå âîçìîæíî ëèøü ñ TYPO3 CMS 6.2 LTS
TYPO3 CMS < 6.2 äîëæíû áûòü îáíîâëåíû ñíà÷àëà äîTYPO3 CMS 6.2 LTS
Èíñòðóêöèè ïî îáíîâëåíèþ:http://wiki.typo3.org/Upgrade#Upgrading_to_7.0
Îôèöèàëüíîå ðóêîâîäñòâî TYPO3 "TYPO3 Installation andUpgrading": http://docs.typo3.org/typo3cms/InstallationGuide
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ââåäåíèå
Îáíîâëåíèå äî TYPO3 CMS 7.x
Îáùèé ïîäõîä:
Ïðîâåðêà ìèíèìàëüíûõ ñèñòåìíûõ òðåáîâàíèé (PHP, MySQLè ò. ï.)Ïðîñìîòð deprecation_*.log â ñòàðîé âåðñèè TYPO3Îáíîâëåíèå âñåõ ðàñøèðåíèé äî ïîñëåäíåé âåðñèèÇàãðóçêà íîâûõ èñõîäíûõ ôàéëîâ è çàïóñê Install Tool�Upgrade WizardÇàïóñê ìîäóëÿ îáçîðà äëÿ âíóòðåííèõ ïîëüçîâàòåëåé(îïöèîíàëüíî)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Ãëàâà 1:
Backend / Âíóòðåííèé èíòåðôåéñ
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Âêðàòöå
Çíà÷èòåëüíûå èçìåíåíèÿ âíåøíåãî âèäà âíóòðåííåãîèíòåðôåéñà
Íà áàçå Twitter Bootstrap âåðñèè 3.2.x
Ïåðåðèñîâàíû âñå çíà÷êè â ñòèëå "tile"
Çíà÷êè èñïîëüçóþò øðèôò Awesome âåðñèè 4.2.x
Ñîîòâåòñòâóþùèå èçìåíåíèÿ â îñíîâíîì ìåíþ ñëåâà
Çíà÷êè îñíîâíîãî ìåíþ â ñòèëå �at, öâåòíîé ôîí,ìîíîõðîìíûå/èíâåðñíûå ïèêòîãðàìû íà ôîíå, ñêðóãë¼ííûåóãëû
Øèðèíó ìåíþ ìîæíî óìåíüøèòü, ÷òîáû áûëè âèäíû ëèøüçíà÷êè
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Âèä è îùóùåíèå
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Âèä è îùóùåíèå
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Âèä è îùóùåíèå
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Àâòîðèçàöèÿ ïîëüçîâàòåëåé
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Îñíîâíàÿ ïàíåëü (ìåíþ ìîäóëåé)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Ìîäóëü ñïèñîê è áóôåð îáìåíà
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Ñòèëü òàáëèö
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Ïîèñê ïî ñïèñêó è ïðîñìîòð ñòðàíèöû
Ù¼ëêíèòå ïî óâåëè÷èòåëüíîìó ñòåêëó äëÿ âûâîäà áëîêàïîèñêà â ðåæèìàõ "ñïèñîê" è "ñòðàíèöà"(äî òîãî ôóíêöèÿ ïîèñêà áûëà â êîíöå ñòðàíèöû)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Çíà÷îê ñ êîëè÷åñòâîì îòêðûòûõ äîêóìåíòîâ
Êîëè÷åñòâî îòêðûòûõ äîêóìåíòîâ âûâîäèòñÿ â âèäåBootstrap "badge"(òðåáóåòñÿ ñèñòåìíîå ðàñøèðåíèå "Open Documents")
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Flash-ñîîáùåíèÿ
Îáíîâë¼í âíåøíèé âèä Flash-ñîîáùåíèé
Èñïîëüçóåòñÿ êîíòðàñòíûé òåêñò íà ôîíå áëîêà
TYPO3 CMS < 7.0 TYPO3 CMS >=
7.0
TYPO3 CMS 7.0 - îáíîâëåíèÿ
BackendUI
Âèäåî ïëååð â îêíå èíôîðìàöèè
HTML5 àóäèî è âèäåî ôàéëû ìîæíî ïðîèãðûâàòü â îêíåèíôîðìàöèè(ãäå âûâîäÿòñÿ ìåòà äàííûå)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
Ãëàâà 2:
TScon�g è TypoScript
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
TSCon�g äîñòóïåí ïðè ïðîâåðêå ññûëîå
Íàñòðîéêà TScon�g ÷èòàåòñÿ
ëèáî èç âíóòðåííåãî èíòåðôåéñà (åñëè èñïîëüçóåòñÿLinkvalidator)ëèáî èç íàñòðîåê çàäà÷ ïëàíèðîâùèêà
Ïðèìåð: TScon�g, êîòîðûé ìîæåò áûòü ïðî÷èòàí Linkchecker:mod. linkvalidator .mychecker .myvar = 1
TScon�g çàòåì äîñòóïåí â âèäå $this->tsCon�g
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
Linkcheck: îò÷¼ò îá óäàë¼ííûõ çàïèñÿõ
 TYPO3 CMS < 7.0, linkhandler òîëüêî ëèøü ïðåäóïðåæäàëî íå ñóùåñòâóþùèõ èëè óäàë¼ííûõ çàïèñÿõ
Íà÷èíàÿ ñ TYPO3 CMS >= 7.0, ñëåäóþùèå íàñòðîéêèTScon�g âêëþ÷àþò ïðåäóïðåæäåíèÿ, åñëè ññûëêè óêàçûâàþòíà íåñóùåñòâóþùèå çàïèñè:mod. linkvalidator . linkhandler . reportHiddenRecords = 1
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
RTE: íåñêîëüêî êëàññîâ CSS äëÿ ñòèëÿ
Ñîâðåìåííûì òåõíîëîãèÿì, âðîäå Twitter Bootstrap,òðåáóåòñÿ íåñêîëüêî êëàññîâ CSS äëÿ òåãà HTMLÍàïðèìåð: <a class="btn btn-danger">Âíèìàíèå</a>
Òåïåðü ïîääåðæèâàåòñÿ íåñêîëüêî CSS êëàññîâ, òî åñòüðåäàêòîðàì íóæíî áóäåò âûáðàòü ëèøü îäèí ñòèëü
RTE. classes . [ *classname* ] {. requires = l i s t of CSS classes
}
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
RTE: íàñòðîéêà CSS êëàññà, êàê íå âûáèðàåìîãî
Òåïåðü âîçìîæíî íàñòðîèòü êëàññû CSS êàê "íå âûáèðàåìûå"
// value "1" means, class is selectable// value "0" makes it not- selectableRTE. classes . [ *classname* ] {
. selectable = 1}
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
RTE: âêëþ÷åíèå íåñêîëüêèõ ôàéëîâ CSS
Òåïåðü âîçìîæíî âêëþ÷èòü íåñêîëüêî ôàéëîâ CSS
RTE. default .contentCSS {f i l e1 = fileadmin/rte_stylesheet1 . cssf i l e2 = fileadmin/rte_stylesheet2 . css
}
Áåç óêàçàíèÿ íà êàêîé-ëèáî ôàéë CSS, áóäåò ïîäêëþ÷àòüñÿôàéë ïî óìîë÷àíèþ:typo3/sysext/rtehtmlarea/res/contentcss/default.css
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
Îáðàáîòêà èñêëþ÷åíèé ïðè îáðàáîòêå cObjects (1)
 TYPO3 CMS < 7.0, ïðè îøèáêå â ïðîöåññå îáðàáîòêèîáúåêòîâ ñîäåðæèìîãî(íàïðèìåð, USER), îøèáêàñêàçûâàëàñü íà âñ¼ì âíåøíåì èíòåðôåéñå - íî íå ðàáîòàë
Íà÷èíàÿ ñ TYPO3 CMS >= 7.0, áûëè ðàçðàáîòàíû îáðàáîòêèèñêëþ÷åíèé, ÷òî ïîçâîëÿåò âûâåñòè ñîîáùåíèå âìåñòîîáúåêòà cObject ñ îøèáêîé
TYPO3 CMS 7.0 - îáíîâëåíèÿ
TScon�g è TypoScript
Îáðàáîòêà èñêëþ÷åíèé ïðè îáðàáîòêå cObjects (2)
# default exception handler (activated in context "production")config . contentObjectExceptionHandler = 1
# configuration of a class for the exception handlingconfig . contentObjectExceptionHandler =TYPO3\CMS\Frontend\ContentObject\Exception\ProductionExceptionHandler
# customised error message (show random error code)config . contentObjectExceptionHandler . errorMessage = Oops an error occurred . Code: %s
# configuration of exception codes , which are not dealt withtt_content . login .20.exceptionHandler . ignoreCodes.10 = 1414512813
# deactivation of exception handling for a specific plugins or content objectstt_content . login .20.exceptionHandler = 0
# ignoreCodes and errorMessage can be configured globally . . .config . contentObjectExceptionHandler . errorMessage = Oops an error occurred . Code: %sconfig . contentObjectExceptionHandler . ignoreCodes.10 = 1414512813
# . . . or locally for individual content objectstt_content . login .20.exceptionHandler . errorMessage = Oops an error occurred . Code: %stt_content . login .20.exceptionHandler . ignoreCodes.10 = 1414512813
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Ãëàâà 3:
Ãëóáèííûå èçìåíåíèÿ
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Èíòåãðàöèÿ jQuery UI âåðñèè 1.11.2
jQuery UI 1.11 ïîääåðæèâàåò AMD (Asynchronous ModuleDe�nition - àñèíõðîííîå îïðåäåëåíèå ìîäóëåé), ïðè ýòîìôàéëû JavaScript ïîäãðóæàþòñÿ ïî íåîáõîäèìîñèò (ïðèðîñòïðîèçâîäèòåëüíîñòè)
jQuery UI 1.11 çàìåíèëà jQuery UI 1.10 + Scriptaculous âTYPO3 CMS 7.0
Âêëþ÷åíû ëèøü êîìïîíåíòû core è interaction, ÷òîíåîáõîäèìî äëÿ çàìåíû ExtJS è Scriptaculous
Âèäæåòû íå âêëþ÷àþòñÿ (êðîìå òåõ, ÷òî èñïîëüçóåò TwitterBootstrap, âðîäå: DatePicker, Spinner, Dialog, Buttons, Tabs,Tooltip)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Ðååñòð äëÿ êëàññîâ âûâîäà ôàéëîâ / File Rendering Classes
Äëÿ âîçìîæíîñòè îáðàáîòêè âñåõ âèäîâ ìåäèà ôàéëîâ, áûëââåä¼í ðååñòð âûâîäà ôàéëîâ.Ýòî ðàáîòàåò ñëåäóþùèì îáðàçîì (íàïðèìåð, Video, MPEG,AVI, WAV è ò. ï.):<?phpnamespace . . . ;
class NameTagRenderer implements FileRendererInterface {protected $possibleMimeTypes = array( 'audio/mpeg' , 'audio/wav' , . . . ) ;public function getPriority () {return 1; // priority : the higher , the more important (max: 100)
}public function canRender(FileInterface $f i le ) {return in_array( $fi le ->getMimeType() , $this->possibleMimeTypes, TRUE) ;
}public function render(FileInterface $fi le , $width, $height , array $options = array
() , $usedPathsRelativeToCurrentScript = FALSE) {. . .
return 'HTML code ' ;}
}
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
TCA: ïðîâåðêà àäðåñîâ Email
Íîâàÿ ôóíêöèÿ "email" ïðîâåðÿåò, ÿâëÿåòñÿ ëè ââåä¼ííîåçíà÷åíèå àäðåñîì email
Åñëè ïðîâåðêà íå ïðîøëà, âûâîäèòñÿ Flash ñîîáùåíèå
Example:
'emailaddress ' => array('exclude ' => 1,' label ' => 'LLL:EXT:myextension/Resources/Private/Language/locallang_db. xlf :
tx_myextension'config ' => array('type ' => 'input ' ,' size ' => 30,'eval ' => 'email , trim '
) ,)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
AbstractCondition äëÿ ïîëüçîâàòåëüñêèå óñëîâèé TypoScript
Ïîëüçîâàòåëüñêèå TypoScript óñëîâèÿ ìîãóò áûòü ïîëó÷åíûèç AbstractConditionclass TestConditionextends \TYPO3\CMS\Core\Configuration\TypoScript\ConditionMatching\
AbstractCondition {
public function matchCondition(array $conditionParameters) {i f ($conditionParameters [0] === '= 7' && $conditionParameters [1] === '!= 6 ') {throw new TestConditionException( 'All Ok' , 1411581139) ;
}}
}
Ñîîòâåòñòâóþùèé êîä TypoScript:[Vendor\Package\TestCondition ][Vendor\Package\TestCondition = 7][Vendor\Package\TestCondition = 7, != 6]
Äîñòóïíûå îïåðàòîðû îïðåäåëÿþòñÿ â êëàññå
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Ñèãíàë äëÿ ìàíèïóëÿöèé ñ òåãàìè HTML äëÿ IconUtility
Íîâûé ñèãíàë äëÿ ìàíèïóëÿöèé ñ òåãàìè HTML IconUtilityHTML äëÿ ñïðàéòà çíà÷êîâ:
dispatch('TYPO3\\CMS\\Backend\\Utility\\IconUtility ' ,'buildSpriteHtmlIconTag ' ,array($tagAttributes , $innerHtml, $tagName)
) ;
Âûçîâ ìåòîäà:TYPO3\CMS\Backend\Utility\IconUtility\buildSpriteHtmlIconTag
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Äîáàâëåíèå ñëîòà ñèãíàëîâ ê SoftReferenceIndex
Äâà íîâûõ ñëîòà ñèãíàëîâ îáñëóæèâàþò âûçîâû â SoftReferenceIndex:protected function emitGetTypoLinkParts($linkHandlerFound, $finalTagParts , $linkHandlerKeyword, $linkHandlerValue) {return $this->getSignalSlotDispatcher()->dispatch(get_class($this) ,'getTypoLinkParts ' ,array($linkHandlerFound, $finalTagParts , $linkHandlerKeyword, $linkHandlerValue)
) ;}protected function emitSetTypoLinkPartsElement($linkHandlerFound, $tLP, $content , $elements , $idx , $tokenID) {return $this->getSignalSlotDispatcher()->dispatch(get_class($this) ,'setTypoLinkPartsElement' ,array($linkHandlerFound, $tLP, $content , $elements , $idx , $tokenID, $this)
) ;}
Âûçûâàåòñÿ â:TYPO3\CMS\Core\Database\SoftReferenceIndex->findRef_typolinkTYPO3\CMS\Core\Database\SoftReferenceIndex->getTypoLinkParts
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
afterPersistObjetct ñëîò ñèãíàëà
Íîâûé ñëîò ñèãíàëà afterPersistObject ìàÿ÷èò äëÿ êîðíÿñîâîêóïíîñòè ïîñëå ñîõðàíåíèÿ âñåõ îñòàëüíûõ îáúåêòîâ
protected function emitAfterPersistObjectSignal(DomainObjectInterface $object) {$this->signalSlotDispatcher->dispatch(__CLASS__, 'afterPersistObject ' , array(
$object)) ;}
Âûçûâàåòñÿ â:TYPO3\CMS\Extbase\Persistence\Generic\Backend->persistObject
Òîò æå ñèãíàë ìàÿ÷èò â ìåòîäå persistObject êëàññàAbstractBackend âî Flow
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Ñèãíàë â loadBaseTca
Äëÿ óëó÷øåíèÿ ïðîèçâîäèòåëüíîñòè â êîíòåêñòå âíóòðåííåãîèíòåðôåéñà, ñåé÷àñ âîçìîæíî çàêåøèðîâàòü âåñü TCA (à íåòîëüêî åãî ÷àñòè)
protected function emitTcaIsBeingBuiltSignal(array $tca) {l i s t ($tca) = static : : getSignalSlotDispatcher()->dispatch(__CLASS__,'tcaIsBeingBuilt ' ,array($tca)
) ;$GLOBALS[ 'TCA' ] = $tca ;
}
Âûçûâàåòñÿ â:TYPO3\CMS\Core\Utility\ExtensionManagementUtility\Backend->
buildBaseTcaFromSingleFiles
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
API äëÿ äîáàâëåíèÿ êåøèðóåìûõ èçìåíåíèé TCA
PHP ôàéëû â extkey/Con�guration/TCA/Overrides/âûïîëíÿþòñÿ ñðàçó ïîñëå ïîñòðîåíèÿ êåøà TCA
Ýòè ôàéëû ïðåäíàçíà÷åíû ëèøü äëÿ êîäà óïðàâëåíèÿ TCA,âðîäå: addTCAColumns èëè addToAllTCATypes
Ýòî äà¼ò ïðèðîñò ïðîèçâîäèòåëüíîñòè äëÿ âíóòðåííåãîèíòåðôåéñà, òàê êàê ðàñøèðåíèÿ ñòàðòóþò èñïîëüçóÿ ýòèôàéëû
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Òî÷êè ìîíòèðîâàíèÿ ñ ïðàâàìè èñêëþ÷èòåëüíî íà ÷òåíèå
Òî÷êè ìîíòèðîâàíèÿ ìîæíî íàñòðîèòü êàê "read only" (ñíîâà)
Ýòî áûëî âîçìîæíî â TYPO3 CMS 4.x, íî íåçàìåòíî èñ÷åçëîâ 6.x
Ïðèìåð: äîáàâèòü ïàïêó "test" õðàíèëèùà UID 3 â âèäåòî÷êè ìîíòèðîâàíèÿ òîëüêî äëÿ ÷òåíèÿ â Ñïèñîê ôàéëîâ èÏðîâîäíèê ïî ýëåìåíòàì.
options.folderTree.altElementBrowserMountPoints = 3:/test
Åñëè õðàíèøèùà íå íàñòðîåíî, ïîäðàçóìåâàåòñÿ ÷òî ïàïêàíàõîäèòñÿ â õðàíèëèùå ïî óìîë÷àíèþ.
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Ãëóáèííûå èçìåíåíèÿ
Ðàçíîå
jQuery îáíîâëåíà ñ âåðñèè 1.11.0 íà 1.11.1
Datatables áûëî îáíîâëåíî ñ âåðñèè 1.9.4 íà 1.10.2
Íåêîòîðûå ñòàðûå, íå èñïîëüçóåìûå ïåðåìåííûå áûëèóäàëåíû èç EM_CONF
Çíà÷êè ðàñøèðåíèé òåïåðü èìåþò ôîðìàò SVG (ext_icon.svg)
Òåïåðü ïåðåäà÷à íåâåðíîãî eID èäåíòèôèêàòîðà ïðèâîäèò êèñêëþ÷åíèþ
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Extbase è Fluid
Ãëàâà 4:
Extbase è Fluid
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Extbase è Fluid
Ðåçåðâíûé ïóòü ê øàáëîíó
Fluid Standalone View / àâòîíîìíûé ðåæèì, êàê è îáúåêòTypoScript FLUIDTEMPLATE òåïåðü ïîääåðæèâàåòðåçåðâíûå ïóòè
page.10 = FLUIDTEMPLATEpage.10. f i l e = EXT:myextension/Resources/Private/Templates/Main.htmlpage.10.partialRootPaths {10 = EXT:myextension/Resources/Private/Partials20 = EXT: fallback/Resources/Private/Partials
}
Åñëè èñïîëüçóþòñÿ íîâûé è ñòàðûé âàðèàíòû (Íàïðèìåð,partialRootPaths è partialRootPath), íà÷àëüíûé ïóòüïàðàìåòðà áóäåò â ïåðâîé ïîçèöèè (index = 0)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Extbase è Fluid
Typolink ViewHelper / ïðîåêòîð
Íîâûé ïðîåêòîð / ViewHelper Typolink ìîæåò ðàçáèðàòü èàíàëèçèðîâàòü ñòðîêó typolink, ñîçäàííóþ ìàñòåðîì ññûëîê èRTE<f : link . typolink parameter="{link}" target="_blank" class="ico - class" t i t le="some
t it le" additionalAttributes="{type : 'button'}">
ññûëêà ìîæåò âêëþ÷àòü:42 _blank - "This is the link t i t le" &foo=bar
Âûâîä:<a href="index .php?id=42&foo=bar" t i t le="This is the t i t le" target="_blank" class="
ico - class" type="button">
Çàìå÷àíèå: òðåáóåòñÿ ëèøü ïàðàìåòð, îñòàëüíîå íåîáÿçàòåëüíî
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Extbase è Fluid
Îáùèé àòðèáóò data-*
Âñå ïðîåêòîðû / ViewHelpers, âûâîäÿùèå òåãè HTML, òåïåðüïîääåðæèâàþò HTML5 data-* àòðèáóò
Ìàññèâ, ïåðåäàííûé êàê data ïðåîáðàçóåòñÿ è ïàðûêëþ÷/çíà÷åíèå ñîñòàâÿò àòðèáóòû: data-key="value"
Ïðèìåð:
<f :form. textfield data="{foo : 'bar ' , baz : ' foos '}" />
Âûâîä:
<input data- foo="bar" data-baz="foos" . . . />
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Extbase è Fluid
Çíà÷åíèÿ êëàññà òåãà ÷åðåç îòðàæåíèå / Re�ection
Extbase Re�ection ñåðâèñ ìîæåò âîçâðàùàòü òåãè èàííîòàöèè, äîáàâëåííûå ê êëàññó
Ïðèìåð:/*** @SomeClassAnnotation A value*/class MyClass {}
Ê àííîòàöèè ìîæíî ïîëó÷èòü äîñòóï ÷åðåç:$service = new \TYPO3\CMS\Extbase\Reflection\ReflectionService () ;
// Returns al l tags and their values the specified class is tagged with$classValues = $service->getClassTagsValues( 'MyClass') ;
// Returns the values of the specified class tag$classValue = $service->getClassTagValue( 'MyClass' , 'SomeClassAnnotation') ;
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Ãëàâà 5:
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Ñëîé ñîâìåñòèìîñòè
TYPO3 CMS 6.2: ñëîé ñîâìåñòèìîñòè ãàðàíòèðóåò ðàáîòóñòàðûõ ðàñøèðåíèé â íîâîé áàçå êîäîâÍåäîñòàòîê: ñíèæåíèå ïðîèçâîäèòåëüíîñòè (íåïîëíûé ïîòåíöèàë
ñèñòåìû)
TYPO3 CMS 7.0: ñëîé ñîâìåñòèìîñòè óäàëåí èç ÿäðàÑëåäñòâèå: ñòàðûå ðàñøèðåíèÿ âîçìîæíî íå áóäóò ðàáîòàòü
(íàïðèìåð, ðàñøèðåíèÿ áåç îáëàñòè èìåíîâàíèÿ / namespaces)
Ñîâìåñòèìîñòü ìîæíî âîññòàíîâèòü, óñòàíîâèâ ñèñòåìíîåðàñøèðåíèåEXT:compatibility6
Ðàñøèðåíèå áóäåò â áóäóùåì ïåðåìåùåíî â TER
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óïðàâëåíèå âíóòðåííèìè ïîëüçîâàòåëÿìè
Áûëî óäàëåíî ïåðåêëþ÷åíèå íà âíóòðåííåãî ïîëüçîâàòåëÿ("ðåæèì ïîìåíÿòü íà")
TYPO3 CMS 6.2
TYPO3 CMS 7.0
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óäàëåíû óñòàðåâøèå ôóíêöèè JavaScript
 ñîîòâåòñòâèå ñî ñòðàòåãèåé óñòàðåâàíèÿ, ìåòîäû JavaScript,îáúÿâëåííûõ óñòàðåâøèìè â TYPO3 CMS 4.7 áûëè óäàëåíû,íàïðèìåð:\TYPO3\CMS\Backend\Form\FormEngine->getSingleField_typeInput\TYPO3\CMS\Backend\Form\FormEngine->getSingleField_typeText\TYPO3\CMS\Core\Utility\GeneralUtility->quoted_printable\TYPO3\CMS\Core\Utility\GeneralUtility->encodeHeader
HTMLArea.Editor.forceRedraw(èñïîëüçóéòå âìåñòî ýòîãî HTMLArea.Framework.doLayout)
HTMLArea.Editor.convertNode(èñïîëüçóéòå âìåñòî ýòîãî HTMLArea.DOM.convertNode)
HTMLArea.Editor.getBlockAncestors
(èñïîëüçóéòå âìåñòî ýòîãî HTMLArea.DOM.getBlockAncestors)
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óäàëåííûå ôóíêöèè (1)
Áûëè óäàëåíû íàñòðîéêè TypoScript con�g.uniqueLinkVar
(òåïåðü ýòî ïîâåäåíèå ïî óìîë÷àíèþ)
Óäàëåí ïðîåêòîð / ViewHelper
\TYPO3\CMS\Documentation\ViewHelpers\Link\Action
(èñïîëüçóéòå âìåñòî ýòîãî f:be.buttons.icon or f:uri.*)
Óäàëåí ïàðàìåòð PageTScon�g mod.web_list.alternateBgColors
Óäàëåí PropertyMapper
(âêëþ÷àÿ ïàðàìåòð rewrittenPropertyMapper = 0)Óäàëåíû óñëîâèÿ TypoScript:
browserversionsystemuseragent
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óäàëåííûå ìåòîäû (1)
Óäàëåíû ñëåäóþùèå ìåòîäû:
connectDB
êëàññà \TYPO3\CMS\Frontend\Utility\EidUtility
isDisplayCondition
êëàññà \TYPO3\CMS\Form\FormEngine
int_from_ver
êëàññà \TYPO3\CMS\Core\Utility\GeneralUtility
getUniqueFields
êëàññà \TYPO3\CMS\Core\DataHandling\DataHandler
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óäàëåííûå ìåòîäû (2)
Óäàëåíû ñëåäóþùèå ìåòîäû
isSafeModeEnabled
êëàññà \TYPO3\CMS\Core\Utility\PhpOptionsUtility
registerSwiftMailer
êëàññà \TYPO3\CMS\Core\Bootstrap
loadTCA
êëàññà \TYPO3\CMS\Core\Utility\GeneralUtility
isLocalconfWritable
êëàññà \TYPO3\CMS\Core\Utility\ExtensionManagementUtility
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Óñòàðåâøèå/óäàëåííûå ôóíêöèè
Óäàëåííûå êëàññû
Óäàëåíû ñëåäóþùèå êëàññû:
\TYPO3\CMS\Backend\Template\MediumDocumentTemplate
\TYPO3\CMS\Extbase\Service\TypeHandlingService
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Èñòî÷íèêè è àâòîðû
Ãëàâà 6:
Èñòî÷íèêè è àâòîðû
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Èñòî÷íèêè è àâòîðû
Èñòî÷íèêè (1)
Íîâîñòè TYPO3:
http://typo3.org/news
Èíôîðìàöèÿ ïî âûõîäó âåðñèé:
http://wiki.typo3.org/TYPO3_CMS_7.0.0
INSTALL.md è ChangeLog
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.0 - îáíîâëåíèÿ
Èñòî÷íèêè è àâòîðû
Èñòî÷íèêè (2)
Ðàçëè÷íûå ñòàòüè è ðåñóðñû:
Roadmaphttps://typo3.org/typo3-cms/roadmap/
Ñòðàòåãèÿ âûïóñêîâ è êàëüêà ðàçðàáîòêèhttp://typo3.org/news/article/embrace-and-innovate-typo3-cms-7/http://wiki.typo3.org/Blueprints/Release
ÑîâìåñòèìîñòüÑîõðàíåíèå ñîâìåñòèìîñòè ñ TYPO3 CMS 6Ìèíèìàëüíûå òðåáîâàíèÿ ê PHP äëÿ TYPO3 CMS 7
Àíîíñ âûïóñêîâÏóáëèêàöèÿ ñîîáùåñòâà TYPO3 ïî TYPO3 CMS 7.0
TYPO3 CMS 7.0 - îáíîâëåíèÿ
Èñòî÷íèêè è àâòîðû
TYPO3 CMS ñëàéäû íîâîââåäåíèé:
Patrick Lobacher(Èññëåäîâàíèÿ, ñáîð èíôîðìàöèè è íåìåöêàÿ âåðñèÿ)
Michael Schams(Ëèäåð ïðîåêòà è àíãëèéñêàÿ âåðñèÿ)
Ïåðåâîä÷èêè:Àíäðåé Àêñ¼íîâ, Paul Blondiaux, Sergio Catala
Sinisa Mitrovic, Michel Mix, Roberto Torresani, Ric van Westhreenen
http://typo3.org/download/release-notes/whats-new
Licensed under Creative Commons BY-NC-SA 3.0
TYPO3 CMS 7.0 - îáíîâëåíèÿ