Розробка теми WordPress (101)

Посібник з розробки теми WordPress


Навчання створювати теми WordPress відкриває для вас цілий новий світ. Це дозволяє будувати власні дизайни для себе, своїх клієнтів і навіть сприяти спільноті з відкритим кодом.

У цьому посібнику ми перейдемо до нуля, щоб мати повністю функціональну тему, яку можна надіслати до WordPress.org довідник тем.

Для подальшої роботи вам знадобиться базове розуміння HTML, CSS, PHP та того, як працює WordPress.

Весь код, використаний у цьому посібнику, буде доступний для ознайомлення в цьому Сховище Github.

Contents

Створення основних файлів


Функціонуюча тема WordPress може складатися з двох файлів: style.css і index.php. Це можливо через WordPress ієрархія шаблонів.

Коли WordPress виводить веб-сторінку, вона шукає найбільш конкретний доступний шаблон, якщо шаблон не існує, він рухатиметься вниз за ієрархією, поки не знайде той, який є. Ось практичний приклад:

Користувач увімкнено https://example.com/practical-example, яка є сторінкою. WordPress спробує знайти шаблон у такому порядку:

  • page- {slug} .php – Слуг сторінки / практичний-приклад, WordPress буде використовувати ваш-тему / сторінку-практичний-example.php
  • page- {id} .php – Ідентифікатор сторінки 42, WordPress буде шукати, щоб використовувати вашу тему / page-42.php.
  • page.php – WordPress спробує загальноприйнятий шаблон вашої теми / page.php.
  • singular.php – Шаблон єдиного шару може відображати повідомлення та сторінки, тому його спробують після більш конкретної сторінки.php
  • index.php – Нарешті, ваша-тема / index.php використовується, якщо іншого шаблону не знайдено.

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

В / wp-content / теми /, створити папку з іменем моя-власна тема і створіть ці два наступні файли:

style.css

Щоб WordPress розпізнав нашу тему та правильно вивів її у списку Зовнішній вигляд → теми, нам потрібно розмістити деякий специфічний для WordPress код у верхній частині style.css, це виглядає приблизно так:

/ *
Назва теми: Моя власна тема
Тема URI: https://yourwebsite.com/theme
Автор: Ваше ім'я
Автор URI: https://yourwebsite.com
Опис: Це моя перша спеціальна тема!
Версія: 1.0.0
Ліцензія: Загальна публічна ліцензія GNU v2 або новішої версії
URI ліцензії: 
Текстовий домен: моя-спеціальна тема
Теги: користувальницький фон
* /

Технічно жодне з полів не обов’язкове, але якщо ви хочете, щоб ваша тема виглядала добре у wp-адміністраторі, тоді вони дуже рекомендуються. Вони також потрібні, якщо ви поширюєте свою тему на WordPress.

  • Назва теми – Ви завжди повинні вказувати назву теми. Якщо ви цього не зробите, ім’я папки буде використано, моя-користувальницька тема в нашому прикладі.
  • Тема URI – Якщо використовується, тематичний URI повинен містити посилання на сторінку, де відвідувачі можуть дізнатися більше про тему.
  • Автор – Ваше ім’я йде сюди.
  • Автор URI – Тут можна розмістити посилання на ваш особистий чи діловий веб-сайт.
  • Опис – Опис показано на модальній темі wp-admin, а також на Тема WordPress лістинг.
  • Версія – Номери версій допомагають розробникам відстежувати зміни та повідомляти користувачів, чи використовує вони останню версію. Ми слідуємо за SemVer система нумерації для позначення серйозності змін оновлення.
  • Ліцензія – Як ви ліцензуєте свою тему, залежить від вас, але якщо ви виберете ліцензію, не сумісну з GPL, ви не зможете поширювати свою тему на WordPress.
  • URI ліцензії – Це просто посилання на ліцензію, перелічену вище.
  • Текстовий домен – Текстовий домен використовується при перекладі вашої теми на інші мови. Не хвилюйтесь, що ми це вивчимо пізніше. Наразі достатньо знати, що найкраща практика для папки теми та текстового домену є темою, розділеною дефісами замість пробілів..
  • Теги – Теги використовуються лише в тому випадку, якщо ви завантажуєте свою тему в каталог тем WordPress.org. Вони є основою механізму “Фільтр особливостей”.

Скопіюйте та вставте все вище style.css і у вас вийде щось подібне:Інформація про тему wp-admin

Примітка: Наразі це виглядає трохи порожнім, оскільки у нас ще немає скріншоту. Ми додамо це пізніше.

index.php

index.php є єдиним іншим строго необхідним файлом. Його завдання полягає в тому, щоб надати всі вихідні дані нашої теми.

З тих пір index.php буде видавати всі наші сторінки (домашню, публікації, категорії, архіви), це буде робити багато роботи. Для початку нам потрібен розділ, який висвітлює основи HTML.


>





Це стандартний HTML за одним винятком, [wp_head ()] (). wp_head – це основна функція, яка дозволяє WordPress та стороннім плагінам вставляти код у заголовок без зміни файлів шаблонів. Це називається гаком дії.

Якщо ви знайомі з HTML, ви можете помітити, що його немає тег для виведення заголовку сторінки. Це тому, що WordPress може використовувати гачок wp_head для динамічної вставки заголовка.</p><p>Ще одне використання wp_head – це запускати стилі (.css) та сценарії (.js). Для цього є дуже вагомі причини замість жорсткого кодування, про які ми розглянемо далі.</p><p>Далі ми маємо тіло сторінки:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><body data-rsssl=1 <?php body_class(); ?><svg id="tf_svg" style="display:none"><defs></defs></svg>></pre><p><em>body_class ()</em> – це допоміжна функція, надана WordPress, яка виведе список корисних класів CSS, які описують відображається сторінку, наприклад:</p><pre class="EnlighterJSRAW" data-enlighter-language="html"><code class="EnlighterJSRAW" data-enlighter-language="html">class = "page page-id-2 page-parent page-template-template-default-logged" </code></pre><p><em>body_class ()</em>; також приймає параметр, щоб ви могли додавати власні класи, наприклад:</p><pre class="EnlighterJSRAW" data-enlighter-language="html"><body data-rsssl=1 <?php body_class( 'wide-template blue-bg' ); ?><svg id="tf_svg" style="display:none"><defs></defs></svg>></pre><p>Далі ми маємо заголовок шаблону.</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><header class="site-header"> <p class="site-title"> <a href="<?php echo esc_url( home_url( '/' ) ); ?" data-wpel-link="internal">"> <?php bloginfo( 'name' ); ?> </a> </p> <p class="site-description"><?php bloginfo( 'description' ); ?></p> </header> </pre><p>Тут ми використовуємо вбудовані шаблонні функції WordPress для виводу заголовка сайту та опису. Ми також використали функцію помічника, <em>home_url (),</em> щоб посилання заголовка сайту повернутися до домашньої сторінки.</p><p>Далі, частина сторінки:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><div class="site-content"> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <article <?php post_class(); ?>> <header class="entry-header"> <?php the_title( '<h1 class="entry-title"><span id="i-2">','</span></h1>'); ?> </header> <div class="entry-content"> <?php the_content( esc_html__( 'Continue reading →', 'my-custom-theme' ) ); ?> </div> </article> <?php // If comments are open or we have at least one comment, load up the comment template. if ( comments_open() || get_comments_number() ) : comments_template(); endif; endwhile; else : ?> <article class="no-results"> <header class="entry-header"> <h1 class="page-title"><?php esc_html_e( 'Nothing Found', 'my-custom-theme' ); ?></h1> </header> <div class="entry-content"> <p><?php esc_html_e( 'It looks like nothing was found at this location.', 'my-custom-theme' ); ?></p> </div> </article> <?php endif; ?> </div> </pre><p>Тут стає цікаво (і трохи складніше). Тут ми використовуємо найважливішу особливість WordPress – <a href="https://developer.wordpress.org/themes/basics/the-loop/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Петля</a>. Цикл виконує важку роботу, щоб з’ясувати, на якій сторінці знаходиться користувач і що слід показати. Потім він повертає список однієї чи декількох “публікацій”, через які ми можемо перебирати та виводити дані за допомогою функцій шаблону.</p><p>Якщо цикл не повертає жодних результатів, наприклад, на сторінці 404 або видаленій публікації, ми використовуємо інший оператор, щоб показати попередньо визначене повідомлення.</p><p>Без жодного оточуючого коду спрощений цикл виглядає так:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">if (have_posts ()): // перевірити, чи цикл повернув якісь повідомлення. while (have_posts ()): // цикл через кожну повернуту публікацію. пошта(); // налаштувати вміст, щоб ми могли використовувати теги шаблонів, такі як the_title (). назва(); // вивести назву посади. контент(); // вивести вміст публікації. зрештою; ще: ехо "Не знайдено жодної сторінки"; // вивести повідомлення про помилку, якщо немає повідомлень. ендіф; ?> </pre><p><strong>Примітка:</strong> Оскільки WordPress бере початок у веденні блогів, багато функцій використовують термінологію “пост”, хоча вони можуть повертати та виводити будь-який тип вмісту (публікації, сторінки, спеціальні типи публікацій).</p><p>Нарешті, у нас є колонтитул, все, що нам потрібно зробити, це закрити HTML-теги, які ми відкрили раніше. Є ще одна гачка дій, <a href="https://developer.wordpress.org/reference/hooks/wp_footer/" data-wpel-link="external" rel="external noopener noreferrer">wp_footer ()</a>, який активно використовується WordPress та плагінами для включення сценаріїв у колонтитул, необхідний для візуалізації сторінки.</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php wp_footer(); ?> <script src="https://12barclub.com/wp-content/cache/min/1/b6f55790f252056d7d2225859bf501aa.js" data-minify="1" defer></script><noscript><link rel="stylesheet" href="https://12barclub.com/wp-content/cache/min/1/6ec48eb33aab6d70e2d3de501edafb41.css" data-minify="1" /></noscript></body> </html> </pre><p>Якщо ви до цього часу стежили, у вас буде повністю функціональна тема WordPress, яка виглядає приблизно так:</p><p><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20750%20242'%3E%3C/svg%3E" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17326 size-large" data-tf-src="/images/wordpress-theme-development-101-3.jpg" alt="попередній попередній перегляд теми" width="750" height="242" data-lazy-src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"/><noscript><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17326 size-large" data-tf-src="/images/wordpress-theme-development-101-3.jpg" alt="попередній попередній перегляд теми" width="750" height="242"/></noscript><noscript><img class="shadow-2 aligncenter wp-image-17326 size-large" data-tf-not-load src="/images/wordpress-theme-development-101-3.jpg" alt="попередній попередній перегляд теми" width="750" height="242"/></noscript></p><p>Наша тема не виграє жодної нагороди дизайну (у ній немає CSS), і у неї відсутня безліч функцій, які користувачі вважають важливими (бічні панелі, навігація, метадані, ескізи, сторінки та ін.), Але це чудовий початок!</p><p>Давайте продовжимо далі і подивимось, як ми можемо покращити це.</p><h2><span id="functionphp">function.php</span></h2><hr/><p><em>Функції.php</em> не є строго необхідним файлом, але він надає стільки переваг, що 99,99% тем мають його. В <em>function.php</em> ви можете використовувати вбудовану функцію теми WordPress, а також додати власний спеціальний код PHP.</p><p>Створити <em>function.php</em> у вашій папці тем зараз, оскільки ми додамо до неї код у наступних розділах.</p><h3><span id="i-3">Додавання меню навігації</span></h3><p>Більшість, якщо не всі веб-сайти використовують меню навігації, але на сьогодні наша тема не підтримує. Щоб сказати WordPress, що наша тема має меню навігації, ми повинні зареєструвати її <em>function.php</em> подобається це:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">register_nav_menus (масив ( 'menu-1' => __ ('Основне меню', 'моя спеціальна тема'), ); </pre><p><strong>Примітка:</strong> <em>register_nav_menus ()</em> приймає масив, щоб ви могли зареєструвати більше одного меню, якщо потрібно.</p><p>WordPress тепер знає про наше меню, але нам ще потрібно вивести його в нашій темі. Ми робимо це, додаючи наступний код під описом сайту в <em>index.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">wp_nav_menu (масив ( 'topic_location' => 'меню-1', )); </pre><p>Тепер у нас є (без стилю) меню навігації:</p><p><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20750%20272'%3E%3C/svg%3E" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17328 size-large" data-tf-src="/images/wordpress-theme-development-101-4.jpg" alt="тема для початківців з меню nav" width="750" height="272" data-lazy-src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"/><noscript><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17328 size-large" data-tf-src="/images/wordpress-theme-development-101-4.jpg" alt="тема для початківців з меню nav" width="750" height="272"/></noscript><noscript><img class="shadow-2 aligncenter wp-image-17328 size-large" data-tf-not-load src="/images/wordpress-theme-development-101-4.jpg" alt="тема для початківців з меню nav" width="750" height="272"/></noscript></p><h3><span id="i-4">Додавання бічної панелі</span></h3><p>У нашої теми також немає бічної панелі (віджета), давайте виправити це зараз.</p><p>Спочатку нам потрібно зареєструвати бічну панель в <em>function.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">функція my_custom_theme_sidebar () { register_sidebar (масив ( 'name' => __ ('Основна бічна панель', 'моя спеціальна тема'), 'id' => 'бічна панель-1', )); } добавлення ('widgets_init', 'my_custom_theme_sidebar'); </pre><p>Тепер створіть <em>sidebar.php</em> у папці тем і додайте наступний код:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php if ( is_active_sidebar( 'sidebar-1' ) ) { ?> <ul class="sidebar"> <?php dynamic_sidebar('sidebar-1' ); ?> </ul> <?php } ?> </pre><p>Тут ми використовуємо ан <em>якщо</em> , щоб перевірити, чи бічна панель “активна”, перш ніж ми виведемо код. Активна бічна панель – це та, до якої користувач додав принаймні один віджет.</p><p>Останній крок – включити бічну панель<em> index.php</em>, вище <em>wp_footer ()</em> додати а <em>get_sidebar ()</em> дзвінок.</p><h3><span id="i-5">Додавання обраних зображень</span></h3><p>Як і бічні панелі та меню навігації, ми не можемо просто виводити пропоновані зображення в нашій темі і очікувати, що вони спрацюють, ми повинні сказати WordPress, що ми спочатку підтримуємо цю функцію. В <em>function.php</em> додати:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">add_theme_support ('пост-ескізи');</pre><p>Тепер ми можемо додати<em>_post_thumbnail ();</em> всередині нашого циклу і мініатюри будуть працювати. Єдина проблема полягає в тому, що вони будуть виводити на максимальний розмір WordPress 1920px x 2560px, що є занадто великим для більшості застосувань. На щастя, WordPress має ще одну функцію помічника: <em>add_image_size ()</em>;</p><p>Коли користувач завантажує зображення та визначає розмір зображення, WordPress генерує версію завантаженого зображення у такому розмірі (зберігаючи оригінал). Якщо зображення користувача менше розмірів, які ви встановили, WordPress нічого не зробить, оскільки не може зробити зображення більшим за оригінальне.</p><p>Щоб використовувати оптимізоване зображення функції, а не оригінал, помістіть наступний код у <em>function.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">add_image_size ('my-custom-image-size', 640, 999);</pre><p>Перший параметр – ручка, другий – ширина зображення, а третій – висота. І висота, і ширина необов’язкові, якщо ви хочете обмежити лише один вимір.</p><p>В <em>index.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">the_post_thumbnail ('мій звичайний образ-розмір');</pre><h3><span id="i-6">Запитання стилів та сценаріїв</span></h3><p>Раніше ми заявляли, що краще стилі та сценарії, а не жорстке кодування їх безпосередньо у файли шаблонів. Це тому, що завоювання дозволяє значно більше гнучкості.</p><p>Коли все зроблено правильно, підмикання також повідомляє WordPress, які ресурси завантажуються. Коли WordPress знає, які ресурси потрібні, він може переконатися, що той самий ресурс завантажується не один раз. Це особливо важливо, коли у вас є надзвичайно популярна бібліотека, наприклад jQuery або FontAwesome, яка використовуватиме декілька тем і плагінів..</p><p>Ще одна перевага замикання полягає в тому, що доданий ресурс може бути вилучений плагіном, уникаючи необхідності змінювати файли шаблонів..</p><p>Хоча наша тема має <em>style.css</em> файл ще не використовується, давайте підпишемося зараз:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">функція my_custom_theme_enqueue () { wp_enqueue_style ('моя-спеціальна тема', get_stylesheet_uri ()); } добавлення ('wp_enqueue_scripts', 'my_custom_theme_enqueue'); </pre><p><a href="https://developer.wordpress.org/reference/functions/get_stylesheet_uri/" data-wpel-link="external" rel="external noopener noreferrer"><code>get_stylesheet_uri ()</code></a> – це допоміжна функція, яка отримує URI поточної таблиці стилів теми. Якби ми запитували будь-який інший файл, нам потрібно було б це зробити:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">wp_enqueue_style ('my-stylesheet', get_template_directory_uri (). '/css/style.css'); </pre><p>У нашої теми немає сценаріїв, якщо б це було, ми би завели їх таким чином:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">функція my_custom_theme_enqueue () { wp_enqueue_style ('моя-спеціальна тема', get_stylesheet_uri ()); wp_enqueue_script ('мій-скрипт', get_template_directory_uri (). '/js/scripts.js'); } добавлення ('wp_enqueue_scripts', 'my_custom_theme_enqueue');</pre><p>Виняток із вищезазначеного – сценарії, які були <a href="https://developer.wordpress.org/reference/functions/wp_enqueue_script/#default-scripts-and-js-libraries-included-and-registered-by-wordpress" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">попередньо зареєстрований </a>від WordPress, у цих випадках вам потрібно лише надати перший параметр ($ handle):</p><p><code class="EnlighterJSRAW" data-enlighter-language="php">wp_enqueue_script ('jquery');</code></p><p><strong>Додавання стилю за допомогою CSS</strong></p><p data-enlighter-language="php">Наша тема має міцні основи, але їй не вистачає будь-якого дизайну, додавання деяких базових CSS до style.css призведе до величезної зміни. Ми додали <a href="https://github.com/DannyCooper/my-custom-theme/blob/master/style.css" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">~ 100 рядків CSS </a>до нашої вибіркової теми як демонстрація, а результат виглядає приблизно так:</p><p data-enlighter-language="php"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20750%20430'%3E%3C/svg%3E" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17329 size-large" data-tf-src="/images/wordpress-theme-development-101-5.jpg" alt="тема для початківців з css" width="750" height="430" data-lazy-src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"/><noscript><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" decoding="async" data-lazy="1" class="shadow-2 aligncenter wp-image-17329 size-large" data-tf-src="/images/wordpress-theme-development-101-5.jpg" alt="тема для початківців з css" width="750" height="430"/></noscript><noscript><img class="shadow-2 aligncenter wp-image-17329 size-large" data-tf-not-load src="/images/wordpress-theme-development-101-5.jpg" alt="тема для початківців з css" width="750" height="430"/></noscript></p><h3><span id="i-7">Тег заголовка</span></h3><p>Усі теми повинні використовувати вбудовану функцію WordPress для створення тегу заголовка, що вмикається додаванням цього коду до вашого <em>function.php</em> файл: <code>add_theme_support ('тег заголовка');</code> Все, що там є, WordPress буде обробляти висновок сторінки<em><title></em> і за потреби плагіни можуть змінювати вихід за допомогою фільтрів. SEO-плагіни часто роблять це, намагаючись додатково оптимізувати заголовки.</p><h2><span id="i-8">Частини шаблону</span></h2><hr/><p>Зараз 80% коду нашого шаблону є <em>index.php</em>. Хоча це працює, це матиме багато повторення коду, коли у нас є інші файли шаблонів, такі як <em>singular.php</em>, <em>search.php</em>, і <em>archive.php</em>. Частини шаблону полегшують розробку тем, дозволяючи нам повторно використовувати код у шаблонах. Оскільки наш заголовок і колонтитул будуть однаковими на кожній сторінці, вони є ідеальним кандидатом для використання частин шаблону. Спочатку створіть header.php та перенесіть із цього коду наступний код <em>index.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><!DOCTYPE html> <html <?php language_attributes(); ?>> <head> <meta charset="<?php bloginfo( 'charset' ); ?>"> <meta name="viewport" content="width=device-width, initial-scale=1"> <link rel="profile" href="<http://gmpg.org/xfn/11>"> <?php wp_head(); ?> </head> <header class="site-header"> <p class="site-title"> <a href="<?php echo esc_url( home_url( '/' ) ); ?" data-wpel-link="internal">"> <?php bloginfo( 'name' ); ?> </a> </p> <p class="site-description"><?php bloginfo( 'description' ); ?></p> <?php wp_nav_menu( array( 'theme_location' => 'меню-1', )); ?> </header> </pre><p>В <em>index.php</em> замініть вищевказаний код на:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php get_template_part( 'header' ); ?> </pre><p><strong>Примітка:</strong> Отримуючи частину шаблону, потрібно пропустити <em>.php</em> від ручки частини шаблону.</p><p>Далі створіть частину шаблону колонтитула, перемістивши цей код до<em> footer.php</em> і повторення вищевказаного процесу:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php wp_footer(); ?> <script src="https://12barclub.com/wp-content/cache/min/1/b6f55790f252056d7d2225859bf501aa.js" data-minify="1" defer></script><noscript><link rel="stylesheet" href="https://12barclub.com/wp-content/cache/min/1/6ec48eb33aab6d70e2d3de501edafb41.css" data-minify="1" /></noscript></body> </html> </pre><p>Нарешті, ми перемістимо код “без результатів” до частини шаблону, оскільки він, ймовірно, буде використовуватися в декількох шаблонах. Створіть<em> content-none.php</em> і перемістіть цей код у новий файл.</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><article class="no-results"> <header class="entry-header"> <h1 class="page-title"><?php esc_html_e( 'Nothing Found', 'my-custom-theme' ); ?></h1> </header> <div class="entry-content"> <p><?php esc_html_e( 'It looks like nothing was found at this location.', 'my-custom-theme' ); ?></p> </div> </article> </pre><p>Тепер ваш індекс повинен виглядати так:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php get_template_part( 'header' ); ?> <div class="site-content"> <?php if ( have_posts() ) : while ( have_posts() ) : the_post(); ?> <article <?php post_class(); ?>> <?php the_post_thumbnail(); ?> <header class="entry-header"> <?php the_title( '<h1 class="entry-title"><span id="i-9">','</span></h1>'); ?> </header> <div class="entry-content"> <?php the_content( esc_html__( 'Continue reading →', 'my-custom-theme' ) ); ?> </div> </article> <?php // If comments are open or we have at least one comment, load up the comment template. if ( comments_open() || get_comments_number() ) : comments_template(); endif; endwhile; else : get_template_part( 'content-none' ); endif; ?> </div> <?php get_sidebar(); get_template_part( 'footer' ); </pre><p>Хоча вищезазначене буде працювати ідеально, ми можемо зробити невелике покращення. WordPress має допоміжні функції, включаючи частини шаблону заголовка, колонтитула та бічної панелі. Оскільки найкраща практика використовувати основні функції, де це можливо, ми повинні використовувати їх замість них.</p><p>Замініть <code>get_template_part ('header');</code> з <code>get_header ();</code> і <code>get_template_part ('колонтитул');</code> з <code>get_footer ();</code></p><h2><span id="i-10">Зміст</span></h2><hr/><p>Основа, яку ми виконали з частинами шаблону, буде виплачувати дивіденди, оскільки ми додамо нові файли шаблонів до нашої теми. Нижче ми перерахували найпоширеніші. Щоб не перевантажувати вас прикладами коду, ми натомість зв'язали вихідний код у Github.</p><h3><span id="singularphp">singular.php</span></h3><p>Повідомлення та Сторінки, якщо вони відображаються у власних URL-адресах, вважаються "сингулярними", оскільки більшість часу макет буде однаковим для обох цих типів сторінок. Але якщо це не так, ви можете використовувати більш конкретні <em>page.php</em> і <em>Single.php</em> (повідомлення) натомість.</p><p><a href="https://github.com/DannyCooper/my-custom-theme/blob/master/singular.php" data-wpel-link="external" rel="external noopener noreferrer">Приклад коду - singular.php</a></p><h3><span id="archivephp">archive.php</span></h3><p>Шаблони архівів зазвичай відрізняються від шаблонів сингулярних двох способів: вони показують фрагменти, а не повний вміст і містять заголовок архіву, що пояснює вміст.</p><p>Поверніться до ієрархії шаблонів, і ви побачите, що шаблон архіву охоплює всі типи архівів (автор, категорія, тег, таксономія, дата), якщо це не працює для вашого використання, якщо ви все одно можете використовувати більш конкретні шаблони:</p><ul><li>author.php</li><li>категорія.php</li><li>tag.php</li><li>таксономія.php</li><li>date.php</li></ul><p><a href="https://github.com/DannyCooper/my-custom-theme/blob/master/archive.php" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Приклад коду - archive.php</a></p><h3><span id="searchphp">search.php</span></h3><p>На веб-сайтах WordPress можна шукати, наприклад, за допомогою параметра? S = URL, <code>yourwebsite.com?s=test</code>. The <em>search.php</em> шаблон виводить результати цих пошуків.</p><p><a href="https://github.com/DannyCooper/my-custom-theme/blob/master/search.php" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Приклад коду - search.php</a></p><h3><span id="404php">404.php</span></h3><p>Інше твердження, яке ми додали в index.php, виявляє помилки "сторінка не знайдена", але ви, можливо, захочете розв'язати цю функціональність у власному файлі шаблону, щоб мати більше контролю над результатами. Це випадок використання <em>404.php</em> файл шаблону.</p><p><a href="https://github.com/DannyCooper/my-custom-theme/blob/master/404.php" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Приклад коду - 404.php</a></p><h2><span id="i-11">Допоміжні файли</span></h2><hr/><p>Якщо ви поширюєте свою тему для публіки, наступні файли є обов'язковими. Без цього ваша тема буде відхилена із сховищ тем та ринків.</p><h3><span id="screenshotpng">screenshot.png</span></h3><p>Знімок екрана відображається у списку тем wp-admin, коли користувач вибирає нову тему. Ось кілька найкращих практик, яких слід дотримуватися:</p><ul><li>Знімки екрана повинні бути 1200px x 900px</li><li>Знімки екрана повинні бути у форматі .png або .jpg</li><li>Знімки екрана повинні бути точним поданням теми</li><li>Знімки екрана повинні бути оптимізовані (використовувати <a href="http://tinypng.com" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">tinypng.com</a> або подібне)</li></ul><h3><span id="readmetxt">readme.txt</span></h3><p>WordPress не використовує жодної інформації з <em>readme.txt</em>, він тягне все, що потрібно <em>style.css</em>. З іншого боку, каталог тем WordPress витягує важливу інформацію з файлу readme і вважає її необхідним файлом.</p><p>Більшість розробників використовують <em>readme.txt</em> як центральне місце для зберігання всієї інформації про їх тему. Простий <em>readme.txt</em> виглядає так:</p><pre class="EnlighterJSRAW" data-enlighter-language="css">=== Назва теми === Потрібно принаймні: 5,0 Перевірено до: 5.2 Потрібна PHP: 5.6 Ліцензія: GPLv2 або новішої версії URI ліцензії: <http://www.gnu.org/licenses/gpl-2.0.html> Короткий опис. Не більше 150 символів. == Опис == Тема опис. == Changelog == = 1,0 = * Додана нова опція == Ресурси == * normalize.css <http://necolas.github.io/normalize.css/>, (C) 2012-2016 Ніколя Галлахер та Джонатан Ніл, [MIT] (<http://opensource.org/licenses/MIT>) </pre><ul><li><strong>Потрібно хоча б</strong> - Це мінімальна версія WordPress, з якою сумісна ваша тема.</li><li><strong>Перевірено до</strong> - Це поле позначає найновішу версію WordPress, з якою ваша тема була протестована.</li><li><strong>Потрібен PHP</strong> - Це поле позначає мінімальну версію PHP, на якій буде працювати ваша тема.</li><li><strong>Опис</strong> - Це поле опису наразі ніде не відображається.</li><li><strong>Журнал змін</strong> - Журнал змін не використовується ніде, але розробники та деякі користувачі посилаються на цей файл, щоб побачити, які зміни були внесені.</li><li><strong>Ресурси</strong> - Більшість сторонніх ресурсів потребують певної атрибуції. Розділ ресурсів - це загальноприйняте місце для їх розміщення. Навіть для ресурсів, які явно не потребують атрибуції, все-таки є хорошою практикою перелічити їх тут, щоб користувачі знали про ліцензії ресурсів, які вони використовують..</li></ul><h2><span id="i-12">Шаблони сторінок</span></h2><hr/><p>Шаблони сторінок дозволяють розробникам створювати власні шаблони, які можна використовувати для окремих публікацій та сторінок. Наприклад, більшість тем має розкладку з двома стовпцями (контент - бічна панель), але на деяких сторінках користувач може просто зосередитись на вмісті, а не показати бічну панель. Тут може допомогти шаблон сторінки.</p><p><strong>Як створюються шаблони сторінок?</strong></p><p>У нашій папці з темами створіть нову папку з назвою "Шаблони сторінок" і в цій папці створіть файл з назвою <em>одноколонний.php</em>. Щоб пришвидшити роботу, скопіюйте весь код з <em>singular.php</em> до <em>page-templates / single-column.php</em> і видаліть виклик до <em>get_sidebar ()</em> оскільки цей шаблон цього не знадобиться.</p><p>Тепер нам потрібно додати спеціальний заголовок, який повідомляє WordPress, що це шаблон сторінки, він виглядає приблизно так:</p><pre class="EnlighterJSRAW" data-enlighter-language="css">/ * Назва шаблону: Один шаблон стовпця Тип повідомлення шаблону: повідомлення, сторінка * / </pre><p>Код не пояснює, ми просто повідомляємо WordPress назву шаблону та типи публікацій, якими він може бути використаний.</p><p>Все, що там є, наш новий шаблон сторінки тепер доступний у редакторі під назвою "Атрибути сторінки".</p><p><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20750%20643'%3E%3C/svg%3E" decoding="async" data-lazy="1" class=" shadow-2 aligncenter wp-image-17345" data-tf-src="/images/wordpress-theme-development-101-6.jpg" alt="спадний шаблон сторінки" width="750" height="643" data-lazy-src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7"/><noscript><img src="data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7" decoding="async" data-lazy="1" class=" shadow-2 aligncenter wp-image-17345" data-tf-src="/images/wordpress-theme-development-101-6.jpg" alt="спадний шаблон сторінки" width="750" height="643"/></noscript><noscript><img class=" shadow-2 aligncenter wp-image-17345" data-tf-not-load src="/images/wordpress-theme-development-101-6.jpg" alt="спадний шаблон сторінки" width="750" height="643"/></noscript></p><h2><span id="RTLcss">RTL.css</span></h2><hr/><p>Не всі мови читаються зліва направо. Наприклад, арабська та іврит читаються справа наліво (RTL). Існує простий спосіб зробити свою тему сумісною з мовами RTL.</p><p>Створіть новий файл у папці тем під назвою <em>rtl.css</em>, потім скопіюйте та вставте наступний код:</p><pre class="EnlighterJSRAW" data-enlighter-language="css">корпус { напрям: rtl; unicode-bidi: вставляти; } </pre><p>Якщо мова RTL є активною мовою на веб-сайті WordPress, WordPress знає автоматично завантажувати цей CSS-файл.</p><p>Це дуже основна реалізація функціоналу RTL для початку роботи. Якщо вам цікаво дізнатися більше, ось два фантастичні ресурси:</p><p><a href="https://codex.wordpress.org/Right_to_Left_Language_Support" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Право на ліву підтримку мовної документації</a></p><p><a href="https://github.com/WordPress/WordPress/blob/master/wp-content/themes/twentytwelve/rtl.css" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Двадцять двадцять код RTL</a></p><h2><span id="i-13">Кращі практики</span></h2><hr/><p>З часом розвиваються кращі практики, щоб спростити створення та підтримку тем WordPress. Не лише дотримання цих принципів допоможе вам, але й спростить інших розробників, коли їм потрібно працювати з вашим кодом.</p><h3><span id="1">1) Використовуйте теми для початківців</span></h3><p>Теми для початківців дають вам міцну базу для побудови теми. Зазвичай вони легкі, не містять стилів, які не мають ніяких варіантів конфігурації. З часом ви можете створити власну початкову тему, на якій ви можете базувати всі свої проекти, але наразі ось кілька популярних варіантів:</p><ul><li><a href="https://underscores.me/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Підкреслити</a></li><li><a href="https://wordpress.org/themes/scaffold/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Ліси</a></li><li><a href="https://github.com/html5blank/html5blank" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">HTML5 пустий</a></li></ul><h3><span id="2___WordPress">2) Ознайомтесь зі стандартами кодування WordPress</span></h3><p>Стандарти кодування - це спосіб послідовного форматування коду у всій базі коду. WordPress має стандарти кодування для HTML, CSS, Javascript та PHP. Хоча використання стандарту кодування не впливає на досвід кінцевого користувача, це робить ваш код набагато більш читабельним. Навіть якщо ви не використовуєте стандарти кодування WordPress, ми завжди радимо використовувати стандарт.</p><ul><li><a href="https://make.wordpress.org/core/handbook/best-practices/coding-standards/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Стандарти кодування WordPress.org</a></li><li><a href="https://github.com/WordPress/WordPress-Coding-Standards" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">WPCS</a></li><li><a href="https://www.php-fig.org/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Стандарти кодування PHP</a></li></ul><h3><span id="3">3) Використовуйте Локалізацію</span></h3><p>Завдяки наполегливій роботі волонтерів WordPress доступний сотнями мов. Якщо ваша тема буде опублікована публічно, її потрібно побудувати таким чином, щоб вона також могла бути перекладена.</p><p>Не хвилюйтесь, це зробити дуже просто. Все, що нам потрібно зробити, це переконатися, що всі рядки передаються через "функцію локалізації", а не безпосередньо виводяться.</p><p>Замість цього:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php echo 'Previous Post'; ?></pre><p>Ми робимо це замість цього:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><?php echo __( 'Previous Post', 'my-custom-theme' ); ?></pre><p><a href="https://developer.wordpress.org/reference/functions/__/" data-wpel-link="external" rel="external noopener noreferrer">__ ()</a> - це функція локалізації, яка приймає рядок і текстовий домен. Функція повертає переклад наданої рядки або оригінальну рядок, якщо переклад недоступний.</p><h3><span id="4">4) Уникайте функціональності плагіна</span></h3><p>Коли користувач змінює тему, повинен змінюватися лише рівень презентації. Зміст та функціональність повинні залишатися здебільшого однаковими. Це означає, що будь-яка функція, яка впливає на те, як ролі WordPress повинні міститися в плагіні, а не ваша тема. Деякі приклади функціональності плагінів включають:</p><ul><li>Спеціальні типи публікацій</li><li>Сторінки</li><li>Обмін соціальними медіа</li><li>Оптимізація пошукових систем (SEO)</li></ul><p>Хоча це може здатися зручним (і, можливо, точкою продажу) включати елементи керування SEO в тему, це насправді шкодить користувачеві в довгостроковій перспективі. Надалі їм потрібно буде змінити тему, але не можуть, оскільки всі їх конфігурації SEO тісно пов'язані з поточною темою. Навпаки, якщо конфігурації зберігалися у плагіні, вони могли змінювати тему, не хвилюючись.</p><h3><span id="5">5) Префіксація (запобігання конфліктів)</span></h3><p>Щоб запобігти конфліктам, всі функції, класи та глобальні змінні, створені вашою темою, повинні бути префіксними. Це важливо, оскільки неможливо дізнатися, який інший код працює на веб-сайті вашого користувача. Префіксація запобігає зіткненням імен та фатальним помилкам.</p><p>Ім'я вашої теми, розділене тире або підкреслення, буде працювати як префікс більшу частину часу. Якщо назва теми дуже довга, замість неї можуть працювати ініціали.</p><pre class="EnlighterJSRAW" data-enlighter-language="php">Назва теми: Ліси клас Scaffold_Class {} функція scaffold_function () {} глобальний $ scaffold_global Назва теми: Моє довге ім’я теми клас MLTN_Class {} функція mltn_function () {} глобальний $ mltn_global </pre><h3><span id="6">6) Використовуйте основні функціональні можливості</span></h3><p>Там, де він існує, ви завжди повинні використовувати основні функціональні можливості, а не винаходити колесо. Це включає, але не обмежується ними бічні панелі, меню навігації, мініатюри публікацій, власні заголовки та власні фони. Мільйони користувачів ці функції пройшли тестування в бою і активно підтримуються та вдосконалюються.</p><p>Якщо вам потрібно змінити функціональність або вихід основної функції, то можна скористатися одним із безлічі гачків і фільтрів, які пропонує WordPress. Наприклад <code>wp_nav_menu ()</code> має параметр «ходок», щоб ви мали повний контроль над результатами.</p><h3><span id="7">7) Уникнення та дезінфекція даних</span></h3><p>Як розробник тем, ви повинні ознайомитись із уникненням та санітарією даних, щоб захистити своїх користувачів від потенційних подвигів.</p><p><strong>Втеча</strong></p><p>Уникнення - це процес перевірки даних безпечний перед його виведенням, а санітарна перевірка - це перевірка даних перед збереженням у базі даних.</p><p>У WordPress є допоміжні функції, які ви можете використовувати для отримання даних, тому вам не потрібно створювати їх самостійно. <em>esc_html</em> є одним із прикладів функції, що проходить. Ось як виглядає необмежений вихід:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><code>echo get_theme_mod ('error_page_title');</code></pre><p>Щоб уникнути результату, ми робимо це:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><code>echo esc_html (get_theme_mod ('error_page_title'));</code></pre><p>Деякі інші функції втечі, про які слід пам’ятати, є <a href="https://developer.wordpress.org/reference/functions/esc_attr/" data-wpel-link="external" rel="external noopener noreferrer">esc_attr ()</a>, <a href="https://developer.wordpress.org/reference/functions/absint/" data-wpel-link="external" rel="external noopener noreferrer">абсент ()</a>, <a href="https://developer.wordpress.org/reference/functions/esc_url/" data-wpel-link="external" rel="external noopener noreferrer">esc_url ()</a>.</p><p>Також можна перекласти рядок і вийти з нього за допомогою однієї функції:</p><pre class="EnlighterJSRAW" data-enlighter-language="php"><code>echo esc_html (__ ('404 не знайдено', 'my-custom-тема'));</code></pre><p>Стає:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">echo esc_html __ ('404 не знайдено', 'моя спеціальна тема'); // або esc_html_e ('404 Not Found', 'my-custom-тема'); </pre><p><strong>Порада:</strong> В будь-якій точці вашої теми, де у вас є <code>ехо $</code> Ви повинні перевірити, чи потрібно його втекти, як правило, так.</p><p><strong>Санітизація</strong></p><p>Якщо ви додасте налаштування до своєї теми, вам потрібно переконатися, що дані, які користувачі вводять у ці налаштування, є безпечними ще до того, як вони потраплять у базу даних. WordPress має <a href="https://developer.wordpress.org/themes/theme-security/data-sanitization-escaping/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">кількість функцій</a> допомогти з дезінфекцією введення.</p><p>Коли ви додаєте налаштування до своєї теми за допомогою API інтерфейсу, він має параметр для "<em>sanitize_callback</em>', Яка приймає назву функції санітарії. Будь-який вхід, який приймає налаштування, перевіряється функцією, яку ви надаєте "<em>sanitize_callback</em>'До того, як він ввійде до бази даних.</p><p>Це підкреслює важливість санітарної обробки, якщо навіть в одному з ваших параметрів немає <em>sanitize_callback</em> його не буде прийнято до каталогу тем WordPress.</p><pre class="EnlighterJSRAW" data-enlighter-language="php">$ wp_customize-> add_setting ( 'my_custom_theme_setting', масив ( 'sanitize_callback' => 'sanitize_text_field' // Основна функція санітарії. ) ); </pre><p>Офіційний перелік санітарно-гігієнічних функцій можна переглянути тут: <a href="https://developer.wordpress.org/themes/theme-security/data-sanitization-escaping/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Санітація / уникнення даних</a></p><h2><span id="i-14">Канали розповсюдження</span></h2><hr/><p>Теми можуть поширюватися по різних каналах залежно від результату, який ви хочете досягти. Якщо ваш результат полягає в тому, щоб просто внести свій внесок у спільноту з відкритим кодом, тоді немає кращого способу зробити це, ніж завантажувати свою тему в каталог WordPress. Якщо замість цього ви хочете продати свою тему та заробляти гроші безпосередньо, є й такі способи.</p><p>Ось провідні веб-сайти для розповсюдження тем:</p><h3><span id="1_WordPressorg"><strong>1) WordPress.org (найкраще місце для завантаження та користувачів)</strong></span></h3><p>Основна перевага розміщення вашої теми в WordPress полягає в тому, що ви отримуєте підвищення видимості від своєї теми, яку ви бачите не тільки на веб-сайті wordpress.org, але і на <em>wp-admin</em> панель приладів.</p><p>Ще одна перевага розміщення вашої теми в WordPress - це вбудована система оновлення. Якщо ви оновите свою тему, всі користувачі отримуватимуть сповіщення всередині своєї <em>wp-admin</em> інформаційні панелі та простий шлях до оновлення до останньої версії.</p><p>WordPress.org приймає лише безкоштовні теми, але це не означає, що ви не можете заробляти гроші. Безкоштовна тема може стати чудовим каналом для просування вашої преміум теми, плагіна чи послуги.</p><h3><span id="2_WordPresscom"><strong>2) WordPress.com</strong></span></h3><p>WordPress.com розміщує як безкоштовні, так і преміальні теми. Однак вони вже кілька років не відкриті для нових авторів.</p><h3><span id="3_Forest"><strong>3) ТемаForest</strong></span></h3><p><a href="http://themeforest.net/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">ТемаForest</a> є провідним місцем для преміальних тем. Найпопулярніша тема (Avada) має продажі понад 5 000 000 доларів.</p><p>Взагалі, покупці на Theme Forest очікують повнофункціональних «багатоцільових» тем. Усі найпопулярніші теми мають функціонал для створення сторінок і підтримуються командами розробників. Це дуже важкий ринок для нових авторів.</p><h3><span id="4_Creative_Market_Mojo_Marketplace"><strong>4) Creative Market та Mojo Marketplace</strong></span></h3><p><a href="https://creativemarket.com/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Творчий ринок</a> І <a href="https://www.mojomarketplace.com/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Ринок Mojo</a> є маленькими гравцями на ринку преміальних тем, тому ми згрупували їх. Вони ефективно пропонують ту саму послугу, що і ThemeForest, але в меншому масштабі.</p><h3><span id="5-2"><strong>5) Гітуб</strong></span></h3><p><a href="https://github.com" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Гітуб</a> це найпростіший спосіб оприлюднити безкоштовну тему. Немає жодного процесу перевірки та жодних вказівок, яких слід дотримуватися. Однак ви не отримаєте користі від видимості wordpress.org і вам потрібно буде створити власний механізм оновлення, щоб користувачі могли отримати останні версії.</p><h2><span id="i-15">Збираємо це все разом</span></h2><hr/><h3><span id="1-2"><strong>1) Тестування вашої теми</strong></span></h3><p><strong>Тестовий блок Тест</strong></p><p>The <a href="https://codex.wordpress.org/Theme_Unit_Test" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Тестовий блок Тест</a> - це стандартний файл імпорту вмісту WordPress, який містить широкий спектр типів вмісту та кращі регістри. Завантажити його у ваше середовище розробки легко та виділить безліч сценаріїв, які ви, можливо, не помітили.</p><p><strong>WP_DEBUG</strong></p><p>Як розробник тем, тестуйте свою тему <a href="https://wordpress.org/support/article/debugging-in-wordpress/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">WP_DEBUG</a> включений - це мінімальний мінімум, який ви повинні робити. Якщо для WP_DEBUG встановлено значення true, ваша тема не повинна повертати жодних помилок або попереджень.</p><p>Також важливо повторити тест з різними версіями PHP, які підтримує ваша тема. З кожним головним випуском PHP з'являються нові зміни, попередження та амортизація. Не рідкість тема не містить помилок на PHP5.6, але показує помилки на PHP7.</p><p>Щоб увімкнути WP_DEBUG, додайте наступний код до <em>wp-config.php</em>:</p><pre class="EnlighterJSRAW" data-enlighter-language="php">DEFINE ('WP_DEBUG', правда); </pre><p><strong>Monster Widget</strong></p><p><a href="https://wordpress.org/plugins/monster-widget/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Monster Widget</a> - це корисний плагін, який дозволяє додавати 13 основних віджетів на бічну панель одночасно. Основні віджети використовують різноманітні елементи HTML, що робить їх ідеальними для тестування вашої теми.</p><p><strong>Тематичний снайпер</strong></p><p>The <a href="https://wordpress.org/plugins/theme-sniffer/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Тематичний снайпер</a> - плагін, створений Командою з перегляду тем (TRT). Він вловлює багато (але не всі) помилок втечі та локалізації. Він також перевіряє вашу тему на відповідність стандартам кодування WordPress.</p><h3><span id="2___WordPressorg"><strong>2) Подання вашої теми на WordPress.org</strong></span></h3><p>На початку цього посібника ми говорили, що до того моменту, коли ви досягнете кінця, у вас буде тема, яку ви можете подати на wordpress.org. Давайте розглянемо цей процес.</p><p><strong>Процес завантаження</strong></p><p>Процес завантаження простий. Створіть або увійдіть у свій обліковий запис WordPress та перейдіть на цю сторінку - <a href="https://wordpress.org/themes/upload/" target="_blank" rel="noreferrer noopener external" data-wpel-link="external">https://wordpress.org/themes/upload/</a></p><p>Ви можете застебнути свою тему і завантажити її прямо зараз, але ось деякі речі, які ви, можливо, захочете дізнатись спочатку.</p><p><strong>Вимоги</strong></p><p>Команда з перегляду тем (TRT) має суворий набір <a href="https://make.wordpress.org/themes/handbook/review/required/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">вимоги</a>. Ваша тема не буде прийнята до каталогу, поки вона не зустрінеться <strong>всі</strong> вимоги.</p><p><strong>Процес огляду</strong></p><p>Коли ви завантажуєте тему, існує процес двоетапного перегляду, який повинен пройти, перш ніж її можна буде прийняти в каталог.</p><p>По-перше, автоматична перевірка виконується, як тільки ви натискаєте <em>Завантажити</em>. За лаштунками автоматизована перевірка працює дуже подібним чином до плагіна Theme Sniffer. Якщо він виявить якісь помилки, він відкине тему і процес завантаження закінчується там.</p><p>Якщо ваша тема проходить автоматизовану перевірку, вона приєднується до черги тем, які чекають на огляд людини. Огляд людини завершують волонтери з ТРТ. Кількість тем у черзі набагато перевищує кількість рецензентів, а це означає, що часто може знадобитися 2-3 місяці, щоб ваша тема досягла передньої частини черги.</p><p>Обов'язково, щоб ваша тема була без помилок і відповідала всім вимогам до того часу, як вона перейде до етапу огляду людини, так як якщо б у неї було більше 3 істотних помилок, її можна буде відхилити. Якщо тему відхилено на етапі огляду людини, вона повинна знову приєднатися до черги ззаду, що означає знову чекати 2-3 місяці на інший огляд людини.</p><p>Корисний ресурс: <a href="https://wptavern.com/the-most-common-wordpress-theme-development-mistakes-and-how-to-fix-them" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">Найпоширеніші помилки розвитку теми WordPress (і як їх виправити)</a></p><p>Варто зазначити, що TRT завжди шукає <a href="https://make.wordpress.org/themes/handbook/get-involved/become-a-reviewer/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">нові рецензенти</a>, волонтерство може бути чудовим досвідом навчання та способом сприяти спільноті з відкритим кодом.</p><h3><span id="3-2"><strong>3) Ваш список тем</strong></span></h3><p>Вітаємо, вашу тему схвалено! Тепер у вас є власний перелік цього <a href="https://wordpress.org/themes/arke/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">виглядає так</a>.</p><p>Ось огляд того, що ви можете очікувати на цій сторінці:</p><ul><li><strong>Знімок екрана -</strong> Скріншот - це перше, що потенційні користувачі бачать, тому зробіть це максимально привабливим. Але пам’ятайте, що це все-таки має бути точно відображення теми, а не візуалізація фотошопу. Візьміть натхнення у <a href="https://wordpress.org/themes/browse/popular/" target="_blank" rel="nofollow noopener noreferrer external" data-wpel-link="external">найпопулярніші теми</a>.</li><li><strong>Опис -</strong> Опис, з якого витягнуто <em>style.css</em> це ідеальне місце для опису вашої теми та її ключових особливостей. Він також допомагає тут перелічити рекомендовані чи потрібні плагіни. Опис не підтримує форматування (жирне, курсивне, гіперпосилання) або навіть розриви рядків.</li><li><strong>Теги -</strong> Це представлення тегів, які ви перерахували <em>style.css</em>. Тільки <a href="https://api.wordpress.org/themes/info/1.1/?action=feature_list" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">ці теги тут</a> приймаються.</li><li><strong>Кнопка попереднього перегляду -</strong> Попередній перегляд генерується wordpress.org, і як розробники тем, ми не контролюємо вихід. На жаль, оскільки попередній переглядач використовує базовий вміст і не має конфігурації, це часто призводить до менш досконалого попереднього перегляду.</li><li><strong>Посилання на головну сторінку теми</strong> - URL-адреса для <em>Попередній перегляд</em> кнопка витягується з поля "URI-тема" у вашому style.css. Існують суворі вимоги, згідно з якими ця URL-адреса повинна використовуватися лише для відображення сторінки із відображенням інформації про вашу тему.</li><li><strong>Активні установки</strong> - Це кількість веб-сайтів, які активно використовують тему. Число округляється до найближчих десяти, сотень чи тисяч. Неможливо отримати точне число.</li><li><strong>Завантаження за день</strong> - Це скільки разів ваша тема була завантажена. "Завантажити" може бути новим завантаженням або оновленням теми.</li><li><strong>Відгуки -</strong> Щоб користувач залишив відгук, він повинен увійти в обліковий запис wordpress.org. Загалом, огляди важко отримати, якщо ви прямо не попросите користувачів надіслати їх.</li><li><strong>Підтримка</strong> - Вбудована платформа підтримки чудово підходить для керування та вирішення проблем із вашою темою. Користувач повинен увійти до системи, щоб створити підтримку.</li><li><strong>Переклади</strong> - Платформа перекладу - це фантастичний ресурс. Якщо ви дотримуєтесь порад у всьому посібнику щодо локалізації вашої теми, то ваші користувачі зможуть перекласти її на інші мови та розширити вашу потенційну базу користувачів, окрім лише англомовних користувачів.</li></ul><h3><span id="4-2">4) Оновлення вашої теми</span></h3><p>Коли в майбутньому ви вносите зміни до своєї теми та потребуєте оновлення версії, розміщеної на WordPress, процес простий.</p><p>Спочатку оновіть поле "Версія:" та введіть журнал змін <em>readme.txt</em>. Потім зафіксуйте файл і повторно завантажте його, використовуючи той самий <a href="https://wordpress.org/themes/upload/" target="_blank" rel="nofollow noreferrer noopener external" data-wpel-link="external">сторінку завантаження</a> як і раніше.</p><p>Система розпізнає його як оновлення та автоматично затвердить його, щоб він не потребував іншого огляду людини.</p> <input type="hidden" value="4672"><div class="uab-frontend-wrapper-outer"><div id="uab_rid_3bdc8" class="uab-frontend-inner-layer uab-frontend-wrapper-author-1 " data-timeout="1000"><div id="uab-frontend-wrapper" class="uab-frontend-wrapper uab-template-1"><div class="uab-tab-content"><div class="uab-defaut-tab uab-clearfix"><div class="uab-author-profile-pic"><div class="uap-profile-image"> <img alt='' src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20200%20200'%3E%3C/svg%3E" data-lazy-srcset='https://12barclub.com/wp-content/plugins/clearfy-pro/assets/images/default-avatar.png 2x' itemprop='image' class='avatar avatar-200 photo' height='200' width='200' data-lazy-src="https://12barclub.com/wp-content/plugins/clearfy-pro/assets/images/default-avatar.png"/><noscript><img alt='' src='https://12barclub.com/wp-content/plugins/clearfy-pro/assets/images/default-avatar.png' srcset='https://12barclub.com/wp-content/plugins/clearfy-pro/assets/images/default-avatar.png 2x' itemprop='image' class='avatar avatar-200 photo' height='200' width='200'/></noscript></div></div><div class="uab-front-content"><div class="uab-display-name"> <a href="https://12barclub.com/author/admin/" target="_blank" data-wpel-link="internal">Jeffrey Wilson</a> <span class="uab-user-role uab-role-Administrator">Administrator</span></div><div class="uab-short-info"> Sorry! The Author has not filled his profile.</div><div class="uab-short-contact"></div><div class="uab-social-icons"> <span class="uab-contact-label">follow me</span><ul id="uap-social-outlets-fields"></ul></div></div></div></div></div></div></div><div class="flat_pm_end"></div><div class="ajax-content" data-id="87" ></div><div id="themify_builder_content-4672" data-postid="4672" class="themify_builder_content themify_builder_content-4672 themify_builder tf_clear tb_generate_css" style="visibility:hidden;opacity:0;"></div></div><div class="post-meta entry-meta"> <span class="post-author"><em>By:</em> <span class="author vcard"><a class="url fn n" href="https://12barclub.com/author/admin/" rel="author" data-wpel-link="internal">Jeffrey Wilson</a></span></span> <span class="post-category"><a href="https://12barclub.com/category/bez-kategorii/" rel="tag" class="term-bez-kategorii" data-wpel-link="internal">Без категорії</a></span></div></div></div><div class="post-nav clearfix"> <span class="prev"><a href="https://12barclub.com/cat-razni/najbolje-fotografije-wordpress-teme-u-2020-godini/" rel="prev" data-wpel-link="internal"><span class="arrow">«</span> Najbolje fotografije WordPress teme u 2020. godini</a></span> <span class="next"><a href="https://12barclub.com/bez-kategorii/sql-shpargalka/" rel="next" data-wpel-link="internal"><span class="arrow">»</span> SQL шпаргалка</a></span></div></main><div id="sidebar" itemscope="itemscope" itemtype="https://schema.org/WPSidebar"><div id="search-4" class="widget widget_search"><form method="get" id="searchform" action="https://12barclub.com/"> <input type="text" name="s" id="s" title="Search" value=""/></form></div><div id="custom_html-4" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><a href="https://www.bluehost.com/blog/9-tips-for-working-in-wordpress/" rel="nofollow external noopener noreferrer" data-wpel-link="external"><img src="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg" decoding="async" width="300" height="151" class="image wp-image-8701 attachment-medium size-medium lazyloaded" alt="" style="max-width: 100%; height: auto;" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27300%27%20height%3D%27151%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" data-was-processed="true" sizes="(max-width: 300px) 100vw, 300px" srcset="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg 300w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-1024x514.jpg 1024w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-768x386.jpg 768w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7.jpg 1047w"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27300%27%20height%3D%27151%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" width="300" height="151" data-tf-src="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg" class="tf_svg_lazy image wp-image-8701 attachment-medium size-medium" alt="" style="max-width: 100%; height: auto;" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg 300w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-1024x514.jpg 1024w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-768x386.jpg 768w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7.jpg 1047w" data-tf-sizes="(max-width: 300px) 100vw, 300px"/></noscript><noscript><img width="300" height="151" data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg" class="image wp-image-8701 attachment-medium size-medium" alt="" style="max-width: 100%; height: auto;" srcset="https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-300x151.jpg 300w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-1024x514.jpg 1024w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7-768x386.jpg 768w, https://12barclub.com/wp-content/uploads/2020/01/screenshot_7.jpg 1047w" sizes="(max-width: 300px) 100vw, 300px"/></noscript></a></div></div><div id="custom_html-3" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><iframe loading="lazy" data-lazy="1" src="about:blank" class="tf_iframe_lazy" width="560" height="315" data-tf-src="https://www.youtube.com/embed/4Rvw-LPIfP8" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen data-rocket-lazyload="fitvidscompatible" data-lazy-src=""></iframe><noscript><iframe loading="lazy" data-lazy="1" src="about:blank" class="tf_iframe_lazy" width="560" height="315" data-tf-src="https://www.youtube.com/embed/4Rvw-LPIfP8" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></noscript></div></div><div id="themify-feature-posts-2" class="widget feature-posts"><h4 class="widgettitle">Recent Posts</h4><ul class="feature-posts-list"><li><a href="https://12barclub.com/planer-och-prissattning/kinsta-terbetalningspolicy-och-pengarna-tillbaka/" data-wpel-link="internal"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-150x150.png 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"/><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-150x150.png 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px"/></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png" width="50" height="50" class="post-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-150x150.png 150w" sizes="(max-width: 50px) 100vw, 50px"/></noscript></a><a href="https://12barclub.com/planer-och-prissattning/kinsta-terbetalningspolicy-och-pengarna-tillbaka/" class="feature-posts-title" data-wpel-link="internal">Kinsta Återbetalningspolicy och pengarna tillbaka-garanti (2020): Hur avbryter du ditt Kinsta WordPress Hosting-konto och får återbetalning?</a> <br/></li><li><a href="https://12barclub.com/planer-och-prissattning/kinsta-plans-comparison-2020-starter-vs-pro-vs/" data-wpel-link="internal"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-150x150.png 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"/><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-150x150.png 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px"/></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png" width="50" height="50" class="post-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" srcset="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-150x150.png 150w" sizes="(max-width: 50px) 100vw, 50px"/></noscript></a><a href="https://12barclub.com/planer-och-prissattning/kinsta-plans-comparison-2020-starter-vs-pro-vs/" class="feature-posts-title" data-wpel-link="internal">Kinsta Plans Comparison 2020 (Starter vs Pro vs Business vs Enterprise): Vilken är den bästa värdplanen?</a> <br/></li><li><a href="https://12barclub.com/cat-recension/hostcats-review/" data-wpel-link="internal"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-150x150.jpg 150w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-200x200.jpg 200w" data-tf-sizes="(max-width: 50px) 100vw, 50px" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"/><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-150x150.jpg 150w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-200x200.jpg 200w" data-tf-sizes="(max-width: 50px) 100vw, 50px"/></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg" width="50" height="50" class="post-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2" srcset="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-150x150.jpg 150w, https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-200x200.jpg 200w" sizes="(max-width: 50px) 100vw, 50px"/></noscript></a><a href="https://12barclub.com/cat-recension/hostcats-review/" class="feature-posts-title" data-wpel-link="internal">HostCats Review</a> <br/></li><li><a href="https://12barclub.com/cat-recension/kualo-review/" data-wpel-link="internal"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/kualo-review-150x150.jpg 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"/><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/kualo-review-150x150.jpg 150w" data-tf-sizes="(max-width: 50px) 100vw, 50px"/></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg" width="50" height="50" class="post-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review" srcset="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-50x50.jpg 50w, https://12barclub.com/wp-content/uploads/2020/06/kualo-review-150x150.jpg 150w" sizes="(max-width: 50px) 100vw, 50px"/></noscript></a><a href="https://12barclub.com/cat-recension/kualo-review/" class="feature-posts-title" data-wpel-link="internal">Kualo Review</a> <br/></li><li><a href="https://12barclub.com/cat-recension/mochahost-granskning/" data-wpel-link="internal"><img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%2050%2050'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-150x150.png 150w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-200x200.png 200w" data-tf-sizes="(max-width: 50px) 100vw, 50px" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"/><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%2750%27%20height%3D%2750%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png" width="50" height="50" class="tf_svg_lazy post-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2" data-tf-srcset="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-150x150.png 150w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-200x200.png 200w" data-tf-sizes="(max-width: 50px) 100vw, 50px"/></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png" width="50" height="50" class="post-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2" srcset="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-50x50.png 50w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-150x150.png 150w, https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-200x200.png 200w" sizes="(max-width: 50px) 100vw, 50px"/></noscript></a><a href="https://12barclub.com/cat-recension/mochahost-granskning/" class="feature-posts-title" data-wpel-link="internal">MochaHost granskning</a> <br/></li></ul></div><div id="custom_html-2" class="widget_text widget widget_custom_html"><div class="textwidget custom-html-widget"><iframe loading="lazy" data-lazy="1" src="about:blank" class="tf_iframe_lazy" width="560" height="315" data-tf-src="https://www.youtube.com/embed/dm6HVjs5_4Q" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen data-rocket-lazyload="fitvidscompatible" data-lazy-src=""></iframe><noscript><iframe loading="lazy" data-lazy="1" src="about:blank" class="tf_iframe_lazy" width="560" height="315" data-tf-src="https://www.youtube.com/embed/dm6HVjs5_4Q" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe></noscript></div></div><div id="zoom-social-icons-widget-2" class="widget zoom-social-icons-widget"><h4 class="widgettitle">Follow us</h4><ul class="zoom-social-icons-list zoom-social-icons-list--with-canvas zoom-social-icons-list--round zoom-social-icons-list--no-labels"><li class="zoom-social_icons-list__item"> <a class="zoom-social_icons-list__link" href="https://www.facebook.com/crazyegganalytics" target="_blank" data-wpel-link="external" rel="external noopener noreferrer"> <span class="screen-reader-text">facebook</span> <span class="zoom-social_icons-list-span social-icon socicon socicon-facebook" data-hover-rule="background-color" data-hover-color="#3b5998" style="background-color : #3b5998; font-size: 18px; padding:8px" ></span> </a></li><li class="zoom-social_icons-list__item"> <a class="zoom-social_icons-list__link" href="https://twitter.com/CrazyEgg" target="_blank" data-wpel-link="external" rel="external noopener noreferrer"> <span class="screen-reader-text">twitter</span> <span class="zoom-social_icons-list-span social-icon socicon socicon-twitter" data-hover-rule="background-color" data-hover-color="#1da1f2" style="background-color : #1da1f2; font-size: 18px; padding:8px" ></span> </a></li><li class="zoom-social_icons-list__item"> <a class="zoom-social_icons-list__link" href="https://www.linkedin.com/company/crazy-egg" target="_blank" data-wpel-link="external" rel="external noopener noreferrer"> <span class="screen-reader-text">linkedin</span> <span class="zoom-social_icons-list-span social-icon socicon socicon-linkedin" data-hover-rule="background-color" data-hover-color="#0077B5" style="background-color : #0077B5; font-size: 18px; padding:8px" ></span> </a></li></ul></div><div class="clearfix"><div class="secondary"></div><div class="secondary last"></div></div></div></div></div><div id="footer-slider" class="slider"><div data-lazy="1" data-auto="0" data-speed="0.5" data-wrapvar="1" data-scroll="1" data-visible="1" data-pager="0" data-space="30" class="slides clearfix swiper-container"><div class="swiper-wrapper tf_lazy"><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/planer-och-prissattning/kinsta-terbetalningspolicy-och-pengarna-tillbaka/" title="Kinsta Återbetalningspolicy och pengarna tillbaka-garanti (2020): Hur avbryter du ditt Kinsta WordPress Hosting-konto och får återbetalning?" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g-220x160.png" width="220" height="160" class="feature-img wp-post-image wp-image-8676" title="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g" alt="kinsta-refund-policy-money-back-guarantee-2020-how-to-cancel-your-kinsta-wordpress-hosting-account-g"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/planer-och-prissattning/kinsta-plans-comparison-2020-starter-vs-pro-vs/" title="Kinsta Plans Comparison 2020 (Starter vs Pro vs Business vs Enterprise): Vilken är den bästa värdplanen?" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/08/kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2-220x160.png" width="220" height="160" class="feature-img wp-post-image wp-image-8677" title="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2" alt="kinsta-plans-comparison-2020-starter-vs-pro-vs-business-vs-enterprise-which-is-the-best-hosting-plan-2"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/cat-recension/hostcats-review/" title="HostCats Review" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/mochahost-review-2-220x160.jpg" width="220" height="160" class="feature-img wp-post-image wp-image-8624" title="mochahost-review-2" alt="mochahost-review-2"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/cat-recension/kualo-review/" title="Kualo Review" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/kualo-review-220x160.jpg" width="220" height="160" class="feature-img wp-post-image wp-image-8640" title="kualo-review" alt="kualo-review"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/cat-recension/mochahost-granskning/" title="MochaHost granskning" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/hostcats-review-2-220x160.png" width="220" height="160" class="feature-img wp-post-image wp-image-8625" title="hostcats-review-2" alt="hostcats-review-2"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/cat-recension/hostgator-granskning/" title="HostGator granskning" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostgator-review-2-1024x558-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8618" title="hostgator-review-2" alt="hostgator-review-2" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/hostgator-review-2-1024x558-220x160.png" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8618" title="hostgator-review-2" alt="hostgator-review-2"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/hostgator-review-2-1024x558-220x160.png" width="220" height="160" class="feature-img wp-post-image wp-image-8618" title="hostgator-review-2" alt="hostgator-review-2"></noscript> </a></div><div class="slide-content-wrap"></div></div><div class="swiper-slide tf_lazy"><div class="slide-feature-image"> <a href="https://12barclub.com/cat-recension/godaddy-review-2/" title="GoDaddy Review" data-wpel-link="internal"> <img src="data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20viewBox='0%200%20220%20160'%3E%3C/svg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/godaddy-review-2-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8612" title="godaddy-review-2" alt="godaddy-review-2" data-lazy-src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E"><noscript><img src="data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%27http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%27%20width%3D%27220%27%20height%3D%27160%27%20fill%3D%27rgba%28255%2C255%2C255%2C.2%29%27%3E%3Crect%20width%3D%27100%25%27%20height%3D%27100%25%27%2F%3E%3C%2Fsvg%3E" decoding="async" loading="lazy" data-lazy="1" data-tf-src="https://12barclub.com/wp-content/uploads/2020/06/godaddy-review-2-220x160.jpg" width="220" height="160" class="tf_svg_lazy feature-img wp-post-image wp-image-8612" title="godaddy-review-2" alt="godaddy-review-2"></noscript><noscript><img data-tf-not-load src="https://12barclub.com/wp-content/uploads/2020/06/godaddy-review-2-220x160.jpg" width="220" height="160" class="feature-img wp-post-image wp-image-8612" title="godaddy-review-2" alt="godaddy-review-2"></noscript> </a></div><div class="slide-content-wrap"></div></div></div></div></div><div id="footerwrap"><div id="footer" class="clearfix" itemscope="itemscope" itemtype="https://schema.org/WPFooter"><div class="footer-widgets clearfix"><div class="col3-1 first"><div id="execphp-4" class="widget widget_execphp"><div class="execphpwidget"><script type="text/javascript">document.write("<a href='http://www.liveinternet.ru/click' "+ "target=_blank rel=nofollow><img src='//counter.yadro.ru/hit?t20.1;r"+ escape(document.referrer)+((typeof(screen)=="undefined")?"": ";s"+screen.width+"*"+screen.height+"*"+(screen.colorDepth? screen.colorDepth:screen.pixelDepth))+";u"+escape(document.URL)+ ";"+Math.random()+ "' alt='' title='' "+ "border='0' width='88' height='31'><\/a>")</script></div></div></div><div class="col3-1 "></div><div class="col3-1 "></div></div><div class="footer-text clearfix"><div class="one">© <a href="https://12barclub.com" data-wpel-link="internal"></a> 2020</div><div class="two">Powered by <a href="http://wordpress.org" data-wpel-link="external" rel="external noopener noreferrer">WordPress</a> • <a href="https://themify.me" data-wpel-link="external" rel="external noopener noreferrer">Themify WordPress Themes</a></div></div></div></div></div> <script type="application/ld+json">[{"@context":"https:\/\/schema.org","@type":"BlogPosting","mainEntityOfPage":{"@type":"WebPage","@id":"https:\/\/12barclub.com\/bez-kategorii\/rozrobka-temi-wordpress-101\/"},"headline":"\u0420\u043e\u0437\u0440\u043e\u0431\u043a\u0430 \u0442\u0435\u043c\u0438 WordPress (101)","datePublished":"2020-06-07T14:17:30+03:00","dateModified":"2020-06-07T14:17:30+03:00","author":{"@type":"Person","name":"Jeffrey Wilson"},"publisher":{"@type":"Organization","name":"","logo":{"@type":"ImageObject","url":"","width":0,"height":0}},"description":"\u041d\u0430\u0432\u0447\u0430\u043d\u043d\u044f \u0441\u0442\u0432\u043e\u0440\u044e\u0432\u0430\u0442\u0438 \u0442\u0435\u043c\u0438 WordPress \u0432\u0456\u0434\u043a\u0440\u0438\u0432\u0430\u0454 \u0434\u043b\u044f \u0432\u0430\u0441 \u0446\u0456\u043b\u0438\u0439 \u043d\u043e\u0432\u0438\u0439 \u0441\u0432\u0456\u0442. \u0426\u0435 \u0434\u043e\u0437\u0432\u043e\u043b\u044f\u0454 \u0431\u0443\u0434\u0443\u0432\u0430\u0442\u0438 \u0432\u043b\u0430\u0441\u043d\u0456 \u0434\u0438\u0437\u0430\u0439\u043d\u0438 \u0434\u043b\u044f \u0441\u0435\u0431\u0435, \u0441\u0432\u043e\u0457\u0445 \u043a\u043b\u0456\u0454\u043d\u0442\u0456\u0432 \u0456 \u043d\u0430\u0432\u0456\u0442\u044c \u0441\u043f\u0440\u0438\u044f\u0442\u0438 \u0441\u043f\u0456\u043b\u044c\u043d\u043e\u0442\u0456 \u0437 \u0432\u0456\u0434\u043a\u0440\u0438\u0442\u0438\u043c \u043a\u043e\u0434\u043e\u043c. \u0423 \u0446\u044c\u043e\u043c\u0443 \u043f\u043e\u0441\u0456\u0431\u043d\u0438\u043a\u0443 \u043c\u0438 \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c\u043e \u0434\u043e \u043d\u0443\u043b\u044f, \u0449\u043e\u0431 \u043c\u0430\u0442\u0438 \u043f\u043e\u0432\u043d\u0456\u0441\u0442\u044e \u0444\u0443\u043d\u043a\u0446\u0456\u043e\u043d\u0430\u043b\u044c\u043d\u0443 \u0442\u0435\u043c\u0443, \u044f\u043a\u0443 \u043c\u043e\u0436\u043d\u0430 \u043d\u0430\u0434\u0456\u0441\u043b\u0430\u0442\u0438 \u0434\u043e WordPress.org \u0434\u043e\u0432\u0456\u0434\u043d\u0438\u043a \u0442\u0435\u043c. \u0414\u043b\u044f \u043f\u043e\u0434\u0430\u043b\u044c\u0448\u043e\u0457 \u0440\u043e\u0431\u043e\u0442\u0438 \u0432\u0430\u043c \u0437\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u044c\u0441\u044f \u0431\u0430\u0437\u043e\u0432\u0435 \u0440\u043e\u0437\u0443\u043c\u0456\u043d\u043d\u044f HTML, CSS, PHP […]"}]</script> <script type="text/javascript">var thirstyGoogleClickTrack = function ( e ) { var $this = jQuery( this ), linkID = $this.data( 'linkid' ), href = linkID ? $this.attr( 'href' ) : thirstyFunctions.isThirstyLink( $this.attr( 'href' ) ), action_name = 'Affiliate Link', page_slug = '/bez-kategorii/rozrobka-temi-wordpress-101/', home_url = 'https://12barclub.com'; if ( ! href || typeof ga !== 'function' ) { return; } var is_uncloak = href.indexOf( home_url + '/' + thirsty_global_vars.link_prefix ) < 0, href_parts = href.split('/'), href_last = href_parts[ href_parts.length - 1 ] ? href_parts[ href_parts.length - 1 ] : href_parts[ href_parts.length - 2 ], link_text = $this.text(), link_uri = linkID && is_uncloak ? href : href.replace( home_url , '' ), link_slug = linkID && is_uncloak ? href : href_last; ga( 'send' , 'event' , { eventCategory : action_name, eventAction : link_uri, eventLabel : page_slug, transport : 'beacon' } ); }; jQuery( document ).ready( function($) { $( 'body' ).on( 'click', 'a', thirstyGoogleClickTrack ); });</script> <script type="text/template" id="tf_vars">var tbLocalScript = {"builder_url":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder","css_module_url":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/css\/modules\/","js_module_url":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/","js_modules":{"fwr":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/fullwidthRows.js","bgs":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/backgroundSlider.js","fwv":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/fullwidthvideo.js","feature":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/feature.js","parallax":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/parallax.js","bgzs":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/bgzoom_scroll.js","bgzoom":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/bgzoom.js","gallery":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/gallery.js","menu":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/menu.js","read":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/readMore.js","sticky":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/sticky.js","alert":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/alert.js","tab":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/tab.js","accordion":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/accordion.js","oc":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/overlay-content.js","video":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/modules\/video.js","sh":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/themify-builder\/js\/themify.scroll-highlight.js"},"breakpoints":{"tablet_landscape":[769,"1024"],"tablet":[681,"768"],"mobile":"600"},"fullwidth_support":"1","addons":[]}; var themify_vars = {"version":"5.0.1","url":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify","wp":"5.4.2","ajax_url":"https:\/\/12barclub.com\/wp-admin\/admin-ajax.php","includesURL":"https:\/\/12barclub.com\/wp-includes\/","emailSub":"Check this out!","lightbox":[],"s_v":"5.3.6","a_v":"3.6.2","i_v":"4.1.4","js_modules":{"fxh":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/fixedheader.js","lb":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/lightbox.min.js","gal":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/themify.gallery.js","sw":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/swiper\/swiper.min.js","tc":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/themify.carousel.js","map":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/map.js","img":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/jquery.imagesloaded.min.js","at":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/autoTiles.js","iso":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/isotop.js","inf":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/infinite.js","lax":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/lax.js","audio":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/audio-player.js","side":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/themify.sidemenu.js","edge":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/edge.Menu.js","wow":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/tf_wow.js","share":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/sharer.js","mega":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/megamenu.js","drop":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/themify.dropdown.js","wc":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/js\/modules\/wc.js"},"css_modules":{"sw":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/css\/swiper\/swiper.css","an":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/css\/animate.min.css","audio":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/css\/modules\/audio.css","drop":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/css\/modules\/dropdown.css","lb":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/themify\/css\/lightbox.css"},"is_min":"1","wp_embed":"https:\/\/12barclub.com\/wp-includes\/js\/wp-embed.min.js","theme_js":"https:\/\/12barclub.com\/wp-content\/themes\/thememin\/js\/themify.script.js","theme_v":"5.0.1","theme_url":"https:\/\/12barclub.com\/wp-content\/themes\/thememin","menu_point":"900","media":{"css":{"wp-mediaelement":"https:\/\/12barclub.com\/wp-includes\/js\/mediaelement\/mediaelementplayer-legacy.min.css?ver=5.4.2","mediaelement":"https:\/\/12barclub.com\/wp-includes\/js\/mediaelement\/wp-mediaelement.css?ver=5.4.2"},"_wpmejsSettings":"var _wpmejsSettings = {\"pluginPath\":\"\\\/wp-includes\\\/js\\\/mediaelement\\\/\",\"classPrefix\":\"mejs-\",\"stretching\":\"responsive\"};","js":{"mediaelement-core":{"src":"https:\/\/12barclub.com\/wp-includes\/js\/mediaelement\/mediaelement-and-player.min.js","v":"4.2.13-9993131","extra":{"before":[false,"var mejsL10n = {\"language\":\"en\",\"strings\":{\"mejs.download-file\":\"Download File\",\"mejs.install-flash\":\"You are using a browser that does not have Flash player enabled or installed. Please turn on your Flash player plugin or download the latest version from https:\\\/\\\/get.adobe.com\\\/flashplayer\\\/\",\"mejs.fullscreen\":\"Fullscreen\",\"mejs.play\":\"Play\",\"mejs.pause\":\"Pause\",\"mejs.time-slider\":\"Time Slider\",\"mejs.time-help-text\":\"Use Left\\\/Right Arrow keys to advance one second, Up\\\/Down arrows to advance ten seconds.\",\"mejs.live-broadcast\":\"Live Broadcast\",\"mejs.volume-help-text\":\"Use Up\\\/Down Arrow keys to increase or decrease volume.\",\"mejs.unmute\":\"Unmute\",\"mejs.mute\":\"Mute\",\"mejs.volume-slider\":\"Volume Slider\",\"mejs.video-player\":\"Video Player\",\"mejs.audio-player\":\"Audio Player\",\"mejs.captions-subtitles\":\"Captions\\\/Subtitles\",\"mejs.captions-chapters\":\"Chapters\",\"mejs.none\":\"None\",\"mejs.afrikaans\":\"Afrikaans\",\"mejs.albanian\":\"Albanian\",\"mejs.arabic\":\"Arabic\",\"mejs.belarusian\":\"Belarusian\",\"mejs.bulgarian\":\"Bulgarian\",\"mejs.catalan\":\"Catalan\",\"mejs.chinese\":\"Chinese\",\"mejs.chinese-simplified\":\"Chinese (Simplified)\",\"mejs.chinese-traditional\":\"Chinese (Traditional)\",\"mejs.croatian\":\"Croatian\",\"mejs.czech\":\"Czech\",\"mejs.danish\":\"Danish\",\"mejs.dutch\":\"Dutch\",\"mejs.english\":\"English\",\"mejs.estonian\":\"Estonian\",\"mejs.filipino\":\"Filipino\",\"mejs.finnish\":\"Finnish\",\"mejs.french\":\"French\",\"mejs.galician\":\"Galician\",\"mejs.german\":\"German\",\"mejs.greek\":\"Greek\",\"mejs.haitian-creole\":\"Haitian Creole\",\"mejs.hebrew\":\"Hebrew\",\"mejs.hindi\":\"Hindi\",\"mejs.hungarian\":\"Hungarian\",\"mejs.icelandic\":\"Icelandic\",\"mejs.indonesian\":\"Indonesian\",\"mejs.irish\":\"Irish\",\"mejs.italian\":\"Italian\",\"mejs.japanese\":\"Japanese\",\"mejs.korean\":\"Korean\",\"mejs.latvian\":\"Latvian\",\"mejs.lithuanian\":\"Lithuanian\",\"mejs.macedonian\":\"Macedonian\",\"mejs.malay\":\"Malay\",\"mejs.maltese\":\"Maltese\",\"mejs.norwegian\":\"Norwegian\",\"mejs.persian\":\"Persian\",\"mejs.polish\":\"Polish\",\"mejs.portuguese\":\"Portuguese\",\"mejs.romanian\":\"Romanian\",\"mejs.russian\":\"Russian\",\"mejs.serbian\":\"Serbian\",\"mejs.slovak\":\"Slovak\",\"mejs.slovenian\":\"Slovenian\",\"mejs.spanish\":\"Spanish\",\"mejs.swahili\":\"Swahili\",\"mejs.swedish\":\"Swedish\",\"mejs.tagalog\":\"Tagalog\",\"mejs.thai\":\"Thai\",\"mejs.turkish\":\"Turkish\",\"mejs.ukrainian\":\"Ukrainian\",\"mejs.vietnamese\":\"Vietnamese\",\"mejs.welsh\":\"Welsh\",\"mejs.yiddish\":\"Yiddish\"}};"]}},"mediaelement-migrate":{"src":"https:\/\/12barclub.com\/wp-includes\/js\/mediaelement\/mediaelement-migrate.min.js","v":false,"extra":""},"wp-mediaelement":{"src":"https:\/\/12barclub.com\/wp-includes\/js\/mediaelement\/wp-mediaelement.min.js","v":false,"extra":""}}}};</script> <script>var wares_ajax = {"wares_url":"https:\/\/12barclub.com\/wp-admin\/admin-ajax.php"};</script> <script>var tocplus = {"visibility_show":"show","visibility_hide":"hide","visibility_hide_by_default":"1","width":"Auto"};</script> <script>var thirsty_global_vars = {"home_url":"\/\/12barclub.com","ajax_url":"https:\/\/12barclub.com\/wp-admin\/admin-ajax.php","link_fixer_enabled":"yes","link_prefix":"recommends","link_prefixes":["recommends"],"post_id":"4672","enable_record_stats":"yes","enable_js_redirect":"yes","disable_thirstylink_class":""};</script> <link rel="preload" href="https://12barclub.com/wp-content/themes/thememin/js/themify.script.js?ver=5.0.1" as="script"/><link rel="prefetch" href="https://12barclub.com/wp-content/themes/thememin/themify/js/modules/jquery.imagesloaded.min.js?ver=4.1.4" as="script"/><link rel="preload" href="https://12barclub.com/wp-content/uploads/2020/01/sovremennyy-farmatsevticheskiy-znachok-logotip-2-e1602438187134.png" as="image"/> <ins id="adsense" class="adsbygoogle" data-tag="flat_pm" style="position:absolute;left:-9999px;top:-9999px">Adblock<br>detector</ins><style>.arcticmodal-overlay,.arcticmodal-container{position:fixed;left:0;top:0;right:0;bottom:0;z-index:1000}.arcticmodal-container{overflow:auto;margin:0;padding:0;border:0;border-collapse:collapse}:first-child+html .arcticmodal-container{height:100%}.arcticmodal-container_i{height:100%;margin:0 auto}.arcticmodal-container_i2{vertical-align:middle!important;border:none!important}.flat_pm_modal{min-width:200px;min-height:100px;position:relative;background:#fff}.flat_pm_modal .flat_pm_timer,.flat_pm_modal .flat_pm_crs{top:0!important}.flat_pm_crs{transition:box-shadow .2s ease;position:absolute;top:0;right:0;width:34px;height:34px;background:#000;display:block;cursor:pointer;z-index:99999;border:none;padding:0;min-width:0;min-height:0}.flat_pm_crs:hover{box-shadow:0 0 0 50px rgba(0,0,0,.2) inset}.flat_pm_crs:after,.flat_pm_crs:before{transition:transform .3s ease;content:'';display:block;position:absolute;top:0;left:0;right:0;bottom:0;width:calc(34px / 2);height:3px;background:#fff;transform-origin:center;transform:rotate(45deg);margin:auto}.flat_pm_crs:before{transform:rotate(-45deg)}.flat_pm_crs:hover:after{transform:rotate(225deg)}.flat_pm_crs:hover:before{transform:rotate(135deg)}.flat_pm_timer{position:absolute;top:0;right:0;padding:0 15px;color:#fff;background:#000;line-height:34px;height:34px;text-align:center;font-size:14px}.flat_pm_timer span{font-size:16px;font-weight:600}.flat_pm_out{transition:transform .3s ease,opacity 0s ease;transition-delay:0s,.3s;position:fixed;min-width:250px;min-height:150px;z-index:9999;opacity:0;-webkit-backface-visibility:hidden}.flat_pm_out *{max-width:none!important}.flat_pm_out.top .flat_pm_crs{top:auto;bottom:150px}.flat_pm_out.show.top .flat_pm_crs{bottom:0}.flat_pm_out.bottom .flat_pm_crs{top:150px}.flat_pm_out.show.bottom .flat_pm_crs{top:0}.flat_pm_out.right .flat_pm_crs{right:auto;left:0}.flat_pm_out.top .flat_pm_timer{top:auto;bottom:150px}.flat_pm_out.show.top .flat_pm_timer{bottom:0}.flat_pm_out.bottom .flat_pm_timer{top:150px}.flat_pm_out.show.bottom .flat_pm_timer{top:0}.flat_pm_out.right .flat_pm_timer{right:auto;left:0}.flat_pm_out.top{bottom:100%;left:50%;transform:translateY(0) translateX(-50%);padding-bottom:150px}.flat_pm_out.bottom{top:100%;left:50%;transform:translateY(0) translateX(-50%);padding-top:150px}.flat_pm_out.left{bottom:0;right:100%;transform:translateX(0)}.flat_pm_out.right{bottom:0;left:100%;transform:translateX(0)}.flat_pm_out.show{transition-delay:0s,0s;opacity:1;min-width:0;min-height:0;background:#fff}.flat_pm_out.closed{min-width:0;min-height:0}.flat_pm_out.show.top{transform:translateY(100%) translateX(-50%);padding-bottom:0}.flat_pm_out.show.bottom{transform:translateY(-100%) translateX(-50%);padding-top:0}.flat_pm_out.show.left{transform:translateX(100%)}.flat_pm_out.show.right{transform:translateX(-100%)}.flatpm_fixed{position:fixed;z-index:50}.flatpm_stop{position:relative;z-index:50}</style> <script>window.lazyLoadOptions={elements_selector:"img[data-lazy-src],.rocket-lazyload,iframe[data-lazy-src]",data_src:"lazy-src",data_srcset:"lazy-srcset",data_sizes:"lazy-sizes",class_loading:"lazyloading",class_loaded:"lazyloaded",threshold:300,callback_loaded:function(element){if(element.tagName==="IFRAME"&&element.dataset.rocketLazyload=="fitvidscompatible"){if(element.classList.contains("lazyloaded")){if(typeof window.jQuery!="undefined"){if(jQuery.fn.fitVids){jQuery(element).parent().fitVids()}}}}}};window.addEventListener('LazyLoad::Initialized',function(e){var lazyLoadInstance=e.detail.instance;if(window.MutationObserver){var observer=new MutationObserver(function(mutations){var image_count=0;var iframe_count=0;var rocketlazy_count=0;mutations.forEach(function(mutation){for(i=0;i<mutation.addedNodes.length;i++){if(typeof mutation.addedNodes[i].getElementsByTagName!=='function'){return} if(typeof mutation.addedNodes[i].getElementsByClassName!=='function'){return} images=mutation.addedNodes[i].getElementsByTagName('img');is_image=mutation.addedNodes[i].tagName=="IMG";iframes=mutation.addedNodes[i].getElementsByTagName('iframe');is_iframe=mutation.addedNodes[i].tagName=="IFRAME";rocket_lazy=mutation.addedNodes[i].getElementsByClassName('rocket-lazyload');image_count+=images.length;iframe_count+=iframes.length;rocketlazy_count+=rocket_lazy.length;if(is_image){image_count+=1} if(is_iframe){iframe_count+=1}}});if(image_count>0||iframe_count>0||rocketlazy_count>0){lazyLoadInstance.update()}});var b=document.getElementsByTagName("body")[0];var config={childList:!0,subtree:!0};observer.observe(b,config)}},!1)</script><script data-no-minify="1" async src="https://12barclub.com/wp-content/plugins/wp-rocket/assets/js/lazyload/12.0/lazyload.min.js"></script> <script src="https://12barclub.com/wp-content/cache/min/1/b6f55790f252056d7d2225859bf501aa.js" data-minify="1" defer></script><noscript><link rel="stylesheet" href="https://12barclub.com/wp-content/cache/min/1/6ec48eb33aab6d70e2d3de501edafb41.css" data-minify="1" /></noscript></body></html> <!-- This website is like a Rocket, isn't it? Performance optimized by WP Rocket. Learn more: https://wp-rocket.me - Debug: cached@1602705998 -->