WordPress как на ладони
Наставник Трепачёв Д.П., phphtml.net wordpress jino

the_custom_logo() WP 4.5.0

Выводит на экран HTML код логотипа сайта, установленного в настройках темы. Код будет такой структуры: <a href="/"><img></a>.

Это обертка для конструкции: echo get_custom_logo( $blog_id );

Чтобы можно было установить логотип в настройках темы, нужно включить поддержку темы custom-logo: add_theme_support( 'custom-logo' ).

Работает на основе: get_custom_logo()

Хуков нет.

Возвращает

Ничего, а выводит результат на экран. Если логотип в настройках темы не установлен то ничего не выведет.

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

<?php the_custom_logo( $blog_id ); ?>
$blog_id(число)
ID сайта/блога, логотип которого нужно получить.
По умолчанию: 0 (текущий блог)

Примеры

#1 Выведем на экран логотип сайта

<?php the_custom_logo( $blog_id ); ?>

/* Выведет такой HTML код (только в одну строку):

<a href="http://wptest.ru/" class="custom-logo-link" rel="home" itemprop="url">
	<img 
	width="491" 
	height="299" 
	src="http://wptest.ru/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper.jpg" 
	class="custom-logo" 
	alt="cropped-cropped-triforce-wallpaper.jpg" 
	itemprop="logo" 
	srcset="http://wptest.ru/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper.jpg 491w, http://wptest.ru/wp-content/uploads/2013/04/cropped-cropped-triforce-wallpaper-300x183.jpg 300w" 
	sizes="(max-width: 491px) 100vw, 491px" 
	/>
</a>
*/

Код the custom logo: wp-includes/general-template.php WP 4.8.1

<?php
function the_custom_logo( $blog_id = 0 ) {
	echo get_custom_logo( $blog_id );
}

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

Из метки: custom_logo (custom logo логотип)

Еще из раздела: Другие функции темы

the_custom_logo 11 комментариев
Полезные 2 Вопросы 2 Все
  • lincaseidhe21 cайт: ardeya.ru

    а класс для логотипа произвольный установить можно?

    Ответить1.2 года назад #
    • Kama4477

      Через эту функцию нельзя. Но можно получить ID вложения логотипа через

      $custom_logo_id = get_theme_mod( 'custom_logo' );

      и дальше зная ID картинки-вложения делать с ней что угодно используя функции вложений WordPress

      Ответить1.2 года назад #
      • Макс

        Здравствуйте. Я так понимаю id картинки будет "custom_logo". Если так, то мне нужно найти этот id и в нем менять размеры логотипа?

        Ответить4 месяца назад #
      • Макс

        Уважаемый Kama, подскажите пожалуйста. Никак не могу определить где прописаны размеры логотипа в теме Medplus. Пробовал найти по id и функциям, но никак не могу "допереть". В файлах стилей темы Medplus так и не нашел ничего...
        Заранее спасибо! help

        Ответить4 месяца назад #
  • Функция the_custom_logo прописана в wp-includes/jeneral-templates.php
    А в теме Twenty Sixteen появилась функция twentysixteen_the_custom_logo(). Подскажите, пожалуйста, где эта функция прописана в теме?

    • campusboy1737 cайт: wp-plus.ru
      @

      Здесь
      ..\twentysixteen\inc\template-tags.php
      На 241 сроке:

      if ( ! function_exists( 'twentysixteen_the_custom_logo' ) ) :
      /**
       * Displays the optional custom logo.
       *
       * Does nothing if the custom logo is not available.
       *
       * @since Twenty Sixteen 1.2
       */
      function twentysixteen_the_custom_logo() {
      	if ( function_exists( 'the_custom_logo' ) ) {
      		the_custom_logo();
      	}
      }
      endif;

      Используется потом в файле header.php в 32 строке

      <?php twentysixteen_the_custom_logo(); ?>
      1
      • т.е., - единственная роль функции twentysixteen_the_custom_logo() - вызвать функцию the_custom_logo() . Хм, однако...

        • campusboy1737 cайт: wp-plus.ru
          @

          В этом нет ничего удивительного, это правильно сделано. Видите, идёт проверка, определена ли такая функция раньше или нет. Это сделано для того, чтобы вы при создании дочерней темы могли переопределить эту функцию и добавить свои хотелки. А вот функцию the_custom_logo переопределить не выйдет, так она определяется раньше в самом движке, чем файлы темы, и это вызовет ошибку.

          1
  • Скажите, а где в теме размещаются картинки для логотипа и постов? Никакой папки images я в этой теме что-то не вижу...

    • campusboy1737 cайт: wp-plus.ru
      @

      Они загружаются в медиабиблиотеку движка. Физическое месторасположение wp-content -> uploads -> год -> месяц.

      2

Здравствуйте, !

Ваш комментарий