2014-10-06 3 views
0

У меня есть сайт (http://lab.eksperimentar.com), и я использую тему Delipress, и это ребенок. Проблема в том, что я делаю изменения внутри дочерней темы, и страница не загружает styles.css.Добавить детскую тему css в <head>

Я хочу «вставить» в головной метке этот HTML элемент:

<link rel="stylesheet" id="delipress-child-style-css" href="http://lab.eksperimentar.com/wp-content/themes/delipress-child/style.css" type="text/css" media="all"> 

Если я открыть function.php внутри папки ребенка и вставить

<head> 
<link rel="stylesheet" id="delipress-style-css" href="http://lab.eksperimentar.com/wp-content/themes/delipress/style.css?ver=2.5.1" type="text/css" media="all"> 
</head> 

это ломает мой сайт, потому что вместо «вставки» тега заголовка он заменяет его.

Как это сделать без вмешательства в тему отца?

ответ

0

Нет необходимости редактировать файл functions.php; вы должны открыть файл header.php, расположенный внутри папки ребенка темы, а затем добавьте следующий код внутри <head></head> теги:

<link rel="stylesheet" id="delipress-child-style-css" href="http://lab.eksperimentar.com/wp-content/themes/delipress-child/style.css" type="text/css" media="all">

+0

Существует не 'header.php' файл в папке моего ребенка ТЕМЫ, только' 'style.css' и functions.php'. Я создам один и дам вам знать – angelod1as

+0

, вы должны создать копию файла header.php, который находится внутри родительской темы, а затем переместить этот скопированный файл header.php в папку с дочерней темой. Как только это будет сделано, выполните шаги, которые я упомянул в своем основном ответе. –

+0

Работал как очарование! – angelod1as

2

Правильный путь должен был бы использовать, чтобы использовать функцию wp_register_style(), а затем wp_enqueue_style().

Обе функции необходимо подключить к wp_enqueue_script().

Пример Из КОДЕКС:

// Register style sheet. 
add_action('wp_enqueue_scripts', 'register_plugin_styles'); 

/** 
* Register style sheet. 
*/ 
function register_plugin_styles() { 
    wp_register_style('my-plugin', plugins_url('my-plugin/css/plugin.css')); 
    wp_enqueue_style('my-plugin'); 
} 

Вы также можете пропустить регистр и просто использовать wp_enqueue_style() один на один с тем же крючком

Читайте также here При использовании детской темы ..

add_action('wp_enqueue_scripts', 'load_my_child_styles', 20); 
function load_my_child_styles() { 
    wp_enqueue_style('child-theme', get_stylesheet_uri()); 
} 

Другая (менее рекомендуемая) опция, если у вас есть только простой CSS, и вы хотите вывести его непосредственно в HEAD будет с помощью wp_head() действия

<?php 
    function add_styles() 
    { 
     ?> 
     <style type="text/css"> 
     .menu ul li.world a { 
      background: url(<?php bloginfo('template_directory'); ?>/images/<?php echo get_option(THEME_PREFIX . 'intro_image'); ?>) repeat scroll 0%; 
     } 

     .m ul li.me a { 
      background: url(<?php bloginfo('template_directory'); ?>/images/<?php echo get_option(THEME_PREFIX . 'slider_image'); ?>) repeat scroll 0%; 
     } 

    </style> 
    <?php 
    wp_head 
    } 

    add_action('wp_head', 'add_styles'); ?> 

Пожалуйста, обратите внимание на открытие и закрытие PHP тегов

Смежные вопросы