WordPress主题开发教程PHP版
Published
2023-03-10
浏览次数 : 195
替换模板
头部标签
将头部html标签里面的语言换成动态: language_attributes()
将meta charset 标签设置成动态获取: bloginfo(‘charset’);
LOGO
要自定义的logo你可以通过自定义设置里面的customize api创建自定义的字段来上传logo, 也可以通过wp的options来创建logo。因为要用到很多字段,我们用的是 Redux字段框架。框架就是已经给你写好代码让你用,只要修改下就可以了。Redux框架不仅支持option字段,也支持metabox,还支持不同post format下面使用不同的字段。(需要redux最新版)。
我们将下载下来的redux-core文件夹,下载到主题文件夹下面,framework/plugins下面,然后我们在functions.php里面先引入支撑文件也就是导入文件夹里的framework.php和字段配置文件,也就是redux-sample文件,把它重命名为required_fields.php,在plugins目录下面新建:
//redux fields
require_once get_template_directory() . '/framework/plugins/redux-core/framework.php';
require_once get_template_directory() . '/framework/plugins/require_fields.php';
完成之后你会发现你后台多了一个theme option的菜单,里面就是你的控制字段。
如何新建一个logo的字段,首先新建section,然后添加field。所有字段都添加到特定的section进行归类:
Redux::set_section(
$opt_name,
array(
'title' => esc_html__( 'Basic Fields', 'haqiye' ),
'id' => 'basic',
'desc' => esc_html__( '包含头部和尾部的字段,也可以头部和尾部字段分开', 'haqiye' ),
'customizer_width' => '400px',
'icon' => 'el el-home',
'fields' => array(
array(
'title' => 'Theme Logo',
'id' => 'theme_logo',
'subtitle' => 'Upload your theme logo',
'type' => 'media'
),
)
)
);
你需要一个自定义函数来获取redux字段的值:
function ha_get_option($option) {
global $theme_options;
if (!empty($theme_options[$option])) {
# code...
return $theme_options[$option];
}
return false;
}
然后在后台字段管理页面,在theme logo那里上传你的logo图片。 在HTML头部页面,找到logo的dom,找到img标签,将地址输出为动态。
<div class="logo">
<a href="<?php home_url('/'); ?>"><img src="<?php echo ha_get_option('theme_logo')['url'] ?>" alt=""></a>
</div>
theme_logo是你在require_fields里面设置的字段。