Канонические ссылки в 1C Bitrix (тег canonical)

Скопировать код в шаблон

<?php
if(isset($_REQUEST['PAGEN_1']) && $_REQUEST['PAGEN_1']1){
	$protocol = (CMain::IsHTTPS()) ? "https://" : "http://";
	
	$url = $protocol.$_SERVER['SERVER_NAME'].$_SERVER['REQUEST_URI']; // Заносим в переменную полный URL текущей страницы.
	
	$urlend = strrpos($url, '?', -1); // Находим и удаляем все параметры (номер страницы, 
Unit тестирование

Основное

Критерии хороших автономных тестов

  • Заслуживающие доверия тесты
    • Принять решение о том, когда удалять и изменять тесты
    • Избегать логики в тестах
    • Тестирование одного результата
    • Разделение на автономные и интеграционные тесты
    • Анализ кода и покрытие тестами
  • Удобные для сопровождения тесты
    • Тестирование
Подход к тестированию

Основные принципы автоматического тестирования 

  1. Тесты, использующие БД, должны исполняться на тестовой БД
  2. Каждый тест (с доступом к реальной БД) должен очищать за собой те сущности, которые он сгенерировал (такие тесты должны наследоваться от TestBase и реализовывать метод TestCleanup())
    1. Так исключается ситуация, когда тесты могут очистить за
Микроразметка JSON-LD. Пример на PHP для WordPress

Документация по микроразметке https://schema.org/Product
Валидация микроразметки https://search.google.com/structured-data/testing-tool/u/0/?hl=ru

	
<?php if( is_product() ) : 
    global $post, $product;
    $date = strtotime( $post-post_date );
    $date = strtotime('+1 year', $date);
    $reviews = get_comments(array(
                        'post_id'       =$post-ID,
			'status'        ='approve'
                    ));
    ?<script type="application/ld+json"
GitFlow

Используем в работе модель Git Flow.

Клиент SourceTree поддерживает Git Flow из коробки.

Основные принципы:

  • В ветки develop и master напрямую ничего не коммитим, все проводим через рабочие ветки.
  • Каждый коммит в master — это по определению новый релиз 
Pagination

Pagination — базовая инфраструктура для постраничного представления данных


Базовая инфраструктура для постраничного представления данных позволяет унифицировать работу со списками по всему проекту Telecom на стороне BE и FE.
Так же позволяет на стороне BE работать только с методами базового репозитория …

Библиотеки .Net

Используемые и рекомендуемые библиотеки .NET

  • Serilog библиотека для логирования (имеет расширение Serilog.Sinks.Elasticsearch для записи напрямую в Elasticsearch)
  • Polly библиотека для поддержки микросервисной архитектуры (предохранители, перегородки, повторы, кэш и др.) https://github.com/App-vNext/Polly
  • Automapper библиотека для маппинга моделей из разных слоёв архитектуры
  • Autofac IoC-контейнер
BestPractice