2017-08-31 163 views
0

我創建了這樣一個pagetree:TYPO3 - 頁面ID導出和導入與「導出到.t3d」的pagetree時改變 - V8

[0]Site 
|_[1]Root 
..|_[3]Home 
..|_[4]Company 
..|_[2]Prices 
..|_[5]Solutions 
..|_[6]News 
..|_[7]Contact 
..[8]Footer //Folder 
....|_[9]Impressum 
....|_[10]Terms of Use 
....|_[11]Sitemap 

當我與「導出到.t3d」導出並將data.t3d文件嵌入到分發的初始化文件夾中...通過ftp將其移動到ext文件夾並在另一個站點的擴展管理器(空白)中激活它,頁面的頁面ID會發生變化:

[0]Site 
|_[1]Root 
..|_[11]Home 
..|_[10]Company 
..|_[9]Prices 
..|_[8]Solutions 
..|_[7]News 
..|_[6]Contact 
..[2]Footer //Folder 
....|_[5]Impressum 
....|_[4]Terms of Use 
....|_[3]Sitemap 

當我從第二個到第三個網站(空白)執行同樣的操作時...頁面ID保持不變:

[0]Site 
|_[1]Root 
..|_[11]Home 
..|_[10]Company 
..|_[9]Prices 
..|_[8]Solutions 
..|_[7]News 
..|_[6]Contact 
..[2]Footer //Folder 
....|_[5]Impressum 
....|_[4]Terms of Use 
....|_[3]Sitemap  

'Export to .t3d'按照什麼邏輯分配頁面ID?爲什麼他們第一次不會保持不變?因此,我需要重新定義我的配置設置...

+0

當你導入時,你應該選擇'強制所有UID值'來獲得所有的原始uid,這也將覆蓋現有的 – jokumer

+0

好吧。但是,在將導出的data.t3d嵌入到分發的Initialisation文件夾中,並通過將其移動到ext文件夾中並通過ftp激活擴展,然後在擴展管理器中激活擴展時,我可以在哪裏找到該選項? –

回答

1

導入時您有一個選項force uids。這將使用與導出完成相同的uid。 但是可能會破壞導入安裝中的數據(如果已經有這些uid的數據)。

因此,TYPO3使用搬遷進口。 Uid在進口時被修改以避免碰撞或覆蓋。

TYPO3嘗試識別所有uid,但有時(字段未明確定義爲頁面uids,typoscript中的用法,...)失敗,您需要手工修改uid。

請注意,force uids不僅用於所有用戶,還用於pages記錄。

如果您導入到空白安裝中,則會按導入中出現的順序生成頁面。如果您安裝一次導入的網站的導出(如果您沒有同時更改網頁),這將是相同的順序。在第二次導出之前,在第二次導出之前添加,刪除或移動第二次安裝中的頁面會導致第三次導入時更改uid。

+0

好的。很高興知道。在上述情況下,我將其導入空白網站。所以如果已經存在的用戶體驗它的那種敏感。但是,在將導出的data.t3d嵌入到分發的Initialisation文件夾中並通過ftp將其移至ext並激活擴展管理器中的擴展來激活分發時,我可以在哪裏找到此選項?類似在本教程中:https://jweiland.net/video-anleitungen/typo3/typo3-projekte-verwalten/templates-als-distribution.html#c2754 –

+0

我還沒有建立分配,所以我不知道是否有一個選項可以強制擴展內部的uid。但我會假設你在空安裝中使用/安裝發行版。 –

+0

Afaik無法通過分發擴展的Initilisation文件夾強制使用UID。用於強制使用UID的複選框僅是impexp系統擴展的導入操作的一部分。 –