有很多方法可以实现这一目标,这只是一种方式
。>概述我们将在本文中介绍的内容 首先,我们将完成以下基本步骤:
显示三个用于显示产品描述的面板。
>仅为首页创建侧边栏。
kirki
Kirki不是一个框架。这是一个工具包,允许WordPress开发人员通过抽象代码并使每个人更容易创建美丽而有意义的用户体验来利用自定义器并利用其高级功能和灵活性。
我们可以使用Kirki将配置,字段,部分和面板添加到定制器中。这不会替换WordPress Customizer API。 Kirki的API只是默认WordPress方法的包装器,简化了语法并允许您以更少的代码编写并利用其一些最高级的功能。首先,您必须创建一个新的配置。配置具有唯一的ID,所有使用相同config_id的字段都将继承该配置的属性。
>添加配置后,您可以添加面板,部分和字段。请注意,您的定制器中应该至少有一个部分,以便能够添加字段。字段不可能是“孤儿”,必须将它们分组为部分。
>kirki允许您为插件或主题创建配置,并通过ID分组。然后将所有字段链接到该ID的字段将继承配置属性。
<span>Kirki<span>::</span>add_config( 'my_theme', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'my_theme', </span><span>) );</span>
>部分是字段的包装器,这是将多个字段组合在一起的方法。所有字段都必须属于一个部分,没有任何字段可以是孤儿。
><span>Kirki<span>::</span>add_panel( 'panel_id', array( </span> <span>'priority' => 10, </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span><span>) );</span>
>字段是诸如文本框之类的选项,并提供了复选框,以便用户可以在其中输入自定义文本。每个字段必须仅与特定的部分相关联。
><span>Kirki<span>::</span>add_section( 'section_id', array( </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span> <span>'panel' => '', // Not typically needed. </span> <span>'priority' => 160, </span> <span>'capability' => 'edit_theme_options', </span> <span>'theme_supports' => '', // Rarely needed. </span><span>) );</span>
将Kirki与我们的主题集成
>我们需要做的第一件事是将Kirki与我们的主题集成在一起。为此,请打开您在库文件夹中找到的them-options.php文件,并在其中添加以下代码:<span>function my_custom_text_settings( $fields ) { </span> <span>// Add the controls </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting', </span> <span>'type' => 'text', </span> <span>'priority' => 10, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control 2', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting_2', </span> <span>'type' => 'text', </span> <span>'priority' => 20, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>return $fields; </span> <span>} </span><span>add_filter( 'kirki/fields', 'my_custom_text_settings' );</span>>
上面的代码将kirki文件与我们的主题链接。请注意,如前所述,我们从github源下载的文件应放在主题文件夹中的名为“ kirki”的文件夹中。
如前所述,我们需要创建一种可以与选项一起使用的配置。将以下代码添加到您的theme-options.php文件中。
><span>// Integrating Kirki with our theme </span><span>include_once( get_template_directory() . '/kirki/kirki.php' );</span>
>我们成功地为我们的主题创建了配置。现在,我们将在选项中使用MC作为我们的option_name。
>>现在让我们看一下我们的着陆页的设计。我们的主页将包含以下内容:
<span>// Adding the configuration </span><span>Kirki<span>::</span>add_config( 'mc', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'mc', </span><span>) );</span>
产品滑块(用于显示您的产品页面的幻灯片)。
>>产品详细信息(以显示有关您产品的一些详细信息)。
>>我们不想更改我们的index.php文件,因为我们可以为首页创建自定义模板。在此自定义模板中,我们将添加代码,以便显示我们自定义的头版。因此,我们将创建一个自定义模板,该模板将在首页中显示内容。
在此文件中,我们添加了代码以显示滑块。
><span>Kirki<span>::</span>add_config( 'my_theme', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'my_theme', </span><span>) );</span>我们必须将其设置为静态头版。但是,最初没有一个页面将使用此模板。我们将必须创建一个将使用此模板的新页面。请按照以下步骤:
创建一个新页面(**页面>添加新**)。
>让我们添加以下代码:
>上面的代码包括我们当前主题目录中的header.php和footer.php文件。如果您现在刷新您的定制器,您可能只会看到导航和页脚菜单。
>>产品滑块
>产品滑块显示您最有创意或最畅销的产品。这些是访问者首先在您的网站上看到的产品。创建产品滑块涉及以下步骤:
<span>Kirki<span>::</span>add_panel( 'panel_id', array( </span> <span>'priority' => 10, </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span><span>) );</span>
创建一组滑块(通常为5)。
>在滑块上添加标题。
如果您与我提供的主题一起工作,则可以在供应商文件夹中复制jquery.flexslider.js,在js文件夹中,flexslider.css在CSS文件夹中,bg_play_pause.ppause.png files.css file。图像文件夹的图像文件夹和字体文件夹中的字体文件夹的内容(来自flexslider的github源),该文件夹已在主题文件夹中。
>>现在,我们将需要用我们的主题加入这些文件。我们将在库文件夹中存在的enqueue-scripss.php文件中添加以下候选代码:
<span>Kirki<span>::</span>add_config( 'my_theme', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'my_theme', </span><span>) );</span>接下来,我们使用以下代码在库文件夹中插入CSS文件:
:
<span>Kirki<span>::</span>add_panel( 'panel_id', array( </span> <span>'priority' => 10, </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span><span>) );</span>恭喜!您已经成功地使用了主题来招募Flexslider文件。您可以通过检查页面源是否成功检查入口是否成功。您可以通过右键单击页面并单击查看页面源来检查页面的源。搜索Flexslider,您会发现JS和CSS文件已成功升级。
note
首先,让我们在WordPress自定义器中创建一个面板,该面板将显示我们的滑块的图像,链接和字幕。
>再次打开theme-options.php,然后向其添加以下代码:
>上面的代码将产品滑块面板添加到我们的自定义器中,但是它将不可见,因为没有任何部分具有此面板,并且没有字段包含与此面板相关的任何部分。令人困惑?让我们继续前进,它将变得更加清晰。
<span>Kirki<span>::</span>add_section( 'section_id', array( </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span> <span>'panel' => '', // Not typically needed. </span> <span>'priority' => 160, </span> <span>'capability' => 'edit_theme_options', </span> <span>'theme_supports' => '', // Rarely needed. </span><span>) );</span>接下来,我们需要添加一个名为HomePage的名为“产品滑块”的部分。这可以通过将以下代码添加到theme-options.php文件:
上面的代码添加了产品滑块面板内的主页部分的产品滑块。
接下来,我们添加一个用于显示图像的字段。我们可以使用以下代码创建一个图像字段:
<span>function my_custom_text_settings( $fields ) { </span> <span>// Add the controls </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting', </span> <span>'type' => 'text', </span> <span>'priority' => 10, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control 2', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting_2', </span> <span>'type' => 'text', </span> <span>'priority' => 20, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>return $fields; </span> <span>} </span><span>add_filter( 'kirki/fields', 'my_custom_text_settings' );</span>>
现在,如果我们刷新我们的定制器,我们将看到产品滑块面板出现了。
<span>// Integrating Kirki with our theme </span><span>include_once( get_template_directory() . '/kirki/kirki.php' );</span>>通过图像字段,我们可以添加将在滑块中显示的图像。我们将创建另外四个类似的字段,以便至少可以为滑块提供五个图像。以下代码将添加更多四个图像字段:
我们可以通过这些字段上传图像,然后在着陆页上显示它们。
<span>// Adding the configuration </span><span>Kirki<span>::</span>add_config( 'mc', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'mc', </span><span>) );</span>>向滑块添加背景图像
现在,我们将为产品滑块添加代码。在内部
<span>Kirki<span>::</span>add_config( 'my_theme', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'my_theme', </span><span>) );</span>
这些行可获取我们保存在定制器中的每个幻灯片的图像。在下一步中,我们将检查这些图像中的任何一个是否存在。如果它们中的任何一个都存在,我们将称我们的滑块。
<span>Kirki<span>::</span>add_panel( 'panel_id', array( </span> <span>'priority' => 10, </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span><span>) );</span>
此行检查是否存在任何幻灯片中的任何图像。如果图像存在,则称为Flexslider。现在,我们将使用以下代码呼应每张幻灯片的图像:
<span>Kirki<span>::</span>add_section( 'section_id', array( </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span> <span>'panel' => '', // Not typically needed. </span> <span>'priority' => 160, </span> <span>'capability' => 'edit_theme_options', </span> <span>'theme_supports' => '', // Rarely needed. </span><span>) );</span>接下来,我们只需要添加JavaScript才能使Flexslider工作。
>向滑块添加标题
<span>function my_custom_text_settings( $fields ) { </span> <span>// Add the controls </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting', </span> <span>'type' => 'text', </span> <span>'priority' => 10, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control 2', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting_2', </span> <span>'type' => 'text', </span> <span>'priority' => 20, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>return $fields; </span> <span>} </span><span>add_filter( 'kirki/fields', 'my_custom_text_settings' );</span>
>
我们可以为其他四个幻灯片做类似的事情。
现在,在前端,在我们的自定义主页模板中,我们需要稍微编辑一些代码以显示这些字幕。<span>// Integrating Kirki with our theme </span><span>include_once( get_template_directory() . '/kirki/kirki.php' );</span>首先,我们需要将字幕存储在变量中:
然后,替换以下代码:
>带有以下代码:
<span>// Adding the configuration </span><span>Kirki<span>::</span>add_config( 'mc', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'mc', </span><span>) );</span>描述框
描述框可以提供有关我们产品的有用描述。这些盒子位于滑块下方,因此它引起了我们访客的注意。如果您想显示有关产品的详细信息,这些盒子将很有帮助。通常,可以有三到四个盒子(或面板),但是如果您愿意,您可以拥有更多。
<span>/** </span><span>Template Name: Custom Homepage </span><span>**/</span>在本教程中,我们正在创建三个框,并使用Foundation CSS框架的数据平价属性为每个面板提供统一的高度。
让我们开始工作!
><span>// Add the header </span><span>get_header(); </span> <span>// Add the footer </span><span>get_footer();</span>创建面板
我们需要在我们的theme-options.php文件中添加以下代码:
创建部分
>现在,我们将为产品描述创建两个部分。我们将图像上传到一个部分,并在另一部分中添加描述。
>然后,我们为描述创建一个部分:
创建字段
<span>// adding flexslider scripts file in the footer </span><span>wp_register_script( 'flexslider-js', get_template_directory_uri() . '/js/vendor/jquery.flexslider.js', array( 'jquery' ), '', true ); </span> <span>wp_enqueue_script( 'flexslider-js' );</span>接下来,我们需要为图像输入创建三个字段(因为将有三个框,因此将有三个图像),然后我们将为产品描述创建三个字段。代码看起来如下:
显示输出
现在,我们需要使用以下代码在自定义模板上显示输出。
<span>Kirki<span>::</span>add_config( 'my_theme', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'my_theme', </span><span>) );</span>
这将显示第一个框的输出。同样,我们将为其他两个盒子做同样的事情。
><span>Kirki<span>::</span>add_panel( 'panel_id', array( </span> <span>'priority' => 10, </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span><span>) );</span>
现在转到您的自定义器并添加图像和描述,您将看到页面显示您的输入!
该部分包含两个行,其中一侧有一个图像,另一侧有一个描述。此页面的此部分或部分可以用作访问者最重要方面的视觉效果。
>>让我们先创建一个面板。我们将其称为产品详细信息。
<span>Kirki<span>::</span>add_section( 'section_id', array( </span> <span>'title' => __( 'My Title', 'textdomain' ), </span> <span>'description' => __( 'My Description', 'textdomain' ), </span> <span>'panel' => '', // Not typically needed. </span> <span>'priority' => 160, </span> <span>'capability' => 'edit_theme_options', </span> <span>'theme_supports' => '', // Rarely needed. </span><span>) );</span>
>我们将使用以下代码为字段进行部分:
><span>function my_custom_text_settings( $fields ) { </span> <span>// Add the controls </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting', </span> <span>'type' => 'text', </span> <span>'priority' => 10, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>$fields[] = array( </span> <span>'label' => __( 'My custom control 2', 'translation_domain' ), </span> <span>'section' => 'my_section', </span> <span>'settings' => 'my_setting_2', </span> <span>'type' => 'text', </span> <span>'priority' => 20, </span> <span>'option_type' => 'theme_mod', </span> <span>'capability' => 'edit_theme_options', </span> <span>); </span> <span>return $fields; </span> <span>} </span><span>add_filter( 'kirki/fields', 'my_custom_text_settings' );</span>
>类似于先前涵盖的概念,我们将使用下面的代码创建两个图像字段和两个文本区域字段。
<span>// Integrating Kirki with our theme </span><span>include_once( get_template_directory() . '/kirki/kirki.php' );</span>
>
<span>// Adding the configuration </span><span>Kirki<span>::</span>add_config( 'mc', array( </span> <span>'capability' => 'edit_theme_options', </span> <span>'option_type' => 'option', </span> <span>'option_name' => 'mc', </span><span>) );</span>也只对另一行做同样的事情。然后,转到您的自定义器并刷新它。
>通常,本节可能包括许多团队成员。在此示例中,我们将仅提供三个成员的选项,但是您可以根据需要进行扩展。
创建面板我们将创建一个新的面板并将其称为团队展示。
创建部分
<span>/** </span><span>Template Name: Custom Homepage </span><span>**/</span>接下来,我们将创建一个具有团队展示选项的部分。
>总共将有六个字段,该字段由化身的三个图像字段和成员名称的三个文本字段组成。
<span>// Add the header </span><span>get_header(); </span> <span>// Add the footer </span><span>get_footer();</span>
>现在,我们将在我们的自定义主页模板上显示团队三个成员的图像和名称。打开homepage.php并插入以下内容:
<span>// adding flexslider scripts file in the footer </span><span>wp_register_script( 'flexslider-js', get_template_directory_uri() . '/js/vendor/jquery.flexslider.js', array( 'jquery' ), '', true ); </span> <span>wp_enqueue_script( 'flexslider-js' );</span>
然后,我们可以使用下面的代码显示每个成员: >我们还可以将另一个页面的内容获取到我们的主页。如果您想显示有关您公司的一些信息,并且已经有一个关于我们的页面,这将特别有用。您无需重新编写相同的内容。您可以使用Kirki获取该内容。 我们可以创建一个单独的面板来提供此选项,让我们这样做! 这是面板的代码:
我们可以使用以下内容添加字段: 这可以在WordPress Customizer内部启用选项。现在,我们可以编辑homepage.php文件以显示内容。打开该文件,然后复制以下代码,您希望显示此内容: >
>
> > > 如何在我的WordPress主页上添加社交媒体图标? 以在您的WordPress Homepage中添加社交媒体图标,您可以使用一个社交媒体插件,例如社交媒体小部件或简单的社交图标。安装并激活所选插件后,您可以添加社交媒体链接并选择您喜欢的图标样式和尺寸。然后,您可以使用窗口小部件将社交媒体图标添加到主页上。 >选择一个干净,响应迅速的主题。使用SEO插件(例如Yoast SEO)来优化您的标题标签和元描述。在您的内容中包含相关的关键字,但要避免关键字填充。使用标题标签来构建内容并使阅读易于阅读。另外,请确保您的网站迅速加载,因为页面速度是排名因素。 以在您的WordPress Homepage中添加联系表格,您需要一个联系表插件,例如联系表7或WPForms。安装并激活所选插件后,您可以创建一个新的联系表格并根据需要自定义字段。然后,您可以使用短码将联系表格添加到主页上。<span>Kirki<span>::</span>add_config( 'my_theme', array(
</span> <span>'capability' => 'edit_theme_options',
</span> <span>'option_type' => 'option',
</span> <span>'option_name' => 'my_theme',
</span><span>) );</span>
高级主题
从另一个页面获取内容
<span>Kirki<span>::</span>add_panel( 'panel_id', array(
</span> <span>'priority' => 10,
</span> <span>'title' => __( 'My Title', 'textdomain' ),
</span> <span>'description' => __( 'My Description', 'textdomain' ),
</span><span>) );</span>
这是本节的代码:<span>Kirki<span>::</span>add_section( 'section_id', array(
</span> <span>'title' => __( 'My Title', 'textdomain' ),
</span> <span>'description' => __( 'My Description', 'textdomain' ),
</span> <span>'panel' => '', // Not typically needed.
</span> <span>'priority' => 160,
</span> <span>'capability' => 'edit_theme_options',
</span> <span>'theme_supports' => '', // Rarely needed.
</span><span>) );</span>
<span>function my_custom_text_settings( $fields ) {
</span>
<span>// Add the controls
</span> <span>$fields[] = array(
</span> <span>'label' => __( 'My custom control', 'translation_domain' ),
</span> <span>'section' => 'my_section',
</span> <span>'settings' => 'my_setting',
</span> <span>'type' => 'text',
</span> <span>'priority' => 10,
</span> <span>'option_type' => 'theme_mod',
</span> <span>'capability' => 'edit_theme_options',
</span> <span>);
</span>
<span>$fields[] = array(
</span> <span>'label' => __( 'My custom control 2', 'translation_domain' ),
</span> <span>'section' => 'my_section',
</span> <span>'settings' => 'my_setting_2',
</span> <span>'type' => 'text',
</span> <span>'priority' => 20,
</span> <span>'option_type' => 'theme_mod',
</span> <span>'capability' => 'edit_theme_options',
</span> <span>);
</span>
<span>return $fields;
</span>
<span>}
</span><span>add_filter( 'kirki/fields', 'my_custom_text_settings' );</span>
>仅为前页面创建侧边栏
如果您遵循WordPress法典,则为主题创建侧边栏是简单的。我不会在这里详细介绍太多细节,而只会通过在库/widget-aareas.php文件中使用以下代码添加该主题。<span>// Integrating Kirki with our theme
</span><span>include_once( get_template_directory() . '/kirki/kirki.php' );</span>
>
note<span>// Adding the configuration
</span><span>Kirki<span>::</span>add_config( 'mc', array(
</span> <span>'capability' => 'edit_theme_options',
</span> <span>'option_type' => 'option',
</span> <span>'option_name' => 'mc',
</span><span>) );</span>
现在,当您在此侧边栏中添加小部件时,它将仅在前页面上显示。
>关于为您的WordPress网站设计自定义主页的常见问题
>如何在WordPress中创建静态正面页面?首先,您需要登录到WordPress仪表板。然后,转到“页面”,然后单击“添加新”。将此新页面命名为“家”或您喜欢的任何其他名称。之后,创建另一个新页面并将其命名为“博客”或“帖子”。创建这两个页面后,转到“设置”,然后转到“阅读”。在“主页显示”下,选择“静态页面”。在下拉菜单中,将“主页”设置为您为家庭创建的页面,将“帖子页面”设置为您为博客或帖子创建的页面。单击“保存更改”以最终确定您的设置。如何自定义WordPress HomePage?>
>如何在WordPress HomePage中添加滑块?
以在WordPress HomePage中添加滑块,您将需要一个滑块插件,例如滑块革命或智能滑块3。激活了所选插件,您可以创建一个新的滑块,添加图像并自定义设置。然后,根据插件,您可以使用短码,窗口小部件或模板标签将滑块添加到主页上。首先,在WordPress主页上添加博客部分,请确保您为博客文章创建了一个单独的页面。然后,转到“外观”,然后“自定义”。单击“主页设置”,然后在“主页显示”下选择“最新帖子”。这将在您的主页上显示您最新的博客文章。
>>如何使我的WordPress Homepage seo友好?
>>如何在WordPress主页上添加联系表格?
以上是为您的WordPress网站设计自定义主页的详细内容。更多信息请关注PHP中文网其他相关文章!