首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Wordpress +木材+小枝i18n扩展

Wordpress +木材+小枝i18n扩展
EN

Stack Overflow用户
提问于 2018-12-04 19:15:17
回答 1查看 441关注 0票数 0

我正在尝试实现本地化到一个网站,我目前正在建设。我的目标是使用Twig的i18n扩展,因为那是我选择的模板引擎。

但是,当我添加扩展名时,站点就会崩溃,屏幕变白,并返回500错误代码。日志显示408超时。在我添加扩展的同一函数中,我还添加了另一个很好用的扩展。我已经通过Composer成功安装了扩展。(https://twig-extensions.readthedocs.io/en/latest/i18n.html)

我做错了什么?

这是我的function.php

<?php
/**
* Timber starter-theme
* https://github.com/timber/starter-theme
*
* @package  WordPress
* @subpackage  Timber
* @since   Timber 0.1
*/

Timber::$dirname = array( 'templates');
/** Start Timber! */

class StarterSite extends Timber\Site {
    /** Add timber support. */
    public function __construct() {
    add_theme_support( 'post-formats' );
    add_theme_support( 'post-thumbnails' );
    add_filter( 'timber_context', array( $this, 'add_to_context' ) );
    add_filter( 'get_twig', array( $this, 'add_to_twig' ) );
    add_filter('show_admin_bar', '__return_false');
    define( 'WP_DEBUG', true );
    parent::__construct();
}

function add_to_context( $context ) {
    $context['site'] = $this;
    return $context;
}

public function add_to_twig( $twig ) {
    $twig->addExtension( new Twig_Extension_StringLoader() );
    $twig->addExtension( new Twig_Extensions_Extension_I18n() ); // This line breaks the site
    return $twig;
}
}

new StarterSite();
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-12-05 04:03:45

在使用WordPress和木材时,您不需要使用Twig的i18n扩展,如木材文档中的Internationalization Guide所述:

Timber有它自己的i18n扩展,它给你提供{% trans %}标签来定义可翻译的块,但没有必要使用它,因为有了木材,你就拥有了你需要的一切。

这意味着在您的WordPress模板中,您可以使用常规Twig模板中通常使用的所有函数。下面是一个按钮的示例。

<button>{{ __('Submit', 'my-text-domain') }}</button>

您可以像在普通WordPress主题中一样设置国际化主题。按照主题手册中的Internationalization部分进行操作。

使用文本域和域路径设置style.css

/**
 * Theme Name: My Theme
 * Author: Theme Author
 * Text Domain: my-text-domain
 * Domain Path: /languages
 */

然后,WordPress将在您的主题的/languages文件夹中查找一个my-text-domain.pot文件。您可以使用Poedit Pro生成该POT文件。Poedit Pro将在您的Twig文件中找到翻译。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53611724

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档