使主题 wmpl 准备就绪 wpml-config

Posted

技术标签:

【中文标题】使主题 wmpl 准备就绪 wpml-config【英文标题】:make theme wmpl ready wpml-config 【发布时间】:2015-06-27 18:38:25 【问题描述】:

我正在使用 trego 主题。作为主题选项,您可以设置和更改将出现在站点中的文本(例如“版权文本”和“徽标 url”的文本)。如何使用 WPML 制作这种多语言版本?我想通过 wpml-config.xml 文件来实现

functions.options.php 中的代码示例

        $of_options[] = array(  "name"      => "Header",
                                "type"      => "heading"
        );

        $of_options[] = array(  "name"      => "Logo",
                                "desc"      => "Upload logo here.",
                                "id"        => "site_logo",
                                "std"       => get_template_directory_uri().'/images/logo.png',
                                "type"      => "media"
        );

        $of_options[] = array(  "name"      => "Logo (only Gallery Template)",
                                "desc"      => "Upload logo here.",
                                "id"        => "site_logo2",
                                "std"       => get_template_directory_uri().'/images/logo.png',
                                "type"      => "media"
        );

这是我在 wpml-config.xml 中的尝试(但不起作用)

    <wpml-config>

        <admin-texts>
            <key name="of_options">
                <key name="site_logo" />
                <key name="site_logo2" />
                <key name="copyright">
                </key>

        </admin-texts>
    </wpml-config>

有什么帮助吗?

【问题讨论】:

【参考方案1】:

这是来自 WPML 开发/计算团队的 Konrad :)

首先,您需要为国际化准备好字符串。所以不要使用"Logo",而是使用__("Logo", "yourthemedomain");

那么...这取决于您如何保存您的选项。 $of_options 是否直接转到 update_option('of_options', $of_options);?如果是,你已经准备好了。如果不是,请重写它。

哦,我看到你的$of_options 实际上是三个数组。所以 xml 应该是这样的:

<wpml-config>

    <admin-texts>
        <key name="of_options">
            <key name="1">
             <key name="id" />
            </key>
        </key>

    </admin-texts>
</wpml-config>

所以使用内部数组的索引(在这种情况下为 name=1),不要使用值(logo_name),而是使用它们的索引(logo_name 有数组索引 id

【讨论】:

【参考方案2】:

感谢@kkarpieszuk 我通过在我的 sql 中搜索 site_logo 解决了这个问题,我在 option_name 的 WP-options 中找到了它,我找到了 of_options 在其中存储数据的关键

和正确的 wpml-config.xml:

<wpml-config>
<admin-texts>
            <key name="theme_mods_trego">
            <key name="site_logo" />
            <key name="site_logo2" /> 
        </key>
    </key>

</admin-texts>
</wpml-config>

它像魅力一样工作

【讨论】:

我看到您的 xml 中有语法错误。太多了&lt;/key&gt;。一个就够了:)

以上是关于使主题 wmpl 准备就绪 wpml-config的主要内容,如果未能解决你的问题,请参考以下文章

技术大佬准备就绪,话题C位由你决定

php WMPL cambio de idioma por codigo

r 使用此主题制作出版物就绪数据

如何在后台播放音频?

硬件重置后如何检查英特尔实感设备是不是准备就绪?

jQuery介绍及文档准备就绪函数