Typo3将版本6.x更新为版本8.x,以尝试激活扩展程序

时间:2018-10-09 08:26:21

标签: php typo3 typo3-8.x

我正在尝试将Typo3扩展从版本6.x升级到8.x。现在,当我尝试激活此扩展程序时出现以下错误。

1351584844:必须提供参数“ key”或“ id”(更多信息)

  

TYPO3Fluid \ Fluid \ Core \ Exception抛出文件   /var/www/html/typo3_src-8.7.19/typo3/sysext/fluid/Classes/ViewHelpers/TranslateViewHelper.php在第133行。

我的locallang.xlf看起来像这样:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
            <xliff version="1.0" >
                <file source-language="en" datatype="plaintext" original="messages" date="2018-03-19T14:34:40Z"
                      product-name="certification">
                    <header/>
                    <body>
                        <!-- Zertifikatsgenerator -->
                        <trans-unit id="tx_certification_topic.Certification">
                            <source>Certificate generator</source>
                            <target>Zertifikatsgenerator</target>
                        </trans-unit>


                        <!-- Event -->
                        <trans-unit id="tx_certification_domain_model_event">
                            <source>Event</source>
                            <target>Seminar</target>
                        </trans-unit>`enter code here`
                        <trans-unit id="tx_certification_domain_model_event.start_date_time">
                            <source>Start Date</source>
                            <target>Beginn</target>
                        </trans-unit>
                        <trans-unit id="tx_certification_domain_model_event.end_date_time">
                            <source>End Date</source>
                            <target>Ende</target>
                        </trans-unit>

                        <trans-unit id="tx_certification_domain_model_event.whole_day">
                            <source>wholeDay</source>
                            <target>ganzer Tag</target>
                        </trans-unit>

                        <trans-unit id="tx_certification_domain_model_event.topic">
                            <source>Topic</source>
                            <target>Thema</target>
                        </trans-unit>
                        <trans-unit id="tx_certification_domain_model_event.location">
                            <source>Location</source>
                            <target>Ort</target>
                        </trans-unit>
                        <trans-unit id="tx_certification_domain_model_event.speaker">
                            <source>Speaker</source>
                            <target>Referent</target>
                        </trans-unit>

                        <trans-unit id="tx_certification_domain_model_event.price_netto" >
                            <source>Price Netto</source>
                            <target>Preis netto</target>
                        </trans-unit>

                        <trans-unit id="tx_certification_domain_model_event.sold_out" >
                            <source>Sold Out</source>
                            <target>Veranstaltung ausgebucht</target>
                        </trans-unit>
                        <trans-unit id="tx_certification_domain_model_event.learning_content">
                            <source>Learning Content</source>
                            <target>Lerninhalt</target>
                        </trans-unit>
                     </body>
                  </file>
              </xliff>

我的locallang_csh_tx_certification_domain_model_event.xlf看起来像这样:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
    <xliff version="1.0">
        <file source-language="en" datatype="plaintext" original="messages" date="2018-03-20T10:45:29Z"
              product-name="certification">
    <header/>
    <body>
        <trans-unit id="start_date_time.description">
            <target>Beginn</target>
            <source>start</source>
        </trans-unit>
        <trans-unit id="end_date_time.description">
            <source>endDateTime</source>
        </trans-unit>
        <trans-unit id="whole_day.description">
            <source>wholeDay</source>
        </trans-unit>
        <trans-unit id="topic.description">
            <source>topic</source>
        </trans-unit>
        <trans-unit id="topicFullName.description">
            <source>topicFullName</source>
        </trans-unit>
        <trans-unit id="location.description">
            <source>location</source>
        </trans-unit>
        <trans-unit id="speaker.description">
            <source>speaker</source>
        </trans-unit>
        <trans-unit id="price_netto.description">
            <source>priceNetto</source>
        </trans-unit>
        <trans-unit id="sold_out.description">
            <source>soldOut</source>
        </trans-unit>
        <trans-unit id="learning_content.description">
            <source>learningContent</source>
        </trans-unit>
    </body>
</file>
</xliff>

我的部分事件(FormFields.html):

    <label for="startDateTime">
        <f:translate key="tx_certification_domain_model_event.start_date_time" />
    </label><br />
    <f:form.textfield property="startDateTime"  value="{event.startDateTime->f:format.date()}" /><br />
    <label for="endDateTime">
        <f:translate key="tx_certification_domain_model_event.end_date_time" />
    </label><br />
    <f:form.textfield property="endDateTime"  value="{event.endDateTime->f:format.date()}" /><br />
    <label for="wholeDay">
        <f:translate key="tx_certification_domain_model_event.whole_day" />
    </label><br />
    <f:form.checkbox property="wholeDay" value="1" /><br />
    <label for="topic">
        <f:translate key="tx_certification_domain_model_event.topic" />
    </label><br />
    <f:form.textfield property="topic" /><br />
    <label for="location">
        <f:translate key="tx_certification_domain_model_event.location" />
    </label><br />
    <f:form.textfield property="location" /><br />
    <label for="speaker">
        <f:translate key="tx_certification_domain_model_event.speaker" />
    </label><br />
    <f:form.textfield property="speaker" /><br />
    <label for="priceNetto">
        <f:translate key="tx_certification_domain_model_event.price_netto" />
    </label><br />
    <f:form.textfield property="priceNetto" /><br />
    <label for="soldOut">
        <f:translate key="tx_certification_domain_model_event.sold_out" />
    </label><br />
    <f:form.checkbox property="soldOut" value="1" /><br />
    <label for="learningContent">
        <f:translate key="tx_certification_domain_model_event.learning_content" />
    </label><br />
    <f:form.textfield property="learningContent" /><br />


My Properties.html:
<table class="tx-certification" >
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.start_date_time" />
        </td>
        <td>
            {event.startDateTime -> f:format.date()}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.end_date_time" />
        </td>
        <td>
            {event.endDateTime -> f:format.date()}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.whole_day" />
        </td>
        <td>
            {event.wholeDay}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.topic" />
        </td>
        <td>
            {event.topic}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.location" />
        </td>
        <td>
            {event.location}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.speaker" />
        </td>
        <td>
            {event.speaker}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.price_netto" />
        </td>
        <td>
            {event.priceNetto}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.sold_out" />
        </td>
        <td>
            {event.soldOut}
        </td>
    </tr>
    <tr>
        <td>
            <f:translate key="tx_certification_domain_model_event.learning_content" />
        </td>
        <td>
            {event.learningContent}
        </td>
    </tr>
</table>

我的第一次尝试是比较 locallang.xlf,locallang_csh_tx_certification_domain_model_event.xlf,FormFields.html和Properties.html中的ID和键。

谢谢。

1 个答案:

答案 0 :(得分:0)

经过长时间的调试,我们发现了问题。

问题在于命名扩展密钥和扩展文件夹。

请确保它们相同。

错了

文件夹:b_a

键:b-a

差别很小但很细致。