Определение дочерней темы в WordPress: функция is_child_theme()

## IS_CHILD_THEME() │ WP 3.0.0

Функция is_child_theme() позволяет определить, используется ли дочерняя тема в WordPress.

- **Время выполнения**: 1 раз — 0.00001 сек (скорость света) | 50000 раз — 0.01 сек (скорость света)
- **Требует**: PHP 7.0.8, WP 4.6

### Возврат значения

- true или false. Возвращает true, если используется дочерняя тема, и false в противном случае.

### Использование

Чтобы использовать эту функцию, просто вызовите её так:

```php
is_child_theme();

Примеры использования

Пример 1: Выполнение кода только для дочерних тем

Предположим, вы создаёте тему и хотите выполнять PHP-код только когда ваша тема используется как родительская. Если задана дочерняя тема, ваш код не должен выполняться:

if ( is_child_theme() ) {
    echo 'Код предназначен только для дочерних тем, не для родительской';
}

Пример 2: Альтернативное обнаружение дочерней темы

Внимание: Эта функция использует константы TEMPLATEPATH и STYLESHEETPATH внутри. Если вы вызываете её из плагина, например, во время активации плагина, эти значения могут быть неопределены. Лучше использовать следующий код:

if ( get_template_directory() !== get_stylesheet_directory() ) {
    // Код выполняется только если есть дочерняя тема
}

Замечания

  • Глобальные переменные:
    • $wp_stylesheet_path: Путь к текущей теме.
    • $wp_template_path: Путь к текущему шаблону темы.

Изменения

  • С версии 3.0.0: Функция была введена.
  • С версии 6.5.0: Использует глобальные переменные шаблона.

Исходный код функции

function is_child_theme() {
    global $wp_stylesheet_path, $wp_template_path;

    return $wp_stylesheet_path !== $wp_template_path;
}

Связанные функции

Вы можете также ознакомиться с другими условными тегами в WordPress, которые могут быть полезны в вашей разработке тем:

  • cat_is_ancestor_of()
  • category_exists()
  • comments_open()
  • email_exists()
  • has_block()
  • has_category()
  • has_custom_header()
  • и многие другие...

Более подробное описание и примеры использования можно найти в официальной документации WordPress.

Leave a Reply

Ваш адрес email не будет опубликован. Обязательные поля помечены *