如何排队WP主题以允许子页面CSS和JS文件

时间:2019-05-20 22:04:36

标签: php wordpress themes

我有一个使用CSS,HTML,JS和JSON构建的网站...我现在需要以自定义主题将其托管在WP上。 特别是主题文件的结构和入队。

该站点的当前文件结构和我尝试获取的WP文件结构如下所示。 我需要在我的functions.php文件中添加什么以确保app.css和app.js应用于所有页面,sub-page.css和sub-page.js仅应用于非主页。 谢谢

Current file structure

Ideal WP file structure

我已将style.css保留为所需的最少WP代码,并将网站样式添加到app.css和sub-page.css中,并将javascript添加到了它们各自的app.js和sub-page.js中文件。

functions.php看起来像这样:

<?php
add_action( 'wp_enqueue_scripts', 'themebs_enqueue_styles');
function themebs_enqueue_styles() {
  wp_enqueue_style( 'bootstrap', get_template_directory_uri() . '/assets/css/bootstrap.min.css', false, NULL, 'all' );
  wp_enqueue_style( 'core', get_template_directory_uri() . '/style.css', false, NULL, 'all' );
    wp_enqueue_style( 'app', get_template_directory_uri() . '/assets/css/app.css', false, NULL, 'all' );
    wp_enqueue_style( 'media', get_template_directory_uri() . '/assets/css/media-queries.css', false, NULL, 'all' );
}
add_action( 'wp_enqueue_scripts', 'themebs_enqueue_scripts');
function themebs_enqueue_scripts() {
  wp_enqueue_script( 'bootstrap', get_template_directory_uri() . '/assets/js/bootstrap.bundle.min.js', array('jquery'), NULL, false );
    wp_enqueue_script( 'app-js', get_template_directory_uri() . '/assets/js/app.js', array('jquery'), NULL, false );
    wp_enqueue_script( 'data-js', get_template_directory_uri() . '/assets/js/data.js', array('jquery'), NULL, false );
    wp_enqueue_script( 'ajax-js', get_template_directory_uri() . '/assets/js/ajax.js', array('jquery'), NULL, false );
}
add_action( 'wp_enqueue_scripts', 'styles_custom');
function styles_custom() {
    global $post;
    $post_slug=$post->post_name;

    if (!is_front_page() ) { //all page, not homepage
        wp_enqueue_style( $parent_style, get_template_directory_uri() . '/assets/css/app.css' , '/assets/css/sub-page.css' );
    }
    if($post_slug == '[.....]'){
        wp_enqueue_style( $parent_style, get_template_directory_uri() . '/assets/css/style.css' , '/assets/css/style.css' );
    }
}
add_action( 'wp_enqueue_scripts', 'scripts_custom');
function scripts_custom() {
    global $post;
    $post_slug=$post->post_name;

    if (!is_front_page() ) { //all page, not homepage
        wp_enqueue_script( $parent_script, get_template_directory_uri() . '/assets/js/app.js' , '/asset/js/sub-page.js' );
    }
    if($post_slug == 'contact'){ //only page contact
        wp_enqueue_script( $parent_script, get_template_directory_uri() . '/assets/js/app.js' , '/assets/gmaps.js' );
    }
    if($post_slug == '[.....]'){
        wp_enqueue_script( $parent_script, get_template_directory_uri() . '/assets/js/app.js' , '/assets/js/app.js' );
    }
}
require_once('bs4navwalker.php');
?>

0 个答案:

没有答案