可以使用jQuery从wp.Customize获取主题定制器设置吗?

时间:2013-12-23 作者:user1632018

我想知道是否可以直接与wp进行互操作。自定义api以获取主题自定义程序设置的值。我现在的做法是使用ajax从php函数获取响应。我似乎有很多问题。

我知道您可以使用jquery和wp绑定到主题定制器控件。自定义api,尽管我想知道是否可以直接从jquery访问设置?

EDIT: More information

我知道您可以通过API直接与控件交互,如下所示:

/** Site title and description. */
wp.customize( \'blogname\', function( value ) {
    value.bind( function( to ) {
        $( \'.site-title a\' ).html( to );
    } );
} );
我想知道是否可以单独使用jquery,使用相同的API直接访问主题设置值?

如果不是的话,我想这并不难,延长可湿性粉剂的使用期也会很有益。定制api(可能还有其他所有wp函数)来完成我手动使用ajax和php所做的事情,这样用户就可以只使用jquery自己来与wp函数交互,并让wordpress在幕后完成脏活。对于WP的更高版本来说,这可能是一个很好的特性。

1 个回复
最合适的回答,由SO网友:ungestaltbar 整理而成

不确定您试图实现什么,但您可以使用wp通过键获得值。自定义对象:

wp.customize.value(\'show_on_front\')();
wp.customize.value(\'blogname\')();
....
抱歉,这里没有jQuery,只有javascript,是的,额外的()是有意的。

编辑:所有设置的完整概述:

wp.customize._value;
console.log(wp.customize._value);
编辑II:

不同的方法:

a) 使用查找所有可用设置

console.log(wp.customize._value);
b)无法直接访问该值,因此

wp.customize._value.blogname
行不通。但是,如果将其设置为函数调用,它应该可以工作:

wp.customize._value.blogname();
我不认为它打算这样使用(如果有使用的意图的话),但它对我有效。我刚刚检查了wp。自定义对象,但未查找WP如何构造此\\u值对象。最好测试设置是否可用以及它是否是函数,最后可以使用jQuery;)

if ( jQuery.isFunction(wp.customize._value.blogname) ) {
// do stuff
}
或者像我们的父母那样;)

if(typeof wp.customize._value.blogname === \'function\')
    //do stuff
{

结束

相关推荐

尝试避免包含wp-load.php

我正在使用一个插件,试图将人力资源系统与WordPress连接起来。人力资源系统上有一个XML API,所以我编写了插件来获取数据并将其放入特定于我的插件的WordPress数据库表中。这一切都是通过内置的AJAX等来完成的,但有人要求该人员能够安排一项任务,这样就不会在每次访问网站时查询人力资源系统(职位列表需要显示在网站首页)。然后问题就变成了同步。这是一个IIS环境,因此他们希望使用计划的任务同步站点。我解释了WordPress计划任务API,但他们更喜欢通过自己的基础设施手动同步。我如何创建代码(