标签: extbase

用 locallang.xlf 翻译 Extbase Extension,但没有任何反应?

我正在使用 TYPO3 CMS 6.2.6 和一个名为“jobfair”的新的出色的 Extbase 扩展。我添加了新的 templateRootPaths,如下所示:

plugin.tx_jobfair {

  view {
        templateRootPaths {
          100 = EXT:jobfair/Resources/Private/Templates/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Templates/
        }

        partialRootPaths {
          100 = EXT:jobfair/Resources/Private/Partials/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Partials/
       }

       layoutRootPaths {
          100 = EXT:jobfair/Resources/Private/Layouts/
          101 = fileadmin/templates/ext/jobfair/Resources/Private/Layouts/
       }
  }

}
...
Run Code Online (Sandbox Code Playgroud)

因此我可以为我的特定设计编辑模板和部分。所有其他模板将从 /typo3conf/ext/jobfair/Resources/... 加载

一切正常。我还将语言文件夹从扩展名 (typo3conf) 复制到我的 fileadmn 文件夹 (fileadmin/.../jobfair/Resources/Private/Language/)。

我编辑“locallang.xlf”和“de.locallang.xlf”,例如:

部分:ContractType.html

<f:if condition="{job.contractType} == 0">
 <f:translate key="tx_jobfair_domain_model_job.contract_type.0" />
</f:if>
Run Code Online (Sandbox Code Playgroud)

我将在 de.locallang.xlf 更改目标

<trans-unit id="tx_jobfair_domain_model_job.contract_type">
<source>Contract Type</source>
<target>Here's my german translation!!!</target>
</trans-unit>
Run Code Online (Sandbox Code Playgroud)

但它不起作用!?

如何翻译或重命名我的分机的后端 (flexform) 标签?de.locallang.xlf 不是正确的文件吗?

感谢您的帮助。ps 我清除了 …

caching typo3 translate extbase

2
推荐指数
1
解决办法
3037
查看次数

修改流体的 f:format.date 中的日期 - 使用内联表示法

使用 Fluid f:format.dateviewhelper,我可以设置日期偏移量:

<f:format.date format="%d.%m.%Y">{item.Date}-3 days</f:format.date>
Run Code Online (Sandbox Code Playgroud)

不幸的是,使用内联符号(我需要一个条件)并不那么容易。我已经尝试过以下操作:

{f:format.date(date: item.Date-3 days, format: '%d.%m.%Y')}
{f:format.date(date: item.Date'-3 days', format: '%d.%m.%Y')}
{f:format.date(date: 'item.Date-3 days', format: '%d.%m.%Y')}
Run Code Online (Sandbox Code Playgroud)

其中没有一个返回修改日期。正确的语法是什么?

typo3 fluid extbase typo3-6.2.x

2
推荐指数
1
解决办法
3836
查看次数

TYPO3 扩展 - 如果未设置记录或不可用,则重定向到显示操作中的另一个页面

当有人访问详情页面但没有记录或记录不可用时,如何重定向到另一个页面?

我有详细记录,例如

domain.com/abc/ABC1234
Run Code Online (Sandbox Code Playgroud)

当有人进来时

domain.com/abc/
Run Code Online (Sandbox Code Playgroud)

...我得到:

Uncaught TYPO3 Exception
#1298012500: Required argument "record" is not set for Vendor\Extension\Controller\ActionController->show. (More information)

TYPO3\CMS\Extbase\Mvc\Controller\Exception\RequiredArgumentMissingException thrown in file
/is/htdocs/www/typo3_src-8.7.11/typo3/sysext/extbase/Classes/Mvc/Controller/AbstractController.php in line 425. 
Run Code Online (Sandbox Code Playgroud)

...在这种情况下我希望它重定向到:

domain.com/other-page/
Run Code Online (Sandbox Code Playgroud)

...如果没有特定记录,我也需要它。
……怎么办呢?

/**
 * action show
 *
 * @param \Action $record
 * @return void
 */
public function showAction(Action $record) {

    $this->view->assign('record', $record);

}
Run Code Online (Sandbox Code Playgroud)

以下是一些示例TYPO3 Extbase - 重定向到 pid ...但不确定如何实现它

编辑:有效的是......

/**
 * action show
 *
 * @param \Action $record
 * @return void
 */
public function showAction(Action $record=null) {   

  if …
Run Code Online (Sandbox Code Playgroud)

typo3 extbase typo3-extensions typo3-8.x

2
推荐指数
1
解决办法
8808
查看次数

如何将 DataProcessors 与 TYPO3 插件一起使用

通常会显示将数据处理器添加到 PAGE 或 FLUIDTEMPLATE 的方法。如何将其分配给 TYPO3 插件?

对于 PAGE,你可以这样做:

page {
    10 {
        dataProcessing {
            1558428437 = BK2K\BootstrapPackage\DataProcessing\ConstantsProcessor
            1558428437 {
                as = myconstants
                key = settings.constants
            }
        }
   }
}
Run Code Online (Sandbox Code Playgroud)

但是你能做这样的事情吗:

config.tx_extbase {
    dataProcessing {
        1558428437 = BK2K\BootstrapPackage\DataProcessing\ConstantsProcessor
        1558428437 {
            as = myconstants
            key = settings.constants
        }
    }
Run Code Online (Sandbox Code Playgroud)

非常感谢!

typo3 typoscript extbase typo3-9.x

2
推荐指数
1
解决办法
1542
查看次数

如何使用 TYPO3 Fluid form.upload 上传文件并将其传递给 Extbase 控制器

我正在使用form.upload ViewHelper 上传文件。

<f:form enctype="multipart/form-data" action="list" name="import" object="{import}" method="POST">
    <f:form.upload name="file" property="file" />
    <f:form.submit value="Submit" />
</f:form>
Run Code Online (Sandbox Code Playgroud)

问题是访问文件。$import 对象包含一个文件名,但该文件不存在。

typo3 fluid extbase typo3-9.x

2
推荐指数
1
解决办法
1119
查看次数

使用extbase处理404错误

随着extbase我开发了一个扩展.然后我使用Realurl进行网址重写.

问题是,例如,我执行这个网址:www.mysite.com/records/record-number-one/一切都很好,因为"记录号码1"确实存在.

现在,如果我尝试

www.mysite.com/records/record-numbbbbbbber-one/

我收到了这个错误

Exception while property mapping at property path "":The identity
property "record-numbbbbbbber-one" is no UID.
Run Code Online (Sandbox Code Playgroud)

但我想重定向到404页面,而不是得到这个错误!

我尝试在我的操作中验证记录并重定向到404页面,但是当我收到此错误时,我的代码(在我的操作中)甚至没有被执行!

经过大量搜索,有人说如果我设置了

plugin.myplugin.mvc.throwPageNotFoundExceptionIfActionCantBeResolved = 1
Run Code Online (Sandbox Code Playgroud)

或者干脆

config.tx_extbase.mvc.throwPageNotFoundExceptionIfActionCantBeResolved = 1
Run Code Online (Sandbox Code Playgroud)

错误将被解决,我尝试了两个,我仍然得到错误.

任何帮助?

谢谢

PS:我使用的是TYPO3 6.1.7

typo3 realurl extbase

1
推荐指数
1
解决办法
1228
查看次数

TYPO3:在扩展控制器中添加自定义设置功能

我正在为访问者创建一个扩展程序以注册该页面.
注册时,它应该在后端创建一个FE用户,该用户被禁用(并且将由管理员手动启用).所以我需要在创建FE用户时将disable字段设置为1.

这是我的控制器内部的功能:

/**
 * action create
 *
 * @param \Vendor\FeReg\Domain\Model\Dummy $newDummy
 * @return void
 */
public function createAction(\Vendor\FeReg\Domain\Model\Dummy $newDummy)
{
    // vars
    $title = $newDummy->getTitle();
    $atitle = $newDummy->getAtitle();
    $fname = $newDummy->getFname();
    $lname = $newDummy->getLname();
    $street = $newDummy->getStreet();
    $city = $newDummy->getCity();
    $post = $newDummy->getPost();
    $phone = $newDummy->getPhone();
    $fax = $newDummy->getFax();
    $email = $newDummy->getEmail();
    $org = $newDummy->getOrg();
    $cat = $newDummy->getCat();
    $field = $newDummy->getField();
    $uname = $newDummy->getUname();
    $ppass = $newDummy->getPpass();
    $cpass = $newDummy->getCpass();
    $fulltitle = ($atitle ? $title." …
Run Code Online (Sandbox Code Playgroud)

php typo3 extbase

1
推荐指数
1
解决办法
642
查看次数

TYPO3:运行PHP代码的扩展

这更像是一个基本问题:

如何在不添加域模型和操作的情况下获得扩展(通过Extension Builder)来运行简单的PHP代码?

php typo3 extbase

1
推荐指数
1
解决办法
554
查看次数

TYPO3 TCA显示条件(displayCond)用mysql到MM表

我有一个带有一个复选框的主表的扩展名,如果该项目已经通过MM表与相关TCA有关系,则该复选框不可用:

'checkbox' => [
  'displayCond' =>'FIELD:uid:!IN:SELECT uid_foreign FROM tx_myext_object_object_mm',
  'exclude' => 0,
  'label' => 'checkbox',
  'config' => [
    'type' => 'check',
    'items' => [
      '1' => [
        '0' => 'LLL:EXT:lang/locallang_core.xlf:labels.enabled'
      ]
    ],
  'default' => 0
  ]
],
Run Code Online (Sandbox Code Playgroud)

可以纠正这种语法还是不可能(这段代码不起作用)

mysql typo3 extbase typo3-7.6.x

1
推荐指数
1
解决办法
805
查看次数

TYPO3:禁用特定插件/扩展的缓存

我构建了一个扩展和一个插件,前端用户可以编辑他们的个人资料,但我注意到一个关键问题:

在"编辑配置文件"下,用户可以看到有关未登录的其他用户的完整信息.显然,该表单是在服务器上缓存的,因为添加后:

config.no_cache = 1
Run Code Online (Sandbox Code Playgroud)

它没有再次发生.现在的问题是整个网站上的索引是禁用的.

有没有办法只为这个特定的扩展/插件禁用缓存?

typo3 fluid typoscript extbase

1
推荐指数
2
解决办法
2088
查看次数