问题描述
我有一个网站有一些额外的 Customizer 部分。有没有办法直接链接到这些页面,以便页面加载时打开?
像 http://mysites.com/wp-admin/customize.php#fonts
screenshot http://new.tinygrab.com/96412a96d208cf8ff0cf5803327b2d29e0ca68810e.png
最佳解决方案
如您已经发现的,定制程序的链接始终以/wp-admin/customize.php
开头。
附加?autofocus[
section
] =
section_name
以在定制程序中检出您的部分。两个参数 (section
和 section_name
) 均已注册到您的 customize_register
钩子中:
$wp_customize->add_section
如果找不到挂钩,请查看定制器的 HTML 标记以获取更多信息。这两个参数都包含在列表中:
<li id="accordion-section-title_tagline" class="accordion-section control-section control-section-default">
总而言之,您的链接可能如下所示:
admin_url( '/customize.php?autofocus[section]=section_name' );
这些是 Twenty Sixteen WordPress 主题中默认定制程序部分的链接:
-
站点标识:
/customize.php?autofocus[section]=title_tagline
-
颜色:
/customize.php?autofocus[section]=colors
-
标题图片:
/customize.php?autofocus[section]=header_image
-
背景图片:
/customize.php?autofocus[section]=background_image
-
菜单:
/customize.php?autofocus[panel]=nav_menus
-
小工具:
/customize.php?autofocus[panel]=widgets
-
静态前页:
/customize.php?autofocus[section]=static_front_page
从哪里去?
我经常发现自己需要从 WordPress 管理菜单中的外观菜单项。也许这对你也有帮助:
add_action( 'admin_menu', 'wpse_custom_submenu_page' );
function wpse_custom_submenu_page() {
add_submenu_page(
'themes.php',
__( 'Page title', 'textdomain' ),
__( 'Menu title', 'textdomain' ),
'manage_options',
'/customize.php?autofocus[section]=section_name'
);
}
参考文献
注:本文内容整合自 Google/Baidu/Bing 辅助翻译的英文资料结果。如果您对结果不满意,可以加入我们改善翻译效果:薇晓朵技术论坛。