Архив рубрики: WordPress

Вывод произвольных типов записей и полей в WordPress на сайте.

Вывод произвольных типов записей в WordPress рассматриваю на примере темы Understrap.

Произвольные типы записей и поля:

Добавление произвольных типов записей в WordPress (чуть позже напишу о Pods)

Вывод произвольных типов записей в WordPress

Добавление произвольных полей к записям в WordPress

Вывод произвольных полей в записях WordPress

Вывод (отображение) произвольных типов записей в WordPress

Открываем папку с активной темой в любимом редакторе (я люблю VS Code). В примере я использую тему understrap (https://github.com/understrap/understrap). Поэтому если будете повторять за мной, рекомендую тренироваться именно на этой теме. Пояснять буду на примере пользовательского портфолио.

  1. Кастомные поля решил попробовать создавать при помощи плагина Pods (https://docs.pods.io/). Создал поле с именем «Работы» (works).
  2. Создал страницу отвечающую за вывод постов из кастомного раздела — в папке page-templates works-template.php. В шапке прописываю имя шаблона и из админки WP создаю новую страницу и шаблоном выбираю его.

  

- Template Name: Template: Works
-
- Template for displaying a page without sidebar even if a sidebar widget is published.
-
- @package UnderStrap

Публикую страницу.

Вывод произвольных типов записей в WordPress на сайте

Вношу изменения в страницу works-template.php

Что-то типа:

$posts = get_posts("post_type=works&orderby=date&numberposts=5");
if ($posts) : ?>
                 foreach ($posts as $post) : setup_postdata($post);
the_title(); 
the_post_thumbnail(); 
the_excerpt();
endforeach;
           endif;

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

Готово. Если вы все сделали правильно, то задача минимум достигнута. Мы вывели произвольные типы записей — из раздела «Работы» на страницу сайта. Дальше можно заняться деталями. А именно, чтобы наши полноценные записи выводились в нужной нам верстке, а не в стандартной для шаблона.

  1. Вывод произвольных типов записей в отдельном шаблоне

В корне темы создаю файл single-works.php и копирую в него код из single.php. Найдя строчки типа

get_template_part( 'loop-templates/content', 'single' );

я поменяю на свой шаблон — single-works.

Создаю файл content-single-works.php в папке loop-templates. Копирую в него код из content-single.php и меняю под нужную мне верстку Теперь «Работы» выводятся по шаблону content-single-works.php. Если необходимо изменить разметку, стили, то правим именно его.

Если мы все сделали правильно, то теперь имеем раздел для контента, который выводится со своей индивидуальной версткой.



2021-01-30T13:20:43
WordPress

Повышаем производительность WordPress

Большинство исследований показывают, что пользователи очень нетерпеливы и покидают сайт, если он не загрузился за 4 секунды или даже меньше. Мы находимся в эпоху, когда все должно быть быстрым, и пользователи просто не хотят ждать загрузки страницы. Это особенно верно для пользователей мобильных устройств.

WordPress – отличная CMS, которая поможет вам легко создавать красивые веб-сайты или блоги без необходимости платить веб-разработчику. Проблема с WordPress в том, что она может стать очень медленной из-за многих факторов. Новая установка WordPress, использующая одну из тем по умолчанию и минимум плагинов, может очень быстро загружаться и получать хорошие оценки Google Speed и Yahoo! YSlow.

Это пример чистого блога, использующего тему по умолчанию.

Значение слева – это показатель Google Page Speed, а значение справа – показатель Yahoo! YSlow. Двойной A – зеленый 97% и 87%. Время загрузки страницы составляет 0,9 секунды. Если вы получаете высокие баллы, подобные этим, вы можете гордиться собой, и ваши посетители могут быть счастливы!

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

Экономия на стоимости хостинга

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

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

Как увеличить скорость сайта WordPress

Для повышения скорости работы сайтов обычно выделяются три основные категории:

  1. Hardware
  2. Software
  3. Network

Мы сосредоточимся на программной части. Программное обеспечение включает в себя два основных аспекта: бэкэнд и Фронтэнд. Бэкэнд включает в себя оптимизацию баз данных и серверного код, такого как PHP и Java. Тем не менее, мы приложим максимум усилий для оптимизации внешнего интерфейса. Они включают в себя HTML, изображения, JavaScript и CSS-файлы и составляют 90% времени, необходимого для загрузки веб-сайта!


[bs_notification type=”danger” dismissible=”false”]Пожалуйста, создайте резервную копию WordPress перед началом процесса оптимизации. Это очень важно!!![/bs_notification]

Тест скорости WordPress

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

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

Neustar

  1. Зайдите на страницу http:// browsermob.com/ free-website-performance-test

  2. Введите ссылку на страницу которую вы хотите протестировать
  3. Run Instant Test
  4. Сохраните результат в PDF

GT Metrix

  1. Зайдите на страницу http://gtmetrix.com/
  2. Введите ссылку на страницу которую вы хотите протестировать
  3. Сохраните получившейся результат

Google Page Speed Online

 


Оптимизация картинок

Оптимизация изображения очень важна для ускорения вашего блога. Изображения в вашем блоге, могут быть слишком велики для настольных и мобильных устройств. Даже если вы тщательно сохранили свои изображения для Интернета с помощью Photoshop, Gimp, Acorn или другого графического программного обеспечения, вы будете удивлены, увидев, сколько килобайт вы все еще можете сохранить с помощью метода, который я собираюсь вам показать. Надеюсь, вам не придется оптимизировать каждое изображение отдельно. Это было бы огромной работой, особенно если у вас уже есть тысячи изображений в вашем блоге.

Вам нужно решение, которое может оптимизировать ваши существующие изображения в медиабиблиотеке, но также и любые новые изображения, которые вы загружаете автоматически. Решение заключается в использовании плагина под названием «EWWW Image Optimizer».

EWWW Image Optimizer

Есть несколько плагинов, которые делают то же самое, но EWWW один из лучших.

Преимущества использования EWWW Image Optimizer:

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

  • Вы можете оптимизировать сотни изображений всего за несколько минут.

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

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

Установка EWWW Image Optimizer

Установите плагин (Плагины -> Добавить новый)

Давайте посмотрим на «Базовые настройки».

Единственное, что вам нужно сделать, это проверить «Remove metadat» и ввести «Bulk Delay», которая будет работать на вашем сервере. Если ваш блог работает на Шаред хостинге, вы можете выбрать 5, 6 или 10 секунд. Если же ваш блог работает на VPS или выделенном сервере, паузы в 3 секунды должно быть достаточным.

Игнорируйте «Cloud Settings», «Advanced Settings» и «Conversion Settings», так как их настройки по умолчанию удовлетворят большинство пользователей.

Оптимизация изображений из медиабиблиотеки

Существует два способа оптимизации существующих изображений.

Первый способ. Перейдите в «Media Library» и оптимизируйте каждое изображение по одному. Нажмите «Библиотека». Обратите внимание: в «Медиабиблиотеку» добавлен новый раздел «Оптимизатор изображений». На снимке экрана выше показано, что исходные изображения не обрабатывались и указывают размер каждого изображения. Давайте нажимаем ссылку «Optimize now!» И посмотрим, что произойдет.

Как вы видите, изображения были уменьшены на 2,1%, что составляет экономию в 42,7 KB.

Другой способ оптимизации изображений из медиабиблиотеки – выбрать изображения, которые вы хотите, и выбрать опцию «Bulk Optimize» и нажать «Apply».

Массовая оптимизация изображений

В меню «Медиафайлы» выберите «Bulk Optimize».  Введите длительность паузы между обработкой изображений и нажмите «Start optimizing». Оптимизация начинается сразу. Каждое изображение, имеющееся в вашей медиабиблиотеке, имеет копии самого разного размера, и все они оптимизируются в случае необходимости.

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

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

  • Вы можете видеть ход оптимизации и можете остановить процесс в любое время, нажав кнопку «Stop Optimizing».

На той же странице «Bulk Optimize» найдите эту область и нажмите «Scan and optimize».

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

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

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

Всегда определять атрибуты widht и height изображений

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

Всегда показывать размер изображений

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

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

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

Используйте правильные форматы изображений

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

Лучшие форматы: PNG 8/24 бит, JPEG, GIF (когда изображение действительно мало). Иллюстрации и графика с меньшим количеством цветов отлично работают с PNG 8 бит. Фотографии и изображения, содержащие больше цветов, обычно должны быть сохранены в формате JPEG.

Есть программное обеспечение для оптимизации изображений.

 



2020-12-04T19:48:13
Без рубрики

Пинг сервисы обновления wordpress 2020

Составил и отсортировал повторяющиеся пинг сервисы для блогов WordPress в 2020 году. Копируйте и пользуйтесь моим списком пинг сервисов чтобы ускорить индексацию.




Пинг сервисы WordPress 2020




Чтобы ускорить индексацию сайта поисковым системам нужно каким-то образом сообщить про обновление. Делают это через пинг сервисы. Раньше я использовал более 200 пинг сервисов, но сегодня в 2020 году я оставил только рабочие и не повторяющиеся, который занес в этот список.




http://api.my.yahoo.co.jp/RPC2 
http://audiorpc.weblogs.com/RPC2 
http://blog.goo.ne.jp/XMLRPC 
http://blogpeople.net/ping 
http://blogpeople.net/servlet/weblogUpdates 
http://blogsearch.google.ae/ping/RPC2
http://blogsearch.google.at/ping/RPC2
http://blogsearch.google.be/ping/RPC2
http://blogsearch.google.bg/ping/RPC2
http://blogsearch.google.ca/ping/RPC2
http://blogsearch.google.ch/ping/RPC2
http://blogsearch.google.cl/ping/RPC2
http://blogsearch.google.co.cr/ping/RPC2
http://blogsearch.google.co.hu/ping/RPC2
http://blogsearch.google.co.id/ping/RPC2
http://blogsearch.google.co.il/ping/RPC2
http://blogsearch.google.co.in/ping/RPC2 
http://blogsearch.google.co.jp/ping/RPC2
http://blogsearch.google.co.ma/ping/RPC2
http://blogsearch.google.com.ar/ping/RPC2
http://blogsearch.google.com.au/ping/RPC2
http://blogsearch.google.com.br/ping/RPC2
http://blogsearch.google.com.co/ping/RPC2
http://blogsearch.google.com.do/ping/RPC2
http://blogsearch.google.com.mx/ping/RPC2
http://blogsearch.google.com.my/ping/RPC2
http://blogsearch.google.com.pe/ping/RPC2
http://blogsearch.google.com/ping/RPC2
http://blogsearch.google.com.sa/ping/RPC2
http://blogsearch.google.com.sg/ping/RPC2
http://blogsearch.google.com.tr/ping/RPC2
http://blogsearch.google.com.tw/ping/RPC2 
http://blogsearch.google.com.ua/ping/RPC2
http://blogsearch.google.com.uy/ping/RPC2
http://blogsearch.google.com.vn/ping/RPC2
http://blogsearch.google.co.nz/ping/RPC2
http://blogsearch.google.co.th/ping/RPC2
http://blogsearch.google.co.uk/ping/RPC2
http://blogsearch.google.co.ve/ping/RPC2
http://blogsearch.google.co.za/ping/RPC2
http://blogsearch.google.de/ping/RPC2
http://blogsearch.google.es/ping/RPC2
http://blogsearch.google.fi/ping/RPC2
http://blogsearch.google.fr/ping/RPC2
http://blogsearch.google.gr/ping/RPC2
http://blogsearch.google.hr/ping/RPC2
http://blogsearch.google.ie/ping/RPC2
http://blogsearch.google.it/ping/RPC2
http://blogsearch.google.jp/ping/RPC2
http://blogsearch.google.lt/ping/RPC2
http://blogsearch.google.nl/ping/RPC2
http://blogsearch.google.pl/ping/RPC2
http://blogsearch.google.pt/ping/RPC2
http://blogsearch.google.ro/ping/RPC2
http://blogsearch.google.ru/ping/RPC2
http://blogsearch.google.se/ping/RPC2
http://blogsearch.google.sk/ping/RPC2
http://blogsearch.google.us/ping/RPC2
http://blogshares.com/rpc.php 
http://blo.gs/ping.php
http://blogs.yandex.ru/
http://geourl.org/ping 
http://godesigngroup.com/blog/feed/ 
http://ipings.com 
http://lasermemory.com/lsrpc
http://mod-pubsub.org/kn_apps/blogchatt 
http://mod-pubsub.org/kn_apps/blogchatter/ping.php 
http://mod-pubsub.org/ping.php 
http://ping.amagle.com 
http://ping.bitacoras.com 
http://ping.bloggers.jp/rpc/
http://ping.blogs.yandex.ru/RPC2
http://pinger.onejavastreet.com 
http://ping.fc2.com/
http://ping.feedburner.com
http://ping.rootblog.com/rpc.php 
http://ping.rss.drecom.jp/
http://rpc.bloggerei.de/ping/ 
http://rpc.icerocket.com:10080/ 
http://rpc.pingomatic.com
http://rpc.twingly.com
http://rpc.weblogs.com/RPC2
https://blog.goo.ne.jp/XMLRPC
http://services.newsgator.com/ngws/xmlrpcping.aspx 
https://rpc.bloggerei.de/ping/
http://wasalive.com/ping/ 
http://www.blogdigger.com/RPC2
http://www.blogpeople.net/servlet/weblogUpdates 
http://www.blogshares.com/rpc.php 
http://www.godesigngroup.com 
http://www.lasermemory.com/lsrpc 
http://www.mod-pubsub.org/kn_apps/blogchatter/ping.php 
http://www.ping.blo.gs/ 
http://www.pingerati.net 
http://www.pingmyblog.com
http://www.rpc.technorati.jp/rpc/ping 
http://www.wasalive.com/ping/ 
http://www.xmlrpc.bloggernetz.de/RPC2 
http://xmlrpc.bloggernetz.de/RPC2 
http://xping.pubsub.com/ping/





2020-09-11T23:25:32
WordPress

Получите ваш контент WordPress индексированный немедленно с помощью плагина Bing Webmaster Tools

Выпущен плагин Bing URL Submissions для WordPress в качестве проекта с открытым исходным кодом. Плагин позволяет вебмастерам сайтов yf WordPress легко, автоматически и сразу же индексировать свой контент Bing, как только он будет опубликован! Кто в SEO-сообществе не мечтал о такой способности?

С прошлого года вебмастеры имеют возможность отправлять до 10 000 URL-адресов в день и многое другое, если потребуется, через портал инструментов веб-мастера Bing, а также API инструментов веб-мастера Bing для немедленного обхода и индексации. Сегодня мы сделали эту подачу очень простой для сайтов WordPress, выпустив плагин Bing Webmaster Tools WordPress. После установки и настройки с помощью ключа API, полученного от портала Bing Webmaster, плагин обнаруживает как обновления страниц, так и новые страницы, созданные в WordPress, и автоматически отправляет URL-адреса за кулисы в наш API инструментов Bing Webmaster, гарантируя, что страницы сайта всегда свежи в индексе Bing.

Некоторые другие удобные функции, включенные в плагин:

  • Возможность включения и выключения функции автоматической отправки.
  • ​Вручную отправьте URL-адрес в индекс Bing.
  • Просмотр списка последних URL-адресов, отправленных плагином.
  • Повторите попытку всех неудачных представлений из списка последних представлений.
  • Загрузить последние URL-адреса для анализа.

Следуйте этим инструкциям в 2 простых шага, чтобы установить плагин WordPress и наслаждаться автоматической индексацией в реальном времени в поисковой системе Bing вашего контента в CMS WordPress.

Найдите плагин в панели Плагинов в WordPress: Bing URL Submissions Plugin.

Добавьте свой ключ API Bing Webmaster Tools для активации.



2020-09-11T22:52:05
Bing

Обновление php до верси 7.4.9 на UBUNTU server 18.04 LTS с Apache 2

Для начала вы можете проверить версию php в ваших репах




Устанавливаем новую версию php:




sudo apt-get install php7.4
sudo apt-get install libapache2-mod-php7.4
sudo apt-get install php7.4-mysql
sudo apt-get install php7.4-curl
sudo apt-get install php7.4-gd
sudo apt-get install php7.4-imagick
sudo apt-get install php7.4-snmp
sudo apt-get install php7.4-imap
sudo apt-get install php7.4-recode
sudo apt-get install php7.4-zip
sudo apt-get install php-pear
sudo apt-get install php7.4-memcache
sudo apt-get install libapache2-mod-php7.4
sudo apt-get install php7.4-bcmath 




После этого нужно включить новую версию модуля apache:




a2dismod php7.3
a2enmod php7.4
service apache2 restart




Ну и в самом конце не мешало бы переместить свои настройки php




cp /etc/php/7.3/apache2/php.ini /etc/php/7.4/apache2/php.ini 
service apache2 restart






2020-09-02T20:46:40
wordpress

[РЕШЕНО] ошибка “data-vocabulary.org” в WordPress на Linux

Сегодня в статье разберемся как можно исправить ошибку “data-vocabulary.org” в WordPress. Google анонсировали, отключение поддержки словаря data-vocabulary. Из-за этого многие в консоли получают ошибки, связанные с этим. Пока что – это предупреждения, чтобы успеть с этим что-то сделать. Но в будущем может оказаться и серьезной ошибкой для поисковых роботов от Google. Поэтому давайте разберемся как исправить ошибку “data-vocabulary.org” в WordPress.




Для начала нам необходимо найти файлы где присутствует надпись разметки data-vocabulary.org.




Для этого открываем терминал и набираем следующий текст:




grep -R --color data-vocabulary.org /var/www/




Данная команда рекурсивно пробежится по всем категориям и найдет в файлах нашу заветную фразу data-vocabulary.org. Вот пример вывода:




/var/www/public_html/wp-content/mythemes/template-parts/content-single.php:<div class="breadcrumb" xmlns:v="http://rdf.data-vocabulary.org/#"><?php mytheme_breadcrumb(); ?></div> 




У вас вывод конечно же будет отличаться, но суть остается та же. Из вывода видно какой файл необходимо открыть на редактирование. В файле необходимо произвести замену data-vocabulary.org на schema.org




Меняем микроразметку со словаря data-vocabulary на schema.org




Вот парочка примеров:




Новый вариант разметки со словарём schema.org

<?php mytheme_set_post_views( get_the_ID() ); ?>
<article id="post-<?php the_ID(); ?>" <?php post_class(); ?>>
        <div class="breadcrumb" xmlns:v="http://schema.org/BreadcrumbList"><?php mytheme_breadcrumb(); ?></div>
        <header class="entry-header">
                <?php the_title( '<h1 class="entry-title">', '</h1>' ); ?>
...




или вот.




Старый вариант разметки по data-vocabulary.org

<div class="breadcrumbs">
  <span itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
    <a href="https://obu4alka.ru/" itemprop="url">
      <span itemprop="title">Obu4alka.ru</span>
    </a> ›
    <span itemprop="child" itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
      <a href="https://obu4alka.ru/home" itemprop="url">
        <span itemprop="title">Главная</span>
      </a> ›
      <span itemprop="child" itemscope itemtype="http://data-vocabulary.org/Breadcrumb">
        <a href="https://obu4alka.ru/home/seo/" itemprop="url">
          <span itemprop="title">SEO</span>
        </a>
      </span>
    </span>
  </span>
</div>




Новый вариант разметки со словарём schema.org

<div class="breadcrumbs">
  <span itemscope itemtype="http://schema.org/BreadcrumbList">
    <span itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
      <a href="https://obu4alka.ru/" itemprop="item">
        <span itemprop="name">Obu4alka.ru</span>
      </a>
      <meta itemprop="position" content="1" />
    </span> ›
    <span itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
      <a href="https://obu4alka.ru/home" itemprop="item">
        <span itemprop="name">Главная</span>
      </a>
      <meta itemprop="position" content="2" />
    </span> ›
    <span itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">
      <a href="https://obu4alka.ru/home/seo/" itemprop="item">
        <span itemprop="name">SEO</span>
      </a>
      <meta itemprop="position" content="3" />
    </span>
  </span>
</div>



[endtxt]




RSS



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


2020-07-07T07:00:00
WEB