• Как в битрикс 1с зная id элемента -вывести корневой раздел?

    Real_Fermer
    @Real_Fermer
    Программист PHP
    $elementId = 123; // замените 123 на нужный вам ID элемента
    $res = CIBlockElement::GetByID($elementId);
    if($ar_res = $res->GetNext()) {
        $sectionId = $ar_res['IBLOCK_SECTION_ID'];
        $arSection = CIBlockSection::GetByID($sectionId)->GetNext();
        $rootSectionId = $arSection['IBLOCK_SECTION_ID'];
    
        // Получение информации о корневом разделе
        $arRootSection = CIBlockSection::GetByID($rootSectionId)->GetNext();
        echo $arRootSection['NAME'];
    }
    Ответ написан
    3 комментария
  • Как автоматически отправить форму?

    @romteh
    $( document ).ready(function() {
        $( "form:first" ).submit();
    });
    Ответ написан
    1 комментарий
  • Как убрать переадресацию в вордпресс?

    flash_usb
    @flash_usb
    Разработчик и локализатор WordPress в России
    Отключить переадресацию с несуществующего адреса на похожий существующий можно с помощью плагина Disable URL Autocorrect Guessing.
    Ответ написан
    Комментировать
  • Как сделать красивые url в пагинации в битрикс 1с?

    Никак !!
    Господи меня парой поражают SEO шники которые до сих пор не понимают что сейчас не 2008
    не нужны миллионы страниц в индексе.
    1. ВСЕ страницы на сайте должны иметь ЧПУ
    2. Каждая страничка должна вести на свою категорию.
    3. Нет дублей никаких.
    4. Риал каноникал на всех страницах, на всех, вот просто в хедер засуньте риал каноникал на текущую страничку без гет параметров !
    5. Если у вас страничка с гет то ее точно индексировать нельзя, по этому запрещайте индексировать карзины пагенации и тд, канибализм пока никто не отменял.
    6. Выберете в вашем случае два варианта
    1. спрятать за AJAX в таком случае 1 кнопочка и у вас все работает.
    2. вас не устраивает что вы не можете дать ссылку на 5 страничку не приходя к костылям.
    В таком случае смотрите правило выше ( все страницы с гет уже не попадают в индекс)
    Скажите мне зачем вам в индексе 10 одинаковых страниц отжирающих вес?

    Пример
    У вас запрос
    "Холодильник тефаль"
    У вас есть секция холодильники и тефаль, проблем нет вы на их основе собераете ЧПУ
    НО так же у вас есть и фильтры
    Красный
    от 30 до 36 обьем морозилки
    Количество контуров 2
    евро вилка
    и тд. В общем в совокупности будут запросы которые в интернете по 1-2 за год !
    а таких страниц может быть миллион.
    По этому веса у них быть не должно
    И того
    Важные фильтры ченрез секции и они имеют чпу
    Холодильник тефаль - существует
    Красный холодильник тефаль Высота 30 Ширина 31 с ледообразователем в ценовом дипапзоне от 100 до 142, это идиотский запрос его в индексе быть не должно, а следвоательно вся эта лабудень собирается на гет параметрах, а они у нас мало того что запрещены все полностью к индексации.
    Так еще и риал каноникал у нас стоит и говорит явно что вот эту страничку нужно индексировать.
    Смысл создавать странички от которых толку 0 ?
    Ответ написан
    1 комментарий
  • Как настроить 301 редирект в битрикс 1 с чтобы /index.php перенаправлялось на /?

    Ge1i0N
    @Ge1i0N
    RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /index\.php\ HTTP/
    RewriteRule ^index\.php$ https://tagil-steel.ru/ [R=301,L]
    Ответ написан
    Комментировать
  • Как преобразовать элементы массива в integer?

    rdifb0
    @rdifb0
    Программист, реалист
    А зачем вам это понадобилось в языке с динамической типизацией?
    Но если вдруг нужно то
    $array = array_map('intval', $array);
    Ответ написан
    2 комментария
  • JS последний элемент массива?

    @JavaIlya
    Learning Java
    var array = [1,2,3,4,5];
    Array.prototype.last = function() {
     return this[this.length - 1];
    }
    array.last() // 5
    Ответ написан
    Комментировать
  • Как реализовать событие при выборе определенного optionа?

    @DanKud
    document.addEventListener('click', e => {
        if (e.target.getAttribute('id') === 'e6PEPititorOPT') alert();
    })
    Ответ написан
    Комментировать
  • Как вывести iframe из инфоблока в битрикс 1с?

    посмотри всё содержимое массива $arItem['PROPERTIES']['VIDEO'] - может, там есть ключ ["~VALUE"]["TEXT"] или ["VALUE"]["~TEXT"] . Я подозреваю, что показанное Вами - уже "html-безопасное" значение
    Ответ написан
    Комментировать
  • Как посчитать сумму SQL запросом?

    LaRN
    @LaRN
    Senior Developer
    Как то так:
    Select t1.id, sum(t2.price)
      From таблица2 as t1
      Inner join таблица1 as t2
                  on t2.id = t1.id_zapchast
      group by t1.id
    Ответ написан
    Комментировать
  • Как правильно вернуть массив из views в шаблон при AJAX запросе?

    netpastor
    @netpastor
    Python developer
    from django.http import JsonResponse
    def search_photos(request):
        if request.method == 'GET':
            q = request.GET.get('q')
            photos_url = []
            #Здесь формирую массив photos_url
            return JsonResponse(photos_url)
    Ответ написан
    6 комментариев
  • При создание foregn key в firebird выходит ошибка violation of FOREIGN KEY constraint "PK_ROLES1" on table "roles"?

    @SergeyAVolkov
    В users_roles ссылка на роль которой нет в таблицы roles.
    Найти такие записи можно запросом:
    select UR.*
    from "users_roles" UR 
        left join roles R on UR.ROLE_ID=R.ID
    where R.ID is null
    Ответ написан
    Комментировать
  • Как получить значение input text при нажатии на кнопку на js?

    gobananas
    @gobananas
    finishhim.ru
    Присваиваем разные id. При нажатии на кнопку получаем значения поля https://jsfiddle.net/q4h1045m/
    <input id="elem1" type="text" name="quantity" placeholder="Количество">
    <input id="butt" type="button" value="Кнопка"/><br><br>
    <div id="str"></div>

    butt.onclick = function() {
    		var val = document.getElementById('elem1').value;
    		document.getElementById('str').innerHTML="Вы ввели: "+val;
    };
    Ответ написан
    1 комментарий
  • Как правильно написать render функцию на чистом JS?

    titov_andrei
    @titov_andrei
    All my life I learn - and die a fool!
    Как то так:
    render() {
      this.el = document.querySelector(this.selector)
      this.el.innerHTML = this.template
    }
    Ответ написан
    Комментировать
  • Как в HTML сделать чтобы не печатались кнопки при нажатии ctrl+p?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    Используйте media-правило CSS, прописав нужный класс всему, что не надо печатать.
    @media print {
      .do-not-print {
        display: none;
      }
    }
    Ответ написан
    Комментировать
  • Как в HTML сделать чтобы не печатались кнопки при нажатии ctrl+p?

    potapchino
    @potapchino
    @media print {
        .buttons, footer { display: none; }
    }
    Ответ написан
    Комментировать
  • Пишут ли проекты на чистом JS?

    @wearemieta
    BEWARE HIPSTERS
    Есть ли какие-нибудь проекты.сайты или приложения которые написанны на ванильном JS'e.

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

    Почему для Javascript'a используется обильное кол-во библиотек/фреймворков и расширений вроде TypeScript


    Давайте поймем что такое фреймворк, библиотека, расширение. Вы пишете код. Скорее всего, в разных частях и файлах вашей программы вы часто выполняете одно и тоже действие, например, делаете все буквы в слове ПРОПИСНЫМИ. Вот так на 'ванильном JS' может выглядеть ваша функция:

    function wordToUppercase(word) {
      return word.toUppercase()
    }


    Чище некуда, так ведь? Теперь можно копировать этот кусочек в любую часть кода где он нужен. Но что если нам нужно слегка поменять эту функцию, например, так:

    function wordToUppercase(word) {
      if (word.length > 3) {
        return word.toUppercase()
      }
    }


    И снова чистый js. Теперь снова можно копировать! Но если мы хотим в одном случае считать длину слова, а в другом нет? Скопируем два раза и изменим в одном месте? А если мест много?

    Возникла проблема. Нужно решение. Одно из решений может быть таким: вынесем эту функцию в отдельный файл, будем обращаться к ней из других файлов по мере необходимости.

    Что же произошло? Мы нашли подходящее решение для нашей проблемы и вынесли его в отдельный кусочек кода. Так что же все-таки фреймворк, библиотека, расширение?

    Вернемся к нашему примеру. Программа росла, мест с повторяющимися действиями становилось больше. Но мы уже умеем работать с повторяющимся кодом, поэтому мы выносили решения проблем которые нам встречались в отдельные кусочки кода. Так вот совокупность всех наших решений и есть библиотека.

    Библиоте́ка (от англ. library) в программировании — сборник подпрограмм или объектов, используемых для разработки программного обеспечения (ПО).


    Теперь мы можем легко реиспользовать наши наработки в других похожих программах.
    Говоря абстрактным языком, библиотека — набор решений для часто встречающихся проблем.

    Опять же, абстрактно, фреймворк — набор решений для часто встречающихся проблем. Только он решает другие проблемы, нежели библиотека. Проблемы структурирования.

    Структу́ра (от лат. structūra «строение», «устройство», «связь или расположение составных частей»):


    Почему для Javascript'a используется обильное кол-во библиотек/фреймворков и расширений вроде TypeScript


    Люди обильно писали код на js. Сталкиваясь с определенными проблемами они находили решения. Эти решения они стали выделять в библиотеки, фреймворки и расширения, которые являются ничем иным как определенными способами решения определенных проблем/задач.

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

    может ли уменьшится в них надобность с выходом Es-6/7 и дальнейших спецификаций?


    Спецификации точно таким же образом используются для решения определенных задач. Если задачи вашего приложения можно решить с помощью спецификаций, то надобность вашему приложению
    в других инструментах решения уменьшится.

    Сможете теперь ответить, почему все сайты, которые используют js написаны именно на ванильном js?
    Ответ написан
    Комментировать
  • Как к React коду реализующий "лайки" прилепить localStorage.setItem и localStorage.getItem?

    0xD34F
    @0xD34F Куратор тега React
    state = {
      likes: localStorage.getItem('likes') | 0,
    }
    
    plus = () => {
      this.setState(({ likes }) => ({
        likes: likes + 1,
      }), () => localStorage.setItem('likes', this.state.likes));
    }
    Ответ написан
    3 комментария