softsprint menu Заказать

Не работают шорткоды WordPress? Как вставить PHP-код в пост?

Октябрь 3, 2014 в 3:42 | wiki

Последние версии WordPress и WooCommerce (на момент написания статьи – это WordPress 4.0. и WooCommerce 2.2.4 ) совместно работают некорректно  при попытке добавить шорткод (shortcode) в новый пост или страницу. Срабатывают лишь базовые шорткоды, например,

1
[woocommerce_cart]

для страницы «Корзины», которую WooCommerce и так автоматически формирует при установке. А вот добавить, например, шорткод для вывода 12-ти товаров по 4-ом колонкам

1
[recent_products per_page="12" columns="4"]

может и не выйти. Это также зависит от установленной темы.

Вставить данный шорткода в виде классического PHP

1
<?php echo do_shortcode('[recent_products per_page="12" columns="4"]'); ?>

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

Решений этой проблемы есть минимум два:

1) Подробнее читайте на этом ресурсе: http://wp-kama.ru/id_87/ispolnyaemyiy-php-kod-v-zapisyah-wordpress.html

2) Устанавливаем плагин Inline PHP (https://wordpress.org/plugins/inline-php)
В режиме «текст» добавляем нужный нам шорткод в пост или страницу в следующем формате:

1
[exec] echo do_shortcode('[recent_products per_page="12" columns="4"]'); [/exec]

Прописывать <?php и ?> не нужно – для этого служат [exec] и [/exec]

Итак, конструкция следующая:

1
[exec] echo do_shortcode('[ваш шорткод]'); [/exec]

О безопасности: если кто-либо получит доступ к редактированию статей, постов, то сможет запустить на Вашем ресурсе, что угодно!

Также следует отметить очень удобный плагин для интеграции шорткодов в посты, страницы, виджеты — WooCommerce Shortcodes:
https://wordpress.org/plugins/woocommerce-shortcodes/screenshots/

У нас Вы можете заказать SEO-оптимизированный Интернет-магазин на базе WordPress + WooCommerce по очень приятной цене!

Cоздание index.php для темы WordPress — часть 2

Сентябрь 22, 2014 в 3:38 | wiki

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

wordpress structure

wordpress treeНа рисунке приведён пример наиболее типовой структуры сайта/блога, но в Вашей теме, например, может быть 2 боковых панели (sidebar) и ни одного подвала (footer) – платформа WordPress не имеет требований к какой-либо обязательной структуре сайта.

Файл index.php – как ствол в дереве, на котором держаться ветки в виде файлов: header.php, sidebar.php, footer.php и прочих (если такие предусмотрены в теме).
Рассмотрим пример структуры сайта нашей темы Lightweight на основе файла index.php:

1
2
3
4
<?php get_header(); ?> 
<?php get_template_part('loop'); ?>
<?php get_sidebar(); ?> 	
<?php get_footer(); ?>

Первая строка содержит функцию get_header(), которая подключает файл шаблона шапки сайта (header.php). По умолчанию внутри скобок функции get_header() ничего не указывается (автоматически WordPress подключит файл header.php), но если записать функцию, например, в таком виде:

1
<?php get_header(top) ; ?>

, то будет загружен файл header-top.php

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

1
2
3
4
5
6
7
8
9
<?php
if ( is_home() ) :
  get_header('home');
elseif ( is_page('korzina') ) :
  get_header('korzina');
else :
  get_header();
endif;
?>

Эту конструкцию следует вставить в файл index.php вместо первой строки
В таком случае WordPress сделает следующее:

Вообще, есть очень много возможных вариантов для определения, где находится юзер, например:

Вернёмся к нашему index.php: предпоследняя и последняя строки файла index.php отвечают за подключение файлов боковой панели (sidebar) и нижней части сайта (footer).
Логика подключения боковой панели и нижней части сайта аналогичная подключению шапки сайта:

Повторимся: WordPress НЕ ИМЕЕТ каких-либо требований к структуре сайта, поэтому Вы можете запросто поставить, например, две боковых панели сразу после шапки сайта. Файл index.php будет начинаться тогда так:

1
2
3
4
5
<?php get_header(); ?> 
<?php get_sidebar('left'); ?>
<?php get_sidebar('right'); ?>
<?php get_template_part('loop'); ?>
<?php get_footer(); ?>

где: вторая и третья строчки подключат левый и правый сайдбар, соответственно: sidebar-left.php и sidebar-right.php.

Естественно, все эти файлы, которые перечислены выше, например, header-korzina.php, sidebar-left.php и другие, ДОЛЖНЫ присутствовать в папке Вашей темы!

И вот мы подошли к рассмотрению последней функции в файле index.php:

1
<?php get_template_part('loop'); ?>

По своей задаче она очень похожа, например, на get_footer() — подключает нужную нам часть темы, выведенную в отдельный файл (в данному случае – loop.php).

Функцию

1
get_template_part()

часто применяют, чтобы подключить хлебные крошки или форму поиска к сайту, навигацию или вывод постов, которые вынесены в отдельный файл. Т.е., данная функция позволяет подключить любой файл php к нашей теме.
В следующих статьях мы рассмотрим содержимое файлов header.php, sidebar.php, loop.php и footer.php, которые мы вызываем в файле index.php нашей темы Lightweight.

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

Кратко о WooCommerce на WordPress

Сентябрь 22, 2014 в 1:53 | wiki

Данная заметка будет содержать минимум текстового материала, но будет полезна, как «напоминалка» для настройки WooCommerce. Прежде всего рассмотрим, как должны формироваться адреса страниц магазина. Для этого переходим в админке WordPress в раздел «Настройки» > «Постоянные ссылки». Там заполняем поля согласно скриншота (работает зум при нажатии на скриншот):

WooCommerce

WooCommerce

WooCommerce

Есть еще одна задача, посвящённая SEO. Речь идёт о формировании файла sitemap.xml, который бы учитывал товары магазина. Плагинов для автоматической генерации sitemap.xml существует много, но редко какой их них создаст файл, чтобы в нём отображались ссылки на товары.

Одно из решений: скачиваем по ссылке именно эту версию плагина Google (XML) Sitemaps Generator for WordPress:
http://downloads.wordpress.org/plugin/google-sitemap-generator.3.4.1.zip

Называется она на сайте разработчика arnebrachhold.de«Download older version with single static sitemap»

На всякий случай, размещаем у себя копию плагина Google (XML) Sitemaps Generator for WordPress: скачать

В настройках плагина (после его установки в админке WordPress) отмечаем пункт:
Custom post types:
• Include custom post type Товары

После генерации sitemap.xml у Вас должны появится в нём ссылки на заведённые в магазине товары.

WooCommerce Menu CartТакже упомянем полезную добавку к Вашему магазину – плагин WooCommerce Menu Cart.

Он выводит корзину в любое произвольное меню магазина, что удобно, например, для горизонтальных меню в шапке.
На скриншоте ниже такая корзина выведена внизу вертикального меню (0 товаров — 0 грн.)

На тему настроек WooCommerce со временем будет добавлено еще несколько статей, поэтому следите за нашим блогом.

Заказать сайт на WordPress Вы можете в нашей студии — подробности здесь

Lightweight — лёгкая тема для WordPress

Сентябрь 11, 2014 в 5:33 | wiki

На этой страницы представлены релизы лёгкой темы на WordPress в целях обучения.

Cоздание темы WordPress — часть 1

Сентябрь 11, 2014 в 4:47 | wiki

lightweight themeРассмотрим создание собственной темы WordPress на примере минималистской Lightweight. Название темы походит от максимально облегчённых версий британских спортивных машин, например, Caterham. Сама тема также очень лёгкая и простая.

Скачать тему можете здесь

Материал со временем может редактироваться и дополняться, собственно, как и сама тема. Цель статей о создании темы на WordPress – систематизировать знания, создать справочник самых необходимых функций WordPress.
Как принято говорить в подобных альтернативных курсах обучения, читатель уже должен разбираться в HTML и CSS, чтобы уметь самостоятельно сверстать дизайн будущей темы.
Итак, начнём! Тема на WordPress может состоять лишь с двух файлов:

Файл index.php формирует весь функционал темы, а файл style.css придаёт ей внешний вид.

Касательно style.css
Файл style.css обычно лежит в корневой папке темы рядом с index.php и начинается со следующих закомментированных строк, которые платформа WordPress прекрасно распознаёт:

1
2
3
4
5
6
7
8
/*
Theme Name: Lightweight
Theme URI: http://softsprint.net/lightweight/
Description: Lightweight Theme
Author: SoftSprint
Author URI: http://softsprint.net
Version: 1.0
*/

где: Theme Name – название темы; Theme URI – ссылка, где постоянно храниться наша тема для скачивания; Description – описание темы; Author – автор темы; Author URI – адрес вебсайта автора темы; Version – версия темы (актуально, если планируете создавать обновления темы, прочее).

Далее следует обычное описание стилей, как на любом сайте. Файл style.css рассматриваемой в статье темы Lightweight — style.css

Касательно index.php
Хотя одного файла index.php и достаточно для работы темы, но обычно создаются ещё другие файлы, например:

Здесь важно понимать следующее: если в теме отсутствует, например, single.php, то при открытии поста загрузится index.php. При этом содержимое поста будет успешно отображено, но внешний вид и функционал страницы будет соответствовать index.php. Зачем же отдельно создавать single.php? Ответ: чтобы сделать нашу страницу поста индивидуальной, например, удалить постраничную навигацию, вывести комментарии, прочее.

Таким образом, без single.php тема будет работать (автоматически загрузится index.php), а наоборот (без index.php) – не будет. Это касается и остальных файлов (page.php, archive.php, прочих).

В следующей статье детально рассмотрим index.php.

Также Вы всегда можете у нас заказать создание вебсайта или даже интернет-магазина на WordPress по выгодной стоимости — читать подробнее…

Создание Landing Page в WordPress. Отключение функции wpautop()

Август 6, 2014 в 11:40 | wiki

landing pageКраткая инструкция, если нужно создать Landing Page (LP) или любую другую нестандартную страницу WordPress:

Пример Landing Page на нашем сайте – http://softsprint.net/wordpress

P.S. Для редактирования страниц .php удобно применять Notepad++ с сохранением в кодировке UTF-8 без BOM.

landing

Давайте обсудим

softsprint heart

Наши контакты

Львов, Украина
mob: +380 97 551 44 55
skype: softsprint.net

Скажите Привет!