我不确定在哪里发布这个问题..
我最近发现了WordPress' "主题定制器"并使用它来使页面更容易为客户更新。而不是编辑每个单独页面的标准方式,单击更新,然后访问页面以查看更改,我喜欢主题自定义程序如何在右侧自动预览您的更改。
我试图了解在我全力以赴之前我可以使用主题定制器走多远...
我创建了一个"主页"设置/部分/控制如下图所示:
以下是此代码:
function prowordpress_customize_register( $wp_customize ) {
// Settings, Sections, and Controls are defined here
// HOME PAGE
$wp_customize->add_setting( 'home_page_text' , array(
'default' => 'This is the home page text',
'type' => 'option',
'transport' => 'refresh',
));
$wp_customize->add_section( 'prowordpress_content_customizations' , array(
'title' => __('Home Page', 'prowordpress'),
'description' => __('Modify the Home Page', 'prowordpress'),
'priority' => 30,
));
$wp_customize->add_control( 'home_page_text_control', array(
'label' => __( 'Home Page Text', 'prowordpress' ),
'section' => 'prowordpress_content_customizations',
'settings' => 'home_page_text',
'type' => 'textarea',
));
$wp_customize->add_setting( 'home_page_template_select' , array(
'default' => 'test',
'type' => 'option',
'transport' => 'refresh',
));
$wp_customize->add_control(
new WP_Customize_Control(
$wp_customize,
'home_page_template_select',
array(
'label' => __( 'Home page template:', 'blankwptheme' ),
'section' => 'prowordpress_content_customizations',
'settings' => 'home_page_template_select',
'type' => 'select',
'choices' => array(
'template_one' => __( 'Template Layout 1' ),
'template_two' => __( 'Template Layout 2' )
)
)
)
);
}
add_action( 'customize_register', 'prowordpress_customize_register' );
您可以在屏幕截图中看到我已经为"主页模板添加了一个选择菜单" ...
我是否可以将其设置在客户可以选择现有的"页面模板的位置?#34;从这个选择菜单然后让右侧的页面预览/布局自动继承页面模板设置并实时调整布局?
同样,我只是想了解这是否可行,以及是否有人曾尝试过类似的事情。我意识到这可能需要一些AJAX或类似的东西。
感谢您的帮助!
答案 0 :(得分:0)
是的,你可以。我已经在自己的主题中完成了这种类型的布局选择。
在你的php文件中你需要做这样的事情 -<?php if ( get_option( 'home_page_template_select' ) === 'template_one' ) {
get_template_part( 'layouts/template-one' ); ?>
我希望有所帮助。