本文整理汇总了PHP中WP_Customize_Manager::prepare_controls方法的典型用法代码示例。如果您正苦于以下问题:PHP WP_Customize_Manager::prepare_controls方法的具体用法?PHP WP_Customize_Manager::prepare_controls怎么用?PHP WP_Customize_Manager::prepare_controls使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WP_Customize_Manager
的用法示例。
在下文中一共展示了WP_Customize_Manager::prepare_controls方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: array
/**
* @ticket 37128
*/
function test_prepare_controls_wp_list_sort_panels()
{
wp_set_current_user(self::$admin_user_id);
$panels = array('foo' => 2, 'bar' => 4, 'foobar' => 3, 'key' => 1);
$panels_sorted = array('key', 'foo', 'foobar', 'bar');
foreach ($panels as $panel_id => $priority) {
$this->manager->add_panel($panel_id, array('priority' => $priority));
}
$this->manager->prepare_controls();
$result = $this->manager->panels();
$this->assertEquals($panels_sorted, array_keys($result));
}
示例2: array
/**
* Test customize_pane_settings() method.
*
* @see WP_Customize_Manager::customize_pane_settings()
*/
function test_customize_pane_settings()
{
wp_set_current_user($this->factory->user->create(array('role' => 'administrator')));
$this->manager->register_controls();
$this->manager->prepare_controls();
$autofocus = array('control' => 'blogname');
$this->manager->set_autofocus($autofocus);
ob_start();
$this->manager->customize_pane_settings();
$content = ob_get_clean();
$this->assertContains('var _wpCustomizeSettings =', $content);
$this->assertContains('"blogname"', $content);
$this->assertContains('_wpCustomizeSettings.controls', $content);
$this->assertContains('_wpCustomizeSettings.settings', $content);
$this->assertContains('</script>', $content);
$this->assertNotEmpty(preg_match('#var _wpCustomizeSettings\\s*=\\s*({.*?});\\s*\\n#', $content, $matches));
$json = $matches[1];
$data = json_decode($json, true);
$this->assertNotEmpty($data);
$this->assertEqualSets(array('theme', 'url', 'browser', 'panels', 'sections', 'nonce', 'autofocus', 'documentTitleTmpl'), array_keys($data));
$this->assertEquals($autofocus, $data['autofocus']);
$this->assertArrayHasKey('save', $data['nonce']);
$this->assertArrayHasKey('preview', $data['nonce']);
}
示例3: array
/**
* @ticket 30225
* @ticket 34594
*/
function test_prepare_controls_stable_sorting() {
$manager = new WP_Customize_Manager();
$manager->register_controls();
$section_id = 'foo-section';
wp_set_current_user( self::factory()->user->create( array( 'role' => 'administrator' ) ) );
$manager->add_section( $section_id, array(
'title' => 'Section',
'priority' => 1,
) );
$added_control_ids = array();
$count = 9;
for ( $i = 0; $i < $count; $i += 1 ) {
$id = 'sort-test-' . $i;
$added_control_ids[] = $id;
$manager->add_setting( $id );
$control = new WP_Customize_Control( $manager, $id, array(
'section' => $section_id,
'priority' => 1,
'setting' => $id,
) );
$manager->add_control( $control );
}
$manager->prepare_controls();
$sorted_control_ids = wp_list_pluck( $manager->get_section( $section_id )->controls, 'id' );
$this->assertEquals( $added_control_ids, $sorted_control_ids );
}