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里面设置的字段。


标签:
Top