Битрикс: получить айди всех родительских разделов

11 января 2022. Рубрики: Шпаргалки; автор — Княгиня.

Пополнение рубрики «Шпаргалки».
Иногда бывает необходимо получить айди предков текущего раздела инфоблока. Это можно сделать так:

<?
  //получаем все вышележащие разделы 
  //для раздела с айди $IBLOCK_SECTION_ID инфоблока $IBLOCK_ID
  $navChain = CIBlockSection::GetNavChain($IBLOCK_ID, $IBLOCK_SECTION_ID);
  //собираем айди всех этих разделов
  $allsectons = array();
  while($arNav=$navChain->GetNext()){
    $allsectons[] = $arNav[ID];
  }
?>

Теперь из массива $allsectons можно получить айди всех разделов сверху вниз по индексу.

Ваш отзыв »

Как добавить ссылку в хлебных крошках плагина Yoast SEO

18 мая 2021. Рубрики: Шпаргалки; автор — Княгиня.

Рецепт работает, если вам не хватает, к примеру, ссылки на корень магазина. Используется фильтр wpseo_breadcrumb_links. Код добавляется в файл functions.php.

add_filter( 'wpseo_breadcrumb_links', 'wpseo_breadcrumb_add_woo_shop_link' );
function wpseo_breadcrumb_add_woo_shop_link( $links ) {
  global $post;
    if(is_woocommerce() && !is_shop()){
      $breadcrumb[] = array(
      'url' => get_permalink( woocommerce_get_page_id( 'shop' ) ),
      'text' => 'Магазин',
    );
    array_splice($links, 1, -2, $breadcrumb);
  }
  return $links;
}

Здесь условие is_woocommerce() означает, что изменение применяется только к страницам магазина, созданного на woocommerce. Условие !is_shop() убирает ссылку на магазин на самой странице магазина.

Ваш отзыв »

WordPress: как убрать обёртки виджетов

24 марта 2020. Рубрики: Шпаргалки; автор — Княгиня.

Вордпресс по умолчанию подставляет виджетам обёртки с классом. Часто эти обёртки бывают ненужными, а иногда просто мешают. Чтобы убрать обёртки у виджетов типа «Текст» и «Html-код», нужно добавить в файл function.php следующий код:

function my_register_sidebars(){
  /*здесь может быть регистрация новых виджетов*/
  register_widget('My_Text_Widget');
  register_widget('My_HTML_Widget');
}
class My_Text_Widget extends WP_Widget_Text{
  function widget($args, $instance){
    extract($args);
    $title = apply_filters('widget_title', empty($instance['title']) ? '' : $instance['title'], $instance, $this->id_base);
    $text = apply_filters('widget_text', empty($instance['text']) ? '' : $instance['text'], $instance);
    echo $before_widget;
    if (!empty($title)){
      echo $before_title . $title . $after_title;
    }
    echo !empty($instance['filter']) ? wpautop($text) : $text;
    echo $after_widget;
  }
}
class My_HTML_Widget extends WP_Widget_Custom_HTML{
  function widget($args, $instance){
    extract($args);
    $title = apply_filters('widget_title', empty($instance['title']) ? '' : $instance['title'], $instance, $this->id_base);
    $text = apply_filters('widget_text', empty($instance['content']) ? '' : $instance['content'], $instance);
    echo $before_widget;
    if (!empty($title)){
      echo $before_title . $title . $after_title;
    }
    echo !empty($instance['filter']) ? wpautop($text) : $text;
    echo $after_widget;
  }
}

3 комментария »

Защита от спама без плагина: обновлённый WordPress

24 мая 2016. Рубрики: Интернет, Рабочие заметки; автор — Юлия Панина aka Княгиня.

В последних версиях Вордпресса перестал работать мой любимый метод борьбы со спамом, которым я пользовалась лет 6, если не больше. Метод перестал, а спамеры никуда не делись. К счастью, народная мысль уже нашла альтернативу; приём, в сущности, тот же: подмена типового поля, разница в способе подключения. Выкладываю его в дополнение к старой статье. Читать полностью »

34 комментария »

Профдеформационное

26 апреля 2016. Рубрики: Интернет, Разное; автор — Юлия Панина aka Княгиня.

Инструменты вебмастера

Попробуем проснуться ещё раз…

На днях (точнее — в мае) стукнет 10 лет, как я работаю в сайтострое (это не считая полугода учёбы и тестовых задач «для себя»). Всякое за эти годы было, разное — были ошибки, были достижения, в чём-то выросла, где-то глаз замылился; и расти ещё есть куда — хоть до бесконечности.

А в самые-самые последние дни меня стал терзать мучительный вопрос…

17 комментариев »

Css-анимация: пример-игрушка

10 марта 2015. Рубрики: Рабочие заметки; автор — Юлия Панина aka Княгиня.

Блог выводится из летаргического сна. Насколько успешно — увидим.

Вниманию публики предлагается небольшая игрушка на css: демонстрация возможностей свойств transform и transition. «Каруселька» сделана на чистом css, без единого скрипта и без единой картинки; если бы она ещё запоминала положение стрелки, её можно было бы назвать «Лото» или «Рулетка», но такое без скрипта никак.

Примечание: каруселька работает в ИЕ, начиная с 10. В старых версиях ИЕ такое сделать невозможно. Читать полностью »

43 комментария »

Вебмастер в сомнениях

23 июля 2013. Рубрики: Юмор; автор — Юлия Панина aka Княгиня.

Мысленный монолог

  • Вебмастер? Да, это я. Починяю сайты и сайтики, шью из psd заказчика. Чистка, утюжка и художественная штопка.
  • Опа! Такого мы ещё не делали. То есть, ровно такого не делали. Хотя всякое бывало…
  • Вроде бы, не за гранью способностей. Но если бы такое хоть раз делалось, уверенности было бы больше. Отказаться?
  • А сколько «первых разов» уже было? Откуда они бы взялись, если каждый раз отказываться от непривычного?
  • Ага, вот и мануалы по системе. Пробуем на зуб… Жить можно.
  • Вот только сколько времени это займёт и сколько запросить за работу?
  • Заказчик спрашивает, да или нет. Да! Читать полностью »

147 комментариев »

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19