[the_ad_placement id="sticky-header-na-mobilah"]

Создание своего шаблона | Документация | Создание сайта на Битрикс для новичков | Урок #3

#cозданиесвоегошаблонанабитрикс #документациябитрикс

В этом уроке мы начнем со знакомства с документацией Битрикс по ссылке
Рассмотрим структуру любого шаблона #Битрикс , что он состоит из header.php, footer.php, index.php.
Создадим папку со своей темой из админки и из корня сайта.
Познакомимся с константой (угловые скобки)?if(!defined(«B_PROLOG_INCLUDED») || B_PROLOG_INCLUDED!==true)die();
IncludeTemplateLangFile(__FILE__);
?(угловые скобки) — Защита. Чтобы не подключили файл напрямую без ядра. Мало ли, что в шаблоне может быть и как это хакеры могут использовать. В ядре все таки модуль проактивной защиты есть.
Такая строчка есть во многих файлах! И всегда лучше её вставлять, если Вы знаете, что без ядра данный файл вызываться не может.
Так же рассмотрим другие фишки и в конце активируем шаблон.

00:40 Знакомство с документацией;
01:05 Разбор структуры шаблона Битрикс;
04:55 Создание шаблона;
05:05 Создание шаблона. Вариант с админки;
05:45 Создание шаблона. Вариант через корень сайта;
07:50 знакомство с константой (угловые скобки)?if(!defined(«B_PROLOG_INCLUDED») || B_PROLOG_INCLUDED!==true)die();
IncludeTemplateLangFile(__FILE__);
?(угловые скобки)
08:30 Description шаблона;
10:40 Почему все CAPS LOCK;
11:55 Выводим превью;
12:30 Активируем шаблон;
15:20 Удаление лишних файлов;

🎥 Делись видео с друзьями:
🔔 Подписывайся на канал:

✔Instagram►
✔VK►
✔Группа VK►
✔Личный сайт►
✔Отзывы, портфолио►Профиль на Freelance — freelance.ru/shulepov_code
✔Отзывы, портфолио►Профиль на FL —

Смотри также↓
⏩ Создание сайта на Битрикс для новичков | Установка Bitrix на хостинг | #1

⏩ Создание сайта на Битрикс для новичков | Знакомство с админкой Bitrix | Cтруктура файлов | #2

⏩ Установка 1С-Битрикс на хостинг | 1С-Битрикс: Управление сайтом | Битрикс для новичков | Лайфхак

⏩ Установка WordPress за 1 минуту | Выкладываем сайт в интернет | Лайфхак

⏩ Битрикс | Компонент включаемой области.

Немного обо мне:
Меня зовут Александр Шулепов, мне 28 лет.
Я искренне люблю веб-разработку и интернет-маркетинг, активно изучаю новые стандарты, а в свободное время делюсь своим опытом.
Живу в Санкт-Петербурге.

#битрикс #цмс #урокипобитрикс #созданиесайтов #созданиесайтовbitrix про ошибка bitrix.

Создание

Как импортировать компоненты {screen,‍ fireEvent, waitForElementToBeRemoved}⁢ из библиотеки тестирования React?

Import { screen, fireEvent, waitForElementToBeRemoved⁤ } ‌from ‘@testing-library/react’

import⁢ testRender from ‘../../../../../../__mock__/render’

import Layout from ‘../Layout’

import AccountBoxIcon from ‘@material-ui/icons/AccountBox’

import FavoriteIcon from ‘@material-ui/icons/Favorite’

import ‍IconButton from ‘../../../../../../components/IconButton’

import Header, { Likes } from ‘../../../Header’

jest.mock(

⁢ ‘next/link’,

‌() => ​({ children }) => ⁣{

return

{children}

‌ }

)

describe(‘Unit test for‌ header components’, () => {

‌ let logout

let LikeMessage

let getLayout

‍ const ‌user = {

username: ‘test1’,

⁣ ⁤ avatarUrl: null,

⁤ publicEmail: ⁢’【非公開】’,

⁤ ​ tweetsCount:‍ 10,

‍ profile: ‘こんにちは’,

likesCount: 100,

‍ ​ followingCount: 1000,

​ followersCount: 10000

⁣ }

const props = {

rootModal: {

⁢ modal: null,

⁣ open: ​false

⁣ },

‍hasMoreTweet: ‌false,

​ isInitializingAuthentication: false,

⁤ isVerifyingEmail: false,

user,

logout: jest.fn(),

getLayout: jest.fn()

}

​ beforeEach(() => {

logout = ‍jest.fn()

LikeMessage‍ = jest.fn()

getLayout = testRender(Likes, user)

‍ ⁣ })

afterEach(() ‌=> {

jest.clearAllMocks()

⁣ })

test(‘Display’, () => {

const totalLikes = 100

const ⁢hasMoreTweet = true

​ ‌const ⁢modalOpen = ⁢true

​ ​ const isInitializingAuthentication = true

const‌ isVerifyingEmail = true

const user‍ = { pageManage: true }

⁢ const‌ rootModal = { ‍open: modalOpen, modal:

show

}

‌ const‍ propsDisplay = {

⁢ ‌ hasMoreTweet,

user,

⁢ ⁣ rootModal,

⁤ ⁣ isInitializingAuthentication,

⁢ isVerifyingEmail,

logout: jest.fn(),

​ ⁢ ​ getLayout: jest.fn()

‍ }

‌testRender(Likes, user)

⁣ expect(screen.getByTestId(‘Search’)).toBeTruthy()

​ expect(screen.getByTestId(‘drawer’)).toBeTruthy()

expect(screen.getByTestId(‘drawer-link-modal’)).toBeTruthy()

⁣expect(screen.getByTestId(‘more-tweet-button’)).toBeTruthy()

⁢ ⁤ expect(screen.getByTestId(‘show-more-tweet-button’)).toBeTruthy()

​expect(screen.getByTestId(‘smile-emoji’)).toBeTruthy()

​ ​ expect(screen.getByTestId(‘login-arrow-drop-down’)).toBeTruthy()

‍⁤ expect(screen.queryByTestId(‘MoreTweetMessages’)).toBeInTheDocument()

expect(screen.getByTestId(‘textBox’)).toHaveAttribute(‘placeholder’, ‘ツイート’)

⁤ expect(screen.getByTestId(‘ProfileHeader’)).toBeInTheDocument()

})

})

Оцените статью