WordPress Туториалы

перенести WordPress на новый домен без потери SEO

Как правильно перенести WordPress на новый домен без потери SEO

Недавно один из наших пользователей попросил у нас помощи в переносе их сайта на новый домен. Мы подумали, что было бы неплохо расписать данный процесс, чтобы помочь и другим сделать тоже самое. В этой статье мы покажем вам как правильно перенести ваш сайт на новый домен, без потери вашего SEO.

Перед тем как начать

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

Однако, вы также можете снизить негативные эффекты на SEO, которые могут быть при переносе сайта. Мы покажем вам правильный способ переноса сайта на новый домен, правильную установку 301 редиректов и оповещение всех поисковиков об этом событии.

Помните, что эта статья не про перенос сайта на новый хост. Она про смену доменного имени. И хотя процесс довольно схожий, всё равно нужно учитывать и многие другие факторы.

Подготовка

В этой статье мы предполагаем, что у вас уже есть сайт на домене oldsite.com, и вы хотите мигрировать на newsite.com. Мы также полагаем, что у вас есть хостинг и вы знакомы с панелью управления хостингом.

Также вам понадобится знать, как использовать FTP.

Шаг 1: Создайте полную резервную копию

Перед тем, как вы что-либо начнёте делать, крайне важно создать полную резервную копию вашего сайта WordPress. Существуют тонны плагинов и решений, которые позволяют вам создать резервную копию. Вы можете использовать VaultPress, BackupBuddy, BackWPup, или WordPress backup to Dropbox.

Шаг 2: Перенос сайта WordPress

Как только вы создадите полную резервную копию вашего старого сайта, самое время начать процесс миграции домена. Первым делом нужно установить и активировать Duplicator plugin на старом сайте. После активации, плагин добавит в меню элемент Duplicator. Нажмите на это меню и вы увидите картинку как внизу. Просто нажмите на кнопку создания, чтобы создать новый файл.

WordPress

Это запустит процесс дубликации и плагин спросит у вас об имени по умолчании. По умолчанию это будет имя сайта с префиксом даты, но вы можете изменить это. Плагин начнёт создавать архив с базой данной WordPress и всеми вашими файлами. Это может занять некоторое время, в зависимости от того, насколько большой ваш сайт. Как только процесс завершится, вы перейдёте на страницу Duplicator. Скачайте все файлы на свой компьютер.

WordPress

Далее понадобится открыть свою FTP программу и подсоединиться к новому сайту. Следует убедиться, что корневая папка, куда вы будете копировать сайт, полностью пуста. Загрузите installer.php и архив в zip формате на новый сайт. После этого, откройте браузер и перейдите на файл installer.php:  

WordPress

Установщик попросит вас предоставить информацию о базе данных нового сайта. Убедитесь, что база данных пуста и не содержит никаких данных.  После нескольких предупреждений, вы сможете нажать на кнопку “Run Deployment». Установщик извлечёт содержимое архива, установит базу данный со старого сайта и установит WordPress с вашей темой и плагинами. Как только установка завершится, то об этом сразу будет написано.

На этой странице необходимо будет обновить ваши ссылки. Дубликатор попробует сам подставить ссылки, но вы можете сделать это и вручную.

WordPress

Как только этот процесс завершится, плагин напомнит вам, что пора заняться своими постами. Сначала нужно пересохранить все постоянные ссылки. Залогиньтесь на вашем новом сайте WordPress, используя те же данные, что и на старом сайте. Перейдите в Settings » Permalinks  в панели администратора и нажмите на кнопку сохранить.

После этого удалите файлы installer.php, installer-data.sql и the installer-log.txt из корневой директории с помощью FTP.

Напоследок, проверьте свой новый сайт на наличия битых ссылок, недостающих картинок, постов и страниц. Теперь вы успешно перенесли сайт на новое доменное имя, но процесс ещё не завершён. Ещё нужно добавить 301 перенаправления и оповестить поисковики, чтобы сохранить своё SEO.

Шаг 3: Установка перенаправлений 301

Установка постоянных 301 перенаправлений крайне важно как для SEO, так и для пользовательского опыта. Это позволит вам перенаправлять пользователей и поисковики на ваш новый сайт. Другими словами, пока кто-то пытается попасть на ваш старый пост или страницу, они автоматически перенаправятся на новый сайт.

Чтобы установить постоянное 301 перенаправление, подключитесь к сайту через клиент FTP и отредактируйте файл .htaccess. Откройте его и вставьте этот код в самое начало файла:

#Options +FollowSymLinks
RewriteEngine on
RewriteRule ^(.*)$  [R=301,L]

Внимание: Вместо newsite.com вставьте имя вашего домена.

Как только вы примените эти изменения, посетите свой старый сайт. Он должен автоматически перенаправить вас на новый сайт. Если этого не произошло, значит перенаправление настроено неправильно.

Шаг 4: Оповещаем Google об изменениях

Зайдите в ваш аккаунт в Google Webmaster Tools , чтобы сообщить о смене адреса. Просто кликните на ваш сайт и найдите меню слева. Это позволит оповестить Гугл о вашем новом сайте и об переносе. Придётся верифицировать ваш сайт, потому сделайте и это.

WordPress

Шаг 5: Оповестите пользователей

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

Надеемся, что данная статья помогла вам перенести WordPress на новое доменное имя. Если статья помогла вам, то напишите свой отзыв в комментариях!


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


backwpup

Как создать резервную копию WordPress бесплатно с помощью BackWPup

Резервные копии это отличная защита против любого типа хакерской атаки на ваш сайт. Регулярные резервные копии это одна из вещей, которую делает любой вебмастер. В прошлом мы показали вам, как создавать резервные копии баз данных вручную. Однако, BackupBuddy стоит денег и создание резервных копий занимает время. А что если бы мы сказали, что вы можете создать полную резервную копию WordPress бесплатно? И не только, вы можете её хранить в облаке и запланировать делать это автоматически? В этой статье, мы покажем вам, как делать полные резервные копии бесплатно с BackWPup.

Первым делом вам надо установить и активировать плагин BackWPup. После активации, плагин перенесёт вас на страницу приветствия. Также он добавит в меню администратора свой раздел.

WordPress

Создание резервных копий с BackWPup

Нажмите на Добавить новую работу, чтобы задать автоматическое резервное копирование для вашего сайта. Под закладкой General дайте имя данной работе. Это имя будет использовано лишь внутри системы и позволит вам идентифицировать резервные копии. Под разделом Job Tasks выберите тип задач, которые вы хотите совершить. Доступные задачи включают в себя бекап баз данных, файлов, экспорт XML, список установленных плагинов, оптимизация таблиц баз данных и проверка таблиц базы данных. Если вы хотите просто создать резервную копию вашего сайта, то вы можете выбрать все опции, кроме оптимизации и проверки таблиц БД.

Под разделом создания файла резервной копии, выберите тип архива. По умолчанию это tar.gz, однако вы можете выбрать zip архив, если хотите. Под ним вы увидите раздел Назначение работы. Здесь будут храниться ваши резервные копии. BackWPup предоставляет множество опций хранения ваших резервных копий. Вы можете хранить файлы на сервере, скинуть их на FTP, сохранять их на DropBox, amazon S3, Windows Azure, Rackspace, и Sugarsync. Делайте что хотите, но НЕ сохраняйте бекапы на свой сервер!

WordPress

Планирование автоматических резервных копий в WordPress, используя BackWPup

Нажмите на закладку Schedule и выберите, как часто вы хотите создавать резервные копии вашего сайта. Вы можете делать их раз в месяц, неделю и день. Альтернативно вы можете вручную запускать этот процесс. Для продвинутых пользователей, там полно различный опций, таких как использование ссылок для начала работы извне, используя стороннее ПО или используя командную строку WordPress.

WordPress

Что именно сохранять?

Нажмите на закладку DB Backup чтобы выбрать, какие таблицы вы хотите включить в бекап. Иногда некоторые плагины создают свои таблицы в базе данных, обычно эти данные не играют ключевой роли и вам они не нужны. Убирая выделение с таких таблиц может уменьшить объём файл резервной копии, но если вы не знаете, что вы делает, оставьте всё как есть.

WordPress

Под закладкой Files вы можете выбрать, какие директории и файлы вы хотите включить в бекап. Мы рекомендуем не включать в бекап основные файлы WordPress. Вместо этого, сделайте резервную копию папки wp-content/uploads. Уберите выделение с Backup root folder. Тоже самое касается и всех других папок, которые вам не нужны, например, некоторые плагины создают свои папки для хранения своей информации.

WordPress

Сохранение резервных копий в DropBox

В зависимости от того, что вы выбрали в качестве хранилища своих бекапов, вы увидите закладку для него. Здесь мы расскажем вам, как автоматически загружать свои резервные копии WordPress на Drobbox, используя BackupWP. Нажмите на закладку Dropbox, и после кликните на Reauthenticate.

WordPress

Это выведет вас к сайту Dropbox, где у вас попросят предоставить логин и пароль. После этого, DropBox спросит у вас разрешения на доступ BackWPup к вашему аккаунту DropBox.

WordPress

После чего, плагин сам обо всём позаботится.

Создание множественных работ по резервному копированию

Вы можете создать множественные работы по резервному копированию с помощью BackWPup. Например, вы можете создать запланированную работу, чтобы сделать резервную копию вашей базы данных. Вы можете увидеть все созданные работы на странице BackWPup » Jobs. Вы так же можете запустить любую работу по бекапу, кликнув на ссылку под работой, включая запланированные работы. Вы также можете изменить настройки для работы или удалить её вообще.

WordPress

Запуск работы по резервному копированию

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

WordPress

Напоследок

Запуск резервного копирования может вызвать дополнительную нагрузку на хостинг. Это может прервать процесс бекапа. ТАкже на многих бесплатных хостингах стоит ограничение на то, какое количество времени и памяти может потреблять скрипт. Если сервер остановит BackWPup из-за превышения лимита по времени или памяти, то нужно будет подождать ещё 5 минут, прежде чем скрипт прододжит работу. Это может занять больше времени, чем обычно.

Первым делом вы должны увеличить лимит памяти в PHP, а после перейти в BackWPup » Settings и кликнуть на закладку Jobs. Повысьте опцию Maximum number of restries for job steps. По умолчанию стоит 3, вы можете поставить 5 и посмотреть, что получится. После чего, промотайте до опции Reduce server load и выберите среднюю или минимальную нагрузку на сервер.

Возможно вы думаете, раз такой хороший бесплатный плагин как BackWPup существует, то почему люди платят за плагины типа BackupBuddy или VaultPress. Одной из таких причин является поддержка. Если вы покупаете продукт, то гарантированно получите поддержку. Ещё одной функцией этих платных плагинов является поддержка сканирования на вирусы. Мы используем VaultPress, потому что это 100% управляемый сервис. Бекап хранится на их облачном сервере.

WordPress

Не ждите, пока ваш сайт будет взломан или заражён вирусом, позаботьтесь о резервном копировании сейчас, чтобы вы могли с лёгкостью восстановить всё, если такое время настанет. Надеемся, что мы помогли вам автоматизировать резервное копирование в WordPress.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


backup

Как создать резервную копию базы данных WordPress вручную

Хотите ли вы узнать, как создавать резервные копии баз данных вручную, без использования плагинов? Знание этого метода позволит вам быстро создать резервную копию базы данных, когда вы будете в этом нуждаться. В этой статье, я покажу вам как создать резервную копию базы данных WordPress вручную

WordPress

Когда и зачем вам делать резервную копию вручную

У вас всегда должна быть установлена система резервного копирования для вашего сайта.

Многие пользователи теряют доступ к их панели администратора после хакерского взлома или после ошибки плагинов. В таких случаях, многие рекомендуют сделать полную резервную копию WordPress

Однако, так как у вас не будет доступа к панели администратора, то будет сложно использовать плагин для резервного копирования. Вот тут-то и пригодится умение делать резервные копии вручную.

Создание баз данных вручную это то же самое, что и создание бекапов плагином. А теперь давайте рассмотрим, как с лёгкостью создать бекап базы данных вручную.

Создание резервной копии вручную, используя phpMyAdmin

Для этого метода мы будем использовать phpMyAdmin. Это ПО с открытым исходным кодом, которое позволяет управлять базами данных MySQL, используя веб-интерфейс. Обычно он поставляется на многих хостинг-провайдерах WordPress.

Первым делом вам надо зайти в панель управления хостингом WordPress. Нажмите на phpMyAdmin под разделом баз данных.

WordPress

Это запустит окно phpMyAdmin. Убедитесь, что база данных выбрана в самом phpMyAdmin. Если нет, то нажмите на имя базы данных, что выбрать её. Вы сможете увидеть список таблиц базы данных, когда она выбрана.

Нажмите на кнопку Export в верхней части меню.

WordPress

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

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

WordPress
Промотайте вниз до раздела с результатом. По умолчанию phpMyAdmin покажет вам результат процесса экспорта в виде текста. Нужно изменить это, выбрав ‘Save output to a file’. Для сжатия, нужно выбрать соответствующую опцию сжатия.

Теперь промотайте страницу до конца и нажмите на кнопку ‘Go’.

PhpMyAdmin пришлёт вам базу данных в виде zip файла.

Вот и всё, вы успешно создали резервную копию базы данных вручную!

Создание резервной копии базы данных с cPanel

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

Просто зайдите в панель управления хостингом, промотайте вниз и вы увидите кнопку Резервного копирования. На этой странице, нажмите на имя вашей базы данных, чтобы скачать файл базы данных.

WordPress

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

Используйте подходящий плагин для автоматического резервного копирования вашей базы данных WordPress. Мы рекомендуем BackupBuddy, он автоматически создаёт и хранит ваши бекапы в облаке, в Google Drive, DropBox, или Stash.

Вот и всё, мы надеемся, что эта статья помогла вам научиться создавать резервные копии базы данных WordPress вручную.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


keyboard-computer-keys-white

Как поменять префикс в базе данных WordPress, чтобы повысить уровень безопасности

База данных WordPress – это мозг вашего сайта, так как вся информация хранится именно там, поэтому хакеры выбирают ее своей мишенью. Спамеры и хакеры чаще всего запускают автоматизированные коды для SQL-инъекций. К сожалению, многие забывают поменять префикс базы данных во время установки WordPress. Таким образом хакерам легче запланировать массовую атаку, нацеленную на дефолтный префикс wp_. Лучший способ защитить свою базу данных – поменять префикс базы данных, что очень легко сделать. Однако нужно соблюдать определенную последовательность действий, чтобы правильно и без плачевных последствий поменять префикс базы данных WordPress на существующем сайте.

Видео урок

Если вам не понравилось видео или требуются более подробные инструкции, читайте дальше.

Подготовка

Мы рекомендуем сохранить резервную копию вашей базы данных WordPress, перед тем как делать что-либо, о чем мы рассказываем в этом уроке. Очень важно создавать ежедневные резервные копии вашего сайта, для этого мы рекомендуем плагин BackupBuddy. Также мы рекомендуем перенаправить посетителей вашего сайта на временную страницу “на реконструкции”.

Изменение префикса таблицы через wp-config.php

Откройте ваш файл wp-config.php, который находится в корневой директории WordPress. Поменяйте строку с префиксом таблицы с wp_ на что-то другое, например wp_a123456_

Строка должна выглядеть следующим образом:

$table_prefix  = 'wp_a123456_';

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

Изменение названия для всех таблиц в базе данных

Вам потребуется получить доступ к вашей базе данных (вероятнее всего через phpMyAdmin), а затем поменять название таблицы на то, которое мы ввели в файле wp-config.php. Если вы используете хостинг WordPress с cPanel, то можете найти ссылку на phpMyAdmin в cPanel.

phpmyadmin

Существует 11 таблиц WordPress по умолчанию, поэтому менять каждую из них вручную будет утомительно.

sql

Поэтому, чтобы ускорить процесс, мы предлагаем запрос SQL, который вы можете использовать.

RENAME table `wp_commentmeta` TO `wp_a123456_commentmeta`;
RENAME table `wp_comments` TO `wp_a123456_comments`;
RENAME table `wp_links` TO `wp_a123456_links`;
RENAME table `wp_options` TO `wp_a123456_options`;
RENAME table `wp_postmeta` TO `wp_a123456_postmeta`;
RENAME table `wp_posts` TO `wp_a123456_posts`;
RENAME table `wp_terms` TO `wp_a123456_terms`;
RENAME table `wp_termmeta` TO `wp_a123456_termmeta`;
RENAME table `wp_term_relationships` TO `wp_a123456_term_relationships`;
RENAME table `wp_term_taxonomy` TO `wp_a123456_term_taxonomy`;
RENAME table `wp_usermeta` TO `wp_a123456_usermeta`;
RENAME table `wp_users` TO `wp_a123456_users`;

Возможно, вам потребуется добавить строки для таблиц, добавленных в базу данных WordPress плагинами. Таким образом вы сможете поменять префиксы для всех таблиц.

Таблица Options

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

SELECT * FROM `wp_a123456_options` WHERE `option_name` LIKE '%wp_%'

Появится много результатов, и вам потребуется пройтись по каждому, делая соответствующие изменения.

Таблица UserMeta

Далее, нам также нужно найти все поля со старых префиксом wp_ в таблице usermeta. Используйте следующий SQL запрос, чтобы это сделать:

SELECT * FROM `wp_a123456_usermeta` WHERE `meta_key` LIKE '%wp_%'

Число позиций будет зависеть от количества плагинов, которые вы используете. Просто поменяйте все, где стоит wp_, на новый префикс.

Готово

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


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


bankoboev-ru_nadpis_hello

Как добавить всплывающие приветствия в WordPress

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

Фон:

От экспертов индустрии мы слышали то, что показ лиц придаёт персональный оттенок странице. Это причина, почему мы решили пойти этим путём. Вот почему мы решили использовать пользовательские типы постов и мета-поля, чтобы скомпоновать это с jQuery.

 

Пользовательские типы постов и мета-области

Нам необходимо, чтобы клиент имел возможность:

  • Добавить фото пользователя (Иконка)
  • Добавить имя пользователя (Заголовок поста)
  • Добавить текст (Тело поста)
  • Позиция клиента в компании (Выборочное поле или мета-область)

Первым делом мы добавили пользовательский тип поста, названный Приветствие, в котором всё есть, кроме одного поля (позиция клиента/компании). Если вы хотите добавить мета-область, то это ваше дело. Не будьте ленивыми, попробуйте сами добавить пару строк кода, чтобы сделать это!

Всё, что нужно сделать, это взять код снизу и сохранить его в пустой php файл, и назвать tooltip-testimonials.php.

<?php

//Add Image Size
add_image_size( 'testimonial-thumb', 96, 96, true ); // Hard Crop Mode

//Register Custom Post Types

add_action( 'init', 'register_cpt_testimonial' );

function register_cpt_testimonial() {

    $labels = array( 
        'name' => _x( 'Testimonials', 'testimonial' ),
        'singular_name' => _x( 'testimonial', 'testimonial' ),
        'add_new' => _x( 'Add New', 'testimonial' ),
        'add_new_item' => _x( 'Add New testimonial', 'testimonial' ),
        'edit_item' => _x( 'Edit testimonial', 'testimonial' ),
        'new_item' => _x( 'New testimonial', 'testimonial' ),
        'view_item' => _x( 'View testimonial', 'testimonial' ),
        'search_items' => _x( 'Search Testimonials', 'testimonial' ),
        'not_found' => _x( 'No testimonials found', 'testimonial' ),
        'not_found_in_trash' => _x( 'No testimonials found in Trash', 'testimonial' ),
        'parent_item_colon' => _x( 'Parent testimonial:', 'testimonial' ),
        'menu_name' => _x( 'Testimonials', 'testimonial' ),
    );

    $args = array( 
        'labels' => $labels,
        'hierarchical' => false,
        
        'supports' => array( 'title', 'editor', 'excerpt', 'author', 'thumbnail', 'custom-fields', 'revisions' ),
        
        'public' => true,
        'show_ui' => true,
        'show_in_menu' => true,
        'show_in_nav_menus' => true,
        'publicly_queryable' => true,
        'exclude_from_search' => false,
        'has_archive' => true,
        'query_var' => true,
        'can_export' => true,
        'rewrite' => true,
        'capability_type' => 'post'
    );

    register_post_type( 'testimonial', $args );
}

//Custom Meta Box

$key = "testimonial";
$meta_boxes = array(
"position" => array(
"name" => "position",
"title" => "Position and Company",
"description" => "Enter their position and their company name.")
);
 
function create_meta_box() {
global $key;
 
if( function_exists( 'add_meta_box' ) ) {
add_meta_box( 'new-meta-boxes', ucfirst( $key ) . ' Information', 'display_meta_box', 'testimonial', 'normal', 'high' );
}
}
 
function display_meta_box() {
global $post, $meta_boxes, $key;
?>
 
<div class="form-wrap">
 
<?php
wp_nonce_field( plugin_basename( __FILE__ ), $key . '_wpnonce', false, true );
 
foreach($meta_boxes as $meta_box) {
$data = get_post_meta($post->ID, $key, true);
?>
 
<div class="form-field form-required">
<label for="<?php echo $meta_box[ 'name' ]; ?>"><?php echo $meta_box[ 'title' ]; ?></label>
<input type="text" name="<?php echo $meta_box[ 'name' ]; ?>" value="<?php echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] ); ?>" />
<p><?php echo $meta_box[ 'description' ]; ?></p>
</div>
 
<?php } ?>
 
</div>
<?php
}
 
function save_meta_box( $post_id ) {
global $post, $meta_boxes, $key;
 
foreach( $meta_boxes as $meta_box ) {
$data[ $meta_box[ 'name' ] ] = $_POST[ $meta_box[ 'name' ] ];
}
 
if ( !wp_verify_nonce( $_POST[ $key . '_wpnonce' ], plugin_basename(__FILE__) ) )
return $post_id;
 
if ( !current_user_can( 'edit_post', $post_id ))
return $post_id;
 
update_post_meta( $post_id, $key, $data );
}
 
add_action( 'admin_menu', 'create_meta_box' );
add_action( 'save_post', 'save_meta_box' );

Это послужит началом первоначальной настройки того, что мы хотим иметь. Теперь нужно начать добавлять текст, после чего вы можете отобразить его. Вспомним ещё раз, какие элементы нам нужны:

  • Добавьте  фото пользователя (иконка/миниатюра записи). Мы советуем брать размер 96х96 пикселей.
  • Добавьте имя пользователя (Заголовок поста)
  • Добавьте текст (Тело поста)
  • Позиция клиента в компании (Мета-область)

Отображение в теме

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

  • Добавьте пользовательский код на jQuery в тему
  • Создайте пользовательский цикл, который будет отображать информацию в той структуре, которая вам нужна.
  • Добавьте больше стилей, чтобы всё это выглядело опрятней.

Сначала нужно скопировать и вставить данный код на jQuery в пустой файл и назвать его tooltip-testimonials.js:

jQuery(document).ready(function(){
     
    jQuery("#testimonials img[title]").tooltip({
 
       // tweak the position
       offset: [0, 0],
     
       // use the "slide" effect
       effect: 'slide'
     
    // add dynamic plugin with optional configuration for bottom edge
    }).dynamic({ bottom: { direction: 'down', bounce: true } });
     
});

Как только вы сделаете это, вам нужно загрузить этот файл в шапку вашей темы. Вы также можете отредактировать файл header.php вручную, вставив скрипт в область заголовка или же использовать функцию wp_enqueue_script. Давайте загрузим наш файл tooltip-testimonials.js в папку скриптов нашей темы. Если её нету, то создайте её и назовите scripts.

Добавьте следующий код к файлу functions.php вашей темы:

add_action('wp_enqueue_scripts', 'tooltip_enqueue_scripts');
function tooltip_enqueue_scripts() {
if (!is_admin()) {
    wp_register_script('jquery_tools', 'http://cdn.jquerytools.org/1.2.6/full/jquery.tools.min.js?ver=3.4.2', 'jquery', '3.4.2', true);
        wp_enqueue_script('jquery_tools');
 
    wp_register_script('tooltip', get_stylesheet_directory_uri() . '/scripts/tooltip-testimonials.js', 'jquery', '1', true);
        wp_enqueue_script('tooltip');
}
}

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


<div id="testimonials">
<div class="wrap">
<?php
$args = array( 'post_type' => 'testimonial', 'posts_per_page' => 6 );
$loop = new WP_Query( $args );
if ( $loop->have_posts() ) : while ( $loop->have_posts() ) : $loop->the_post();
$data = get_post_meta( $loop->post->ID, 'testimonial', true );
$user_image_url = wp_get_attachment_image_src( get_post_thumbnail_id($loop->post->ID), 'testimonial-thumb');
?>    
    <div class="testimonials">
        <p class="center"><img class="frame" src="<?php echo $user_image_url[0] ?>" title="<?php echo get_the_content(); ?>" alt="<?php echo get_the_title(); ?>" /></p>
        <p class="testimonials-title"><?php echo get_the_title(); ?></p>
        <p class="company"><?php echo $data[ 'position' ]; ?></p>
    </div>
<?php
endwhile; 
endif; ?>

</div>
</div>

Код цикла будет отображать 6 элементов на странице. Вы можете стилизовать их так, как вам хочется. Вы также можете добавить orderby = rand ,если у вас около 20 приветствий.

Теперь давайте добавим CSS стили, чтобы всё было красиво. Внизу вы можете найти стили CSS, которые мы использовали. Возможно вам нужно подкорректировать их, чтобы они соответствовали стилям вашей темы и цветовой схеме.

#testimonials .testimonials{width: 116px; float: left; margin: 35px 30px 0 0;}

#testimonials .center{text-align: center; margin: 0px 0 15px;; padding: 0px;}

#testimonials .center img{box-shadow: 0px 2px 2px #d2d2d2; -moz-box-shadow: 0px 2px 2px #d2d2d2; -webkit-box-shadow: 0px 2px 2px #d2d2d2; border: 3px solid #fff;}

#testimonials .testimonials-title{font-size: 14px; font-weight: 700; text-align: center; margin: 3px 0 0; padding: 0px;}

#testimonials .company{font-size: 12px; font-style: italic; text-align: center; margin: 0px; padding: 0px;}

#testimonials .tooltip {background: #111; color: #fff; width: 200px; padding: 20px; margin: 0 5px 20px;}

 


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


skiing-penguin

Как добавить скользящее меню в тему WordPress

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

WordPress

Внимание: Данная статья требует существенных знаний HTML и CSS.

Замена стандартного меню на скользящее

Цель статьи — показывать скользящее меню пользователям на небольших экранах, и в то же время показывать стандартное меню для пользователей настольных компьютеров, чтобы они могли видеть полное меню. Перед тем, как мы начнём, важно знать, что существует множество тем под WordPress и придётся столкнуться с CSS чуть позже.

Первым делом вам нужно открыть редактор на вашем компьютере и создать новый файл. Скопируйте и вставьте код:

(function($) {
$('#toggle').toggle( 
    function() {
        $('#popout').animate({ left: 0 }, 'slow', function() {
            $('#toggle').html('<img src="http://www.example.com/wp-content/themes/your-theme/images/menu.png" alt="close" />');
        });
    }, 
    function() {
        $('#popout').animate({ left: -250 }, 'slow', function() {
            $('#toggle').html('<img src="http://www.example.com/wp-content/themes/your-theme/images/menu.png" alt="close" />');
        });
    }
);
})(jQuery);

Замените example.com своим доменным именем, а также замените your-themeназванием вашей темы. Сохраните этот файл как slidepanel.js на своём рабочем столе. Этот код использует jQuery для включения скользящего меню, а также создаёт анимацию перехода.

Откройте FTP клиент, например Filezilla и подключитесь к своему сайту. Далее, перейдите в папку вашей темы. Если в есть папка js, то откройте её, если нету, то создайте её и загрузите файл slidepanel.js в эту папку.

Следующим делом, вам надо создать или найти иконку меню. Обычно используют такую иконку с тремя линиями. Вы можете создать её, используя PhotoShop или же найти её в интернете. Для данной статьи, мы используем иконку размером 27х23 пикселя. Как только у вас будет иконка, переименуйте её в menu.png и загрузите в папку с картинками в директории вашей темы.

Следующим шагом будет добавление файла JavaScript для скользящего меню в WordPress. Просто скопируйте и вставьте этот код в файл вашей темы functions.php.

wp_enqueue_script( 'wpb_slidepanel', get_template_directory_uri() . '/js/slidepanel.js', array('jquery'), '20131010', true );

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

<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?>

Цель — завернуть навигационное меню в HTML код, чтобы показывать ваше навигационную панель на маленьких экранах. Мы вставим его между <div id="toggle"> и <div id="popout">. Вот так:



<div id="toggle"><img src="http://www.example.com/wp-content/themes/your-theme/images/menu.png" alt="Show" /></div>




<div id="popout">
<?php wp_nav_menu( array( 'theme_location' => 'primary', 'menu_class' => 'nav-menu' ) ); ?>
</div>


Замените example.com на ваше имя домена и your-theme на имя папки вашей темы. Сохраните изменения.

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

@media screen and (min-width: 769px) { 
#toggle {
display:none;
}

} 

@media screen and (max-width: 768px) { 
#popout {
position: fixed;
height: 100%;
width: 250px;
background: rgb(25, 25, 25);
background: rgba(25, 25, 25, .9);
color: white;
top: 0px;
left: -250px;
overflow:auto;
}


#toggle {
float: right;
position: fixed;
top: 60px;
right: 45px;
width: 28px;
height: 24px;

}

.nav-menu li { 
border-bottom:1px solid #eee; 
padding:20px;
width:100%;
}

.nav-menu li:hover { 
background:#CCC;
}

.nav-menu li a { 
color:#FFF;
text-decoration:none;
width:100%;
}
} 

Помните, что навигационное меню вашей темы может использовать другие CSS классы и это может вызвать конфликт. Вы можете отладить данные проблемы, используя средство Chrome Inspector, чтобы обнаружить, какие классы css конфликтуют с вашими стилями. Поиграйтесь с CSS, чтобы достичь желаемого результата.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


Chalk writing - Visiting web site

Как активировать пользовательские постоянные ссылки в условиях локального сервера WordPress?

Существует такая проблема, что когда наши пользователи сталкиваются с инсталляциями WordPress на локальном сервере, то у них не получается переписать правила работы постоянных ссылок. И хотя они пробовали включить пользовательские постоянные ссылки, они всё равно получали ошибку 404.

Чтобы избавиться от этой проблемы, нужно включить переписывающий модуль в инсталляции WAMP, XAMPP или MAMP. Начните с поиска иконки WAMP панели задач и перейдите в Apache » Apache modules.

WordPress

Это вызовет длинный список с модулями, которые вы можете показывать или не показывать. Найдите модуль “rewrite_module” и выделите его.

WordPress

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

Альтернативно вы можете указать на локальный сервер. Перейдите в папку с apache, после перейдите в папку конфигурации “conf”. Найдите файл httpd.conf. Найдите в нём такую строку:

#LoadModule rewrite_module modules/mod_rewrite.so

Просто избавьтесь от знака решётки вначале, должно получиться так:

LoadModule rewrite_module modules/mod_rewrite.so


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


pexels-photo-121734

Как установить и настроить мультисайтовую систему WordPress

Многие из наших пользователей быстро учатся, как управлять несколькими сайтами WordPress самостоятельно. Некоторые даже начинают помогать с управлением сайта WordPress клиентам, друзьям или членам семьи. Недавно один из наших пользователей спросил, как установить и настроить мультисайт WordPress. У него было несколько сайтов WordPress на под-доменах, и его интересовала возможность управления всеми сайтами вместе. В этой статье мы покажем, как установить и настроить мультисайтовую систему WordPress.

Что такое мультисайт WordPress?

Мультисайтовая система WordPress позволяет вам управлять несколькими сайтами WordPress с одной установкой WordPress. Вы можете мгновенно создавать новые сайты и контролировать их, используя одни и те же имя пользователя и пароль. Вы также можете предоставить другим пользователям возможность зарегистрироваться и создать собственный блог на вашем домене.

Плюсы использования мультисайтовой системы

  • В качестве администратора системы вы можете без труда контролировать несколько сайтов из одной панели управления.
  • Каждый сайт может иметь своих админов с правом на управление сайтом.
  • Плагины и темы устанавливаются с единой загрузки.
  • Мультисайтовая система также упрощает обновления. Вы можете обновлять WordPress, плагины и темы с единой загрузки.

Минусы использования мультисайтовой системы

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

Кому необходима мультисайтовая система

То, что у вас есть несколько сайтов WordPress, еще не значит, что вам нужно создавать мультисайтовую систему. Мы можете пользоваться такими сервисами, как Manage WP или Infinite WP, чтобы управлять несколькими отдельными сайтами.

Создание мультисайтовой системы имеет смысл для:

  1. Онлайн-журналов, разными разделами которых управляют разные команды.
  2. Бизнес сайтов с под-сайтами для разных филиалов и мест расположения.
  3. Государственных и некоммерческих сайтов, которые могут использовать мультисайт для разных департаментов и регионов.
  4. Вашей собственной сети блогов, размещенных на нескольких под-доменах.
  5. Школ и университетов, которые могут позволить студентам создавать собственные блоги на школьных серверах.

Требования для мультисайтовой системы

Самое главное, что вам потребуется для мультисайтовой системы, – это хороший хостинг WordPress. Если вы не планируете создавать много сайтов и не ожидаете огромного количества посетителей, то можете обойтись общим хостингом. Однако в силу особенностей мультисайта, в ходе роста вашего сайта вам скорее всего потребуется VPS или виртуальный выделенный сервер.

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

Мы работали с SiteGround и InMotion Hosting, которые также предоставляют отличный сервис.

Кроме веб-хостинга, вам понадобится базовые знанния об установке WordPress и редактировании файлов с использованием FTP.

Выбор доменной структуры для мультисайтовой системы

Ваши сайты в мульстисайтовой системе WordPress могут быть установлены либо на под-доменах, либо в под-директориях.

Если вы выбрали под-домены, вам нужно будет настроить wildcard для под-доменов на своем сервере (мы покажем, как вы можете это сделать ниже).

С другой стороны, если вы хотите создать под-директории или URL, основанные на путях, для под-сайтов в вашей сети, то единственное, что вам нужно будет сделать – разрешить “красивые” ссылки на корневом сайте.

Настройка под-домена wildcard

Зайдите на свой веб-хостинговый аккаунт, и вы увидите панель управления cPanel. Спуститесь вниз к разделу доменов и нажмите на Subdomains.

cpanel-subdomains

В следующем окне вам нужно ввести символ * в поле под-домена и выбрать ваш основной домен из ниспадающего меню. cPanel автоматически обнаружит корневой документ и отобразит его в поле снизу. Теперь нажмите на кнопку create, чтобы создать под-домен wildcard.

wildcard-subdomains

Включение функции мультисайтовой системы WordPress

Функция мультисайтовой системы встроена в WordPress. Все, что вам нужно сделать, – это установить и настроить WordPress по обычной схеме. Читайте наш урок о том, как установить WordPress, если вам требуется помощь.

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

Чтобы включить функцию мультисайта, вам нужно зайти на ваш сайт через FTP-клиент или менеджер файлов cPanel и открыть файл wp-config.php.

Вам нужно добавить эту строку в файл wp-config.php перед строкой /*That’s all, stop editing! Happy blogging.*/.

/* Multisite */
define( 'WP_ALLOW_MULTISITE', true );

Сохраните и загрузите ваш файл wp-config.php обратно на сервер. Теперь ваш WordPress поддерживает мультисайтовую систему.

Установка системы

Теперь, когда вы включили функцию мультисайтовой системы на вашем сайте WordPress, пришло время настроить систему. Прежде чем начать, деактивируйте все плагины на своем сайте. После этого вам нужно зайти в Tools > Network Setup, чтобы настроить мультисайтовую систему.

network-setup

В окне настройки системы вы увидите оповещение о том, что вам нужно установить модуль Apache mod_rewrite на своем сервере, чтобы настроить мультисайтовую систему. У большинства хороших хостинг провайдеров WordPress этот модуль установлен и включен.

Следующий шаг – сообщить WordPress о том, какую доменную структуру вы хотите использовать для сайтов в вашей системе, т.е. под-домены или под-директории. После этого вам нужно ввести название вашей системы и убедиться, что в Network Admin Email стоит правильный имейл. Наконец, нажмите на кнопку install, чтобы продолжить.

В следующем окне WordPress покажет вам правила, которые нужно будет добавить в файлы wp-config.php и .htaccess. Используйте FTP-клиент, чтобы отредактировать оба этих файла и вставить код.

Настройки системы

После успешной установки мультисайтовой системы вам нужно переключиться на панель управления системой, чтобы проставить настройки, добавить новые сайты и многое другое. Поставьте курсор на меню My Sites в панеле инструментов администратора – перед вами появится выпадающее меню. Нажмите на Network Admin > Dashboard.

network-admin

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

multisite-dashboard

Чтобы настроить систему, нажмите на ссылку Settings в боковом меню администратора. Первая опция на экране настроек системы – название сайта и имейл администратора. Эти поля будут заполнены названием системы и имейлом, который вы ввели во время установки.

Разрешение регистрации в мультисайтовой системе

Раздел Registration Settings в окне настроек системы – это пожалуй самый важный пункт во всей установке. По умолчанию регистрация будет отключена и для пользователей, и для сайтов. Вы можете открыть ваш сайт для регистрации пользователей, разрешить существующим пользователям создавать новые сайты или и то, и другое сразу.

registration-settings

Вы можете отметить бокс рядом с Registration Notification, чтобы получать оповещения на имейл при каждой новой регистрации пользователя или сайта.

Если вы хотите разрешить администраторам сайта добавлять новых пользователей на свой сайт, то можете отметить бокс рядом с Add New Users.

Опция Limited Email Registration позволит вам разрешить регистрации пользователей и сайтов только для имейлов с определенными доменами, которые вы можете сюда добавить. Это особенно полезно, если вы хотите разрешить регистрацию и создание новых пользователей и сайтов только для людей из вашей собственной организации. Вы также можете запретить регистрацию для определенных доменов.

limitemaildomains

Настройки для новых сайтов

Раздел New Site Settings в окне настроек системы позволяет вам сконфигурировать опции по умолчанию для новых сайтов, созданных в вашей системе. Вы можете модифицировать приветственные имейлы и содержание дефолтных постов, страниц и комментариев.

newsite-settings

Настройки загрузок

Важно следить за тратой своих серверных ресурсов. В разделе Upload Settings вы можете поставить ограничение на общее количество места, которое сайт может использовать для загрузок. Размер по умолчанию – 100 MB, чего хватит по меньшей мере на 100 фотографий. Вы можете увеличить или уменьшить этот параметр в зависимости от того, сколько у вас есть пространства на диске.

uploadsettings

Типы файлов по умолчанию – изображения, аудио/видео и pdf. Вы можете добавить дополнительные типы файлов, если хотите, например doc, docx, odt. Наконец, вы можете ограничить размер файла, чтобы пользователи не имели возможности загружать на сервер безумно большие файлы.

Настройки меню

В настройках меню вы найдете опцию Enable administration menus для раздела плагинов на сайтах системы. Это позволит админам сайта увидеть меню плагинов. Они смогут активировать и деактивировать плагин на своем отдельном сайте, но не смогут устанавливать новые плагины.

enable-plugin-menu

Добавление новых сайтов в мультисайтовую систему WordPress

Чтобы добавить новый сайт в ваш мультисайт WordPress, просто нажмите на Sites в меню My Sites > Network Admin в панеле администратора.

network-sites

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

addnewsite

В окне Add New Site вам нужно ввести адрес сайта. Вам не нужно впечатывать полный адрес, достаточно той части, которую вы хотите использовать как под-домен или под-категорию. После этого введите название сайта, и добавьте имейл администратора сайта.

addnewsite1

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

Как только вы с этим разобрались, нажмите на кнопку Add Site. В вашу мультисайтовую систему будет добавлен новый сайт. Будучи администратором системы, вы получите имейл о новой регистрации. Если вы создали нового пользователя, то этот пользователь получит свои имя пользователя и пароль с инструкциями о регистрации на тот имейл, который вы ввели.

Добавление тем и плагинов в мульстисайтовой системе

По умолчанию администраторы отдельных сайтов не могу устанавлить темы и плагины самостоятельно. Вы, как администратор системы, можете устанавливать плагины и темы за них и сделать эти темы/плагины для них доступными. Чтобы сделать это, вам надо зайти на ваш главный сайт и открыть My Sites > Network Admin > Themes.

multisite-themes

В окне Network Admin вы увидите список установленных на вашем мультисайте тем на данный момент. Вы можете открыть доступ к этим темам, нажав на Enable Network под темой. По такому же принципу вы можете запретить тему, нажав на Disable Network под ней.

enable-disable-themes

Вы также можете активировать и деактивировать плагин для всей системы в окне My Sites > Network Admin > Plugins. Имейте в виду, что если вы разрешили администраторам сайтов доступ к плагинам в Network Settings, то они смогут активировать или деактивировать плагины самостоятельно.
activate-plugins-multisite

Устранение неполадок на мультисайте WordPress

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

Еще одна распространенная проблема – при использовании мультисайта WordPress с под-директориями, некоторые пользователи не могут войти в раздел администратора на своем сайте после добавления кода в файл wp-config.php. Чтобы исправить это, попробуйте заменить строку define(‘SUBDOMAIN_INSTALL’, false); в файле wp-config.php на define(‘SUBDOMAIN_INSTALL’, ‘false’);

Мы надеемся, что эта статья помогла вам установить и настроить мульстисайтовую систему WordPress.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520


canstockphoto20514218

Как создать пользовательский виджет на WordPress

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

Что такое виджет для WordPress?

WordPress виджеты изначально создавались для предоставления лёгкого способа управления дизайном и структурой темы. Интересно также то, что вы можете перетащить виджет на любую боковую панель или область для виджетов вашего сайта. Это даёт больше свободы для разработчиков плагинов и тем. Они могут добавить функционал в свои продукты и дают возможность пользователям решать, когда и где использовать эти функции без какой-либо головной боли с кодом. Также пользователь может создать свой собственный виджет в специальном плагине, и вы сможете перетащить его на любую тему, которую вы используете.

WordPress

Создание виджета в WordPress

Перед тем как начать, было бы хорошо, если вы создадите сайт-специфический плагин, куда вы будете вставлять код виджета. Вы также можете вставлять его в файл вашей темы functions.php. Но сайт-специфический плагин лучше.

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

// Создание виджета
class wpb_widget extends WP_Widget {

function __construct() {
parent::__construct(
// Base ID of your widget
'wpb_widget', 

// Имя виджета появится в UI
__('Our Widget', 'wpb_widget_domain'), 

// Описание виджета
array( 'description' => __( 'Наш простой виджет', 'wpb_widget_domain' ), ) 
);
}

// Здесь происходит работа виджета
public function widget( $args, $instance ) {
$title = apply_filters( 'widget_title', $instance['title'] );
// before and after widget arguments are defined by themes
echo $args['before_widget'];
if ( ! empty( $title ) )
echo $args['before_title'] . $title . $args['after_title'];

// Здесь работает код и выводится результат
echo __( 'Hello, World!', 'wpb_widget_domain' );
echo $args['after_widget'];
}
		
// Конец виджета
public function form( $instance ) {
if ( isset( $instance[ 'title' ] ) ) {
$title = $instance[ 'title' ];
}
else {
$title = __( 'New title', 'wpb_widget_domain' );
}
// Форма администратора виджета
?>


<label for="<?php echo $this->get_field_id( 'title' ); ?>"><?php _e( 'Title:' ); ?></label> 
<input class="widefat" id="<?php echo $this->get_field_id( 'title' ); ?>" name="<?php echo $this->get_field_name( 'title' ); ?>" type="text" value="<?php echo esc_attr( $title ); ?>" />


<?php 
}
	
// Обновление виджета
public function update( $new_instance, $old_instance ) {
$instance = array();
$instance['title'] = ( ! empty( $new_instance['title'] ) ) ? strip_tags( $new_instance['title'] ) : '';
return $instance;
}
} // Класс wpb_widget заканчивается здесь

// Регистрация и загрузка виджета
function wpb_load_widget() {
	register_widget( 'wpb_widget' );
}
add_action( 'widgets_init', 'wpb_load_widget' );

Теперь перейдите в Appearance » Widgets, перетащите наш виджет на вашу боковую панель, чтобы увидеть виджет в действии.

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

Осталось лишь пара вещей, которые вы можете нам задать. Например, что делает wpb_text_domain? WordPress использует gettext для управления переводами и локализациями. Этот wpb_text_domain и __e сообщают gettext , чтобы он делал строку доступной для перевода. Посмотрите также нашу статью, как найти и перевести тему для WordPress.

Надеемся эта статья помогла вам научится создавать пользовательские виджеты на WordPress.


Наша специальность — разработка и поддержка сайтов на WordPress. Контакты для бесплатной консультации — [email protected], +371 29394520