Загрузка Javascript и шаблона на основе маршрута в Wordpress - PullRequest
0 голосов
/ 29 октября 2018

Моя цель -

  1. Возможность динамически загружать файлы javascript / css в зависимости от страницы, на которой я нахожусь

  2. Поддержка динамических веб-страниц, таких как: /industry/{industry_id}

  3. Загрузка определенного шаблона на основе маршрута

Я прибываю с компонентов земли в Angular,поэтому в результате я пытаюсь сделать то же самое.

  1. Первый вопрос, как вы думаете, необходимо ли настроить такую ​​систему маршрутизации?

  2. Я нашел несколько таких библиотек, которые могут помочь WP_Route или WP-Router .

Проблема с этим заключается в том, что они не загружают javascript на основе шаблона, в который входит нечто подобное:

add_action('wp_enqueue_scripts', 'my_theme_load_scripts');

//Load scripts (and/or styles)
function my_theme_load_scripts(){
   wp_enqueue_script('jquery');
   wp_enqueue_script('my_first_script', get_template_directory_uri() . '/includes/js/my_first_script.js');
   wp_enqueue_script('my_second_script', get_template_directory_uri() . '/includes/js/my_second_script.js');

   if(is_page()){ //Check if we are viewing a page
    global $wp_query;

        //Check which template is assigned to current page we are looking at
        $template_name = get_post_meta( $wp_query->post->ID, '_wp_page_template', true );
    if($template_name == 'slider-portfolio.php'){
           //If page is using slider portfolio template then load our slider script
       wp_enqueue_script('my_third_script', get_template_directory_uri() .'/includes/js/my_third_script.js');       
    }
   }
}

Для динамических URLЯ мог бы просто использовать такие правила перезаписи

add_action( 'init', 'add_rules' );
function add_rules() {
    add_rewrite_rule('^job/([^/]*)/([^/]*)/?','index.php?page_id=12&job_title=$matches[1]&job_id=$matches[2]','top');
}

Опять же, я очень новичок в Wordpress, поэтому просто пытаюсь понять это!Очень ценю, если кто-то может указать мне правильное направление.Благодарю вас!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...