Шорткоды wordpress не работают: Как вывести шорткод. Не работают шорткоды wordpress

не работают шорткоды в разделе сайта — WordPress

это у вас произвольный тип записи? там не работает?

Похоже да. Но в разделе «Записи » работает. Это у меня 2 раздела шаблона — в них не работает.

Вот скрин

Чем сделаны эти Сlasess? Плагин, тема, какие? Ссылку плз.

http://dkstepxb.beget.tech/wp-admin/

Чем сделаны не могу сказать. Думаю, особенности темы.

  • Ответ изменён 2 года, 11 месяцев назад пользователем popropusku.
  • Ответ изменён 2 года, 11 месяцев назад пользователем SeVlad.

@popropusku, не оставляйте доступы на форуме — это публичный ресурс. Срочно смените пароль.

Сменил
Отписался Вам через форму.

  • Ответ изменён 2 года, 11 месяцев назад пользователем popropusku.

Чем сделаны не могу сказать. Думаю, особенности темы.

Это легко проверить, временно переключив тему/отключая плагины.

И не надо мне писать, если я этого не просил или… всё написано там, где Вы писали.
И если не хотите что бы Вас взломали — используйте безопасные, сложные пароли.

Однако у Вас тема не из оф. каталога — с ней помочь в рамках форума затруднительно. Кроме того у Вас сайт перенесён с локального сервера неправильно и остались хвосты. Возможно от этого и проблемы с шорткодами. Для миграции используйте https://wordpress.org/plugins/duplicator/ или аналогичный.

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

  • Ответ изменён 2 года, 11 месяцев назад пользователем popropusku.

Можете помочь не в рамках форума?

Согласно правилам форума коммерческие предложение разрешены только тут: https://ru.wordpress.org/support/forum/community/

Из плагинов там отключать нечего, в принципе, ничего не стоит

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

На что обратить внимание при выборе темы см тут: https://ru.wordpress.org/support/topic/%D0%BA%D0%B0%D0%BA-%D0%BD%D0%B0%D0%B9%D1%82%D0%B8-%D0%B0%D0%BD%D0%B0%D0%BB%D0%BE%D0%B3-%D1%82%D0%B5%D0%BC%D1%8B-%D0%BE%D1%84%D0%BE%D1%80%D0%BC%D0%BB%D0%B5%D0%BD%D0%B8%D1%8F/#post-227554

Из плагинов там отключать нечего, в принципе, ничего не стоит

Э.. как же нет? А визкомпозер? Он хоть куплен или ворован?
Отключали? Отключите ВСЕ и проверяйте.

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

Решено. Спасибо

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

shortcode ultimate slider не работает

Здравствуйте.

Правильный синтакс такой:

source="taxonomy: имя_таксономии / ID_категории, ID_категории"

Пример корректного значения:

source="taxonomy: xbox/1,2,3"

где 1,2,3 – ID ваших рубрик в таксономии xbox

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

Я конечно извиняюсь, но как мне узнать ID рубрики?
У меня есть : название описание и ярлык рубрики.

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

Опятm же в предпросмотре ничего не происходит. Даже posts: recent.

Как узнать ID рубрики

https://ktonanovenkogo.ru/wordpress/wordpress_osnovi/kak-uznat-id-rubriki-kategorii-zapisi-ili-stranicy-v-wordpress.html

posts: recent показывает записи без фильтрации по рубрикам

Владимир спасибо за статью. ID сделал себе. Но проблема не решилась

[su_carousel source="taxonomy: xbox/31"" limit="20" link="post" target="self" responsive="yes" items="3" scroll="1" title="yes" centered="yes" arrows="yes" pages="no" mousewheel="yes" autoplay="5000" speed="600"]

По прежнему

Carousel: изображения не найдены

[su_carousel source="taxonomy: xbox/31" limit="20" link="post" target="self" responsive="yes" items="3" scroll="1" title="yes" centered="yes" arrows="yes" pages="no" mousewheel="yes" autoplay="5000" speed="600"]

Удалил лишнюю скобку с прошлого примера. Но она не влияла на работоспособность

Если использовать posts то посты выводятся, Но мне надо чтобы рубрика выводилась сама

I have been using this plugin since last year, it’s an awesome and time saving plugin for those who are non-technical persons. I have design blog post with this pluging you can also check my design.

Рубрика xbox относится к постам или к медиа библиотеке?

Также, попробуйте использовать шорткод image_carousel. Он лучше во всех аспектах и должен заработать сразу без проблем.

Точно так же не отображает ничего

[su_image_carousel source="taxonomy: xbox/31" limit="20" slides_style="minimal" controls_style="dark" crop="4:3" columns="1" adaptive="yes" spacing="yes" align="none" max_width="none" captions="no" arrows="yes" dots="yes" link="image" target="blank" autoplay="5" speed="medium" image_size="large" outline="yes"].

Image Carousel: изображения не найдены

Странно. Давайте попробуем пойти простейшим путем. Через панель управления перейдите на экран редактирования этой категории с ID=31 и сделайте скриншот.

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

https://yadi.sk/d/uZkN34SKUEll0A

Загрузил 4 скрина.
1. Адрес категории с ID
2. Все категории с количеством постов
3. Попытка вставить код в шорткод на сайте
4. Пример того как через другой плагин работает сетка постов с этой категорией

Спасибо за детали. Как я и подозревал, вы перепутали таксономии и рубрики. Попробуйте такое значение для source:

[su_image_carousel source="taxonomy: category/31"]

Помогло. Я думаю мой случай надо добавить в описание к плагину. Врятли я один такой. Но мал кто полезет на форумы связываться с разработчиком. Проще найти другой плагин.

Спасибо

Но я не понял как сделать горизонтальное отображение. Оно все в столбы собралось

Шорткод отображения записей — Справка

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

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

Содержание

Обзор шорткода показа записей
Добавление шорткода
Отображение аргументов
Примеры настройки
Выравнивание изображений
(Расширенные) запросы таксономии с несколькими критериями
Лимиты

Шорткод [display-posts] не будет работать для сайтов с тарифными планами WordPress.com Business и выше, где используются плагины. Разные плагины предоставляют сходные функциональные возможности.

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


Обзор шорткода показа записей

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

  • Например, вы хотите показывать краткий список записей на главной странице, а опция «Избранные записи» не включена в вашу тему или не показывает записи так, как вам хотелось бы.
  • Вы хотите создать на вашем сайте страницу авторов с краткими биографиями и списками последних опубликованных работ.
  • Вы хотите выделить на странице конкретные записи, например, объявления.
  • Вы хотите добавить список записей в виджет на боковой панели или в нижнем колонтитуле.
  • И так далее…

↑ Содержание ↑

Добавление шорткода

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

  1. Отредактируйте страницу, запись или текстовый виджет.
  2. Добавьте шорткод [display-posts] к записи или странице.
  3. Опубликуйте или обновите страницу/запись.

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

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

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

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


↑ Содержание ↑

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

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

author
Указывает автора записи
Значение по умолчанию: пусто
Пример: [display-posts author=»bill»]

category
Указывает слаг рубрики (или список слагов рубрики, разделенных запятыми). Посмотрите, как выглядит этот шорткод, в этом примере сайта.
Значение по умолчанию: пусто
Пример: [display-posts category=»fishing,hiking»]

date_format
Указывает используемый формат даты, если параметр include_date = true. Подробнее об этом сказано в разделе Кодекса Форматы даты и времени.
Значение по умолчанию: ‘(n/j/Y)’
Пример: [display-posts include_date=»true» date_format=»F j, Y»]

id
Указывает идентификатор конкретной записи или идентификаторы нескольких записей, которые следует отображать.
Значение по умолчанию: пусто
Пример: [display-posts]

image_size
Указывает размер для показа избранного изображения, если оно есть в записи. Для параметра image_size можно выбрать значения thumbnail, medium, large (в разделе «Настройки > Медиафайлы»).
Значение по умолчанию: пусто
Пример: [display-posts image_size=»thumbnail»]

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

include_content
Указывает, что после заголовка следует включать все содержимое записи.
Значение по умолчанию: пусто
Пример: [display-posts include_content=»true»]

include_date
Указывает, что после заголовка следует включать дату записи. По умолчанию используется формат (7/30/12), но его можно изменить с помощью параметра date_format.
Значение по умолчанию: пусто
Пример: [display-posts include_date=»true»]

include_excerpt
Указывает, что после заголовка следует включать цитату из записи (и дату, если она есть).
Значение по умолчанию: пусто
Пример: [display-posts include_excerpt=»true»]

offset
Указывает количество пропускаемых записей
По умолчанию: 0
Пример: [display-posts offset=»3″]

order
Указывает порядок размещения записей: от старых к новым (DESC) или от новых к старым (ASC).
Значение по умолчанию: DESC
Пример: [display-posts order=»ASC»]

orderby
Указывает, как следует сортировать записи. Доступные параметры перечислены здесь.
Значение по умолчанию: date
Пример: [display-posts orderby=»title»]

portfolio_type
Если используется тип записи «Портфолио», выберите здесь конкретные элементы для данного типа портфолио.

post_parent
Задает показ страниц, для которых заданная страница является родительской. Вы можете указать идентификатор или «текущая», чтобы использовать в качестве родительской текущую страницу.
Значение по умолчанию: пусто
Пример: [display-posts post_type=»page» post_parent=»8″]

post_status
Задает показ записей с определенным статусом записи
Значение по умолчанию: публиковать
Пример: [display-posts post_status=»publish, future»]

post_type
Задает используемый тип записи. Можно использовать значение по умолчанию (post или page). Для типа Портфолио используйте значение «jetpack-portfolio».  Аналогичным образом, для типа Отзывы используйте значение «jetpack-testimonial».
Значение по умолчанию: post
Пример: [display-posts post_type=»page»]

posts_per_page
Задает количество отображаемых записей.
Значение по умолчанию: 10
Пример: [display-posts posts_per_page=»5″]

tag
Указывается слаг тега (или список слагов тега, разделенных запятыми)
Значение по умолчанию: пусто
Пример: [display-posts tag=»tag1, tag2″]

taxonomy, tax_term, tax_operator
Используйте эти параметры для расширенных запросов таксономии. Параметр «taxonomy» используется для запросов таксономии, «tax_term» — для слага термина (или терминов), которые вы хотите включить, «operator» — для выбора иного порядка терминов в запросе (скорее всего это поле не потребуется).
Значение по умолчанию: «taxonomy» = «пусто», «tax_term» = «пусто», «operator» = «IN»
Пример: [display-posts taxonomy=»color» tax_term=»blue, green»]

wrapper
Здесь выбирается тип HTML для отображения списков. Можно задать неупорядоченный список (ul), упорядоченный список (ol) или разделители (div) и затем выбрать для них стиль.
Значение по умолчанию: ul
Пример: [display-posts wrapper=»ol»]


↑ Содержание ↑

Примеры настройки

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

[display-posts tag=»advanced» posts_per_page=»20″]

Будут перечислены 20 последних записей с тегом advanced.

[display-posts tag=»advanced» image_size=»thumbnail»]

Будут перечислены 10 последних записей с тегом Advanced и будет отображена запись с использованием размера Thumbnail.

[display-posts category=»must-read» posts_per_page=»-1″ include_date=»true» order=»ASC» orderby=»title»]

Будут перечислены все записи в категории Must Read (Обязательно прочесть), в алфавитном порядке, с датой, добавленной в конце.

[display-posts wrapper=»ol»]

Будут отображены записи в виде упорядоченного списка. Опции: ul — для неупорядоченных списков (значение по умолчанию), ol — для упорядоченных списков или div — для делителей.

[display-posts]

Будут отображены только записи с идентификаторами (ID) 14 и 3.


↑ Содержание ↑

Выравнивание изображений

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

[display-posts include_excerpt=»true» image_size=»thumbnail» wrapper=»div»]

В данном примере в список без маркеров включается цитата и добавляется изображение миниатюрного размера (вы можете настраивать размер изображений в разделе Управление → Настройки → Медиафайлы).

Чтобы получить изображение, плавающее по правому краю, добавьте этот код в пользовательский файл CSS (требуется платная услуга WordPress.com Premium или WordPress.com Business):

.display-posts-listing .alignleft {
    float: right;
    margin: 0 0 5px 5px;
}


↑ Содержание ↑

(Расширенные) запросы таксономии с несколькими критериями

Хотя для большинства пользователей достаточен запрос таксономии с одним критерием, этот шорткод поддерживает бесконечное количество запросов таксономии. Например, вы хотите отобрать все записи из рубрики «Избранные», отмеченные тегом «homepage». Мы будем использовать шорткод, который выглядит следующим образом.

[display-posts taxonomy=»category» tax_term=»featured» taxonomy_2=»post_tag» tax_2_term=»homepage»]

Вы можете использовать любое количество строк, но просто начнём с количества, равного 2. В списке полей ниже замените строку «(count)» на фактический номер.

Доступные поля:

taxonomy_(count)
Указывает, какую таксономию запрашивать
Значение по умолчанию: пусто

tax_(count)_term
Указывает, какие термины включать (если их несколько, они разделяются запятыми)
Значение по умолчанию: пусто

tax_(count)_operator
Указывает, какую операцию применять в запросе терминов (IN, NOT IN или AND)
Значение по умолчанию: IN

tax_relation
Описывает взаимосвязь между запросами таксономии с несколькими критериями (должны ли результаты соответствовать всем запросам или только одному из них). Доступные опции: AND и OR
Значение по умолчанию: AND


↑ Содержание ↑

Лимиты

 Шорткод отображения записей имеет ограничение на 100 отображаемых записей.

Шорткоды в WordPress

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

Например стандартный вордпрессовский шорткод позволяет вывести галерею внутри поста.

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

Так же, как у функции могут быть аргументы, так и шорткод может иметь собственные параметры. Ещё один пример с шорткодом :

В параметре ids перечислены ID изображений, входящих в галерею, параметр size — размер вставляемых изображений.

Простой пример создания шорткода

Создать свой шорткод не труднее, чем написать собственную функцию PHP. Например я решил создать шорткод [misha], который при вставке в пост будет выводить URL главной страницы сайта.

function true_misha_func( $atts ){
	return site_url(); // никаких echo, только return
}
 
add_shortcode( 'misha', 'true_misha_func' );

Код можете вставить в файл functions.php (я имею ввиду тот, который находится в директории вашей текущей темы).

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

Шорткод с параметрами

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

В качестве примера я написал шорткод, который просто вставляет ссылку в пост, которая открывается в новой вкладке браузера target="_blank". Не думаю, что на деле он может быть полезен, но для нас сейчас главное — понять сам принцип работы шорткодов.

Параметров будет два: anchor и url — анкор (текст ссылки) и URL соответственно. Как будет выглядеть сам шорткод: [trueurl anchor="Мой блог" url="https://misha.blog/blog"]. Если параметр не будет указан в самом шорткоде, то будет использоваться его значение по умолчанию, заданное в функции.

function true_url_external( $atts ) {
	$params = shortcode_atts( array( // в массиве укажите значения параметров по умолчанию
		'anchor' => 'Миша Рудрастых', // параметр 1
		'url' => 'https://misha.blog', // параметр 2
	), $atts );
	return "<a href='{$params['url']}' target='_blank'>{$params['anchor']}</a>";
}
add_shortcode( 'trueurl', 'true_url_external' );

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

Закрывающиеся шорткоды и шорткод внутри шорткода

Давайте возьмём шорткод из предыдущего примера и немного переколдуем его. Напомню, что шорткод выглядел так:
[trueurl anchor="текст ссылки" url="URL ссылки"].

Что, если мы переделаем его следующим образом: [trueurl anchor="текст ссылки"]URL ссылки[/trueurl].

Кроме того, вовнутрь закрывающихся шорткодов можно вставлять и другие шорткоды (благодаря функции do_shortcode()).

В соответствии с этим давайте переделаем наш код из предыдущего примера:

function true_url_external( $atts, $shortcode_content = null ) {
	$params = shortcode_atts( array(
		'anchor' => 'Миша Рудрастых'
	), $atts );
	return "<a href='" . do_shortcode($shortcode_content) . "' target='_blank'>{$params['anchor']}</a>";
}
add_shortcode( 'trueurl', 'true_url_external' );

Теперь шорткод следующего вида [trueurl anchor="главная"][misha][/trueurl] выведет ссылку на главную страницу вашего сайта (про шорткод [misha] я писал выше).

Добавляем кнопку вставки шорткода в визуальный редактор поста TinyMCE

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

1. PHP

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

// Хуки
function true_add_mce_button() {
	// проверяем права пользователя - может ли он редактировать посты и страницы
	if ( !current_user_can( 'edit_posts' ) && !current_user_can( 'edit_pages' ) ) {
		return; // если не может, то и кнопка ему не понадобится, в этом случае выходим из функции
	}
	// проверяем, включен ли визуальный редактор у пользователя в настройках (если нет, то и кнопку подключать незачем)
	if ( 'true' == get_user_option( 'rich_editing' ) ) {
		add_filter( 'mce_external_plugins', 'true_add_tinymce_script' );
		add_filter( 'mce_buttons', 'true_register_mce_button' );
	}
}
add_action('admin_head', 'true_add_mce_button');
 
// В этом функции указываем ссылку на JavaScript-файл кнопки
function true_add_tinymce_script( $plugin_array ) {
	$plugin_array['true_mce_button'] = get_stylesheet_directory_uri() .'/true_button.js'; // true_mce_button - идентификатор кнопки
	return $plugin_array;
}
 
// Регистрируем кнопку в редакторе
function true_register_mce_button( $buttons ) {
	array_push( $buttons, 'true_mce_button' ); // true_mce_button - идентификатор кнопки
	return $buttons;
}

В этом примере для получения URL папки с текущей темой я использовал функцию get_stylesheet_directory_uri(). true_button.js — собственно сама кнопка, создайте этот файл в директории с темой (или там, где вам удобно, но не забудьте в этом случае поменять путь к нему).

2.1. JavaScript. Пример простой кнопки

Займёмся содержимым файла true_button.js. Итак, создадим для начала простую кнопку, которая будет вставлять шорткод [misha].

(function() {
	tinymce.PluginManager.add('true_mce_button', function( editor, url ) { // true_mce_button - ID кнопки
		editor.addButton('true_mce_button', {  // true_mce_button - ID кнопки, везде должен быть одинаковым
			text: '[misha]', // текст кнопки, если вы хотите, чтобы ваша кнопка содержала только иконку, удалите эту строку
			title: 'Вставить шорткод [misha]', // всплывающая подсказка
			icon: false, // тут можно указать любую из существующих векторных иконок в TinyMCE либо собственный CSS-класс
			onclick: function() {
				editor.insertContent('[misha]'); // вставляем шорткод [misha] в редактор, также можно задать любое действие jQuery
			}
		});
	});
})();

В результате:

Кнопка вставки шорткода в редакторТекстовый вариант кнопки вставки шорткода в визуальном редакторе TinyMCE.

2.2. Кнопка с иконкой, выпадающим списком и с возможностью задавать параметры шорткода

Начну с того, что вставлю (а точнее заменю) код в файл true_button.js:

(function() {
	tinymce.PluginManager.add('true_mce_button', function( editor, url ) { // id кнопки true_mce_button должен быть везде один и тот же
		editor.addButton( 'true_mce_button', { // id кнопки true_mce_button
			icon: 'perec', // мой собственный CSS класс, благодаря которому я задам иконку кнопки
			type: 'menubutton',
			title: 'Вставить элемент', // всплывающая подсказка при наведении
			menu: [ // тут начинается первый выпадающий список
				{
					text: 'Элементы форм',
					menu: [ // тут начинается второй выпадающий список внутри первого
						{
							text: 'Текстовое поле',
							onclick: function() {
								editor.windowManager.open( {
									title: 'Задайте параметры поля',
									body: [
										{
											type: 'textbox', // тип textbox = текстовое поле
											name: 'textboxName', // ID, будет использоваться ниже
											label: 'ID и name текстового поля', // лейбл
											value: 'comment' // значение по умолчанию
										},
										{
											type: 'textbox', // тип textbox = текстовое поле
											name: 'multilineName',
											label: 'Значение текстового поля по умолчанию',
											value: 'Привет',
											multiline: true, // большое текстовое поле - textarea
											minWidth: 300, // минимальная ширина в пикселях
											minHeight: 100 // минимальная высота в пикселях
										},
										{
											type: 'listbox', // тип listbox = выпадающий список select
											name: 'listboxName',
											label: 'Заполнение',
											'values': [ // значения выпадающего списка
												{text: 'Обязательное', value: '1'}, // лейбл, значение
												{text: 'Необязательное', value: '2'}
											]
										}
									],
									onsubmit: function( e ) { // это будет происходить после заполнения полей и нажатии кнопки отправки
										editor.insertContent( '[textarea value="' + e.data.multilineName + '" required="' + e.data.listboxName + '"]');
									}
								});
							}
						},
						{ // второй элемент вложенного выпадающего списка, прост вставляет шорткод [button]
							text: 'Кнопка отправки',
							onclick: function() {
								editor.insertContent('[button]');
							}
						}
					]
				},
				{ // второй элемент первого выпадающего списка, просто вставляет [misha]
					text: 'Шорткод [misha]',
					onclick: function() {
						editor.insertContent('[misha]');
					}
				}
			]
		});
	});
})();

После вставки кода моя кнопка уже появилась и работает. Единственное только — у неё нет никакой иконки (ну кроме стрелочки вниз).

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

  • Встроенные иконки TinyMCE.
  • Другие иконочные шрифты, в том числе и dashicons.
  • Любую картинку через background-image.
  • Изображение, закодированное в base64.

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

i.mce-i-perec {
	background-image: url('perec.png');
}
кнопка с иконкой в редакторе TinyMCE

Если использовали этот же способ и иконка не появилась — попробуйте прописать к ней абсолютный URL.

Для подключения CSS используйте функцию wp_enqueue_style() либо хук admin_head.

Результат:

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

Если вы хотите использовать dashicons, то ваш CSS для иконки перца будет выглядеть примерно следующим образом:

i.mce-i-perec {
	content: "\f511"; /* выбираем иконку и узнаем ее код тут https://developer.wordpress.org/resource/dashicons/ */
	font-family:'dashicons';
	font-size:20px; /* можно подкорректировать размер шрифта, если не устраивает*/
}

Применение шорткодов к переменным в PHP

Тут всё сводится к использованию одной функции — do_shortcode().

do_shortcode()

$content
(строка) (обязательный) Функция выполняет все шорткоды, которые содержатся в этом аргументе.

Функция в качестве параметра может содержать лишь один шорткод:

echo do_shortcode( '[misha]' );

Или шорткод и какой-то контент:

echo do_shortcode( '[trueurl anchor="Главная"]' . site_url() . '[/trueurl]' );

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

$content_shortcoded = do_shortcode(get_the_content());

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

Миша

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

Сам же я впервые познакомился с WordPress в 2009 году. Организатор WordCamp. Преподаватель в школах Epic Skills и LoftSchool.

Если вам нужна помощь с вашим сайтом или может даже разработка с нуля на WordPress / WooCommerce — пишите. Я и моя команда сделаем вам всё на лучшем уровне.

Шорткоды не работают / не отображаются | WordPress.org

Привет снова, bobking2322!

Действительно странно, обычно я использую его с Visual composer и редактором HTML WordPress и никогда не случалось ничего подобного.

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

Я надеюсь, что эти новые видео помогут вам сделать гораздо больше с помощью набора Woo Shortcodes!

С другой стороны, на веб-сайте есть 2 новостных бесплатных дополнения, одно бесплатное (Easy My Account Builder для WSHK), которое вы можете получить с подпиской на Youtube, и другое бесплатное (Пользовательские блоки и перенаправления для WSHK), подписавшись на новую услугу установки. & конфигурация.

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

Этот плагин также имеет систему для сохранения последней активной вкладки для сохранения вкладки, когда пользователь нажимает какую-либо «расширенную кнопку» WooCommerce, например кнопку «Просмотреть порядок», которая появляется в списке заказов, форма адреса, которая появляется, когда вы нажимаете кнопку «Редактировать» или форму оплаты.

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

Если вам это нравится… аддон «Пользовательские блоки и перенаправления для WSHK» — это лучший способ создать страницу пользовательской учетной записи.

Он предоставляет вам систему, чтобы ограничить контент только зарегистрированными пользователями и незарегистрированными пользователями, просто добавив идентификатор в вашу строку, поле, div или что-то в этом роде.

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

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

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

Надеюсь, он вам пригодится! 🙂

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

С уважением! 🙂

  • Этот ответ был изменен 2 года назад пользователем disespubli.
  • Этот ответ был изменен 2 года назад пользователем disespubli.
  • Этот ответ был изменен 2 года назад пользователем disespubli.
.

Шорткод не работает | WordPress.org

Значит, вы получите желаемый результат, если не передадите переменную id, верно?

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

Однако, если вы получаете желаемый результат, оставив id, просто оставьте id.

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

Я попытался не передавать идентификатор, но всегда получаю одно и то же значение, последнее в цикле.

Патриция

https://pasteboard.co/HCc2sb2.jpg

Я думаю, вам нужно убедиться, что вы можете получить правильный результат, если попробуете это только на стандартной странице WordPress _ за пределами_ Visual Composer.т.е.

[pods name = "page" template = ”Data / e Spettacolo”] << мало беспокоит, что это красивые цитаты, поскольку я скопировал их из приведенного выше кода.

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

  • Этот ответ был изменен 2 года назад Джимом Тру. Причина: пропущено место в моем разделе кода

Привет, Джим,
это работает, но я думаю, что это что-то связано с переменной $ ID, которую я использую.
Если я печатаю переменную, идентификатор правильный. Если я использую его внутри шорткода, он не работает.
Может ли это быть связано с типом переменной (целое число, строка)?
Патриция

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

Приглашаем присоединиться к нашему чату Slack https://pods.io/chat/ и присоединиться к каналу # dev-chat. У нас есть много разработчиков, которые общаются на этом канале и которые разрабатывают модули для модулей, а также некоторые, которые также занимаются разработкой для модулей, так что это хорошее место, чтобы обсудить проблемы с PHP и получить отзывы. Это не «поддержка», и в ней нет персонала, поэтому для ответов требуется терпение, но все очень дружелюбны и готовы помочь.

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

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

У меня есть POD с типом поля Plain Text. Мы используем его для хранения шорткода, который затем используется для вывода некоторой формы с функцией do_shortcode в нашем шаблоне. Он работал хорошо (и даже продолжал работу после понижения версии плагина до версии 2.6.11), но в какой-то момент в 2.В версии 7.x в этом поле не должно сохраняться значение вроде [newsletter_signup_form id = 2], а проблема заключается в id = 2. Если я пытаюсь сохранить [newsletter_signup_form] — все в порядке. Поле meta_value таблицы postmeta базы данных содержит это значение, но если я добавлю id = 2 в качестве параметра, поле meta_value в базе данных по какой-то причине станет пустым

@krombox, это не совсем похоже на то, что упоминал вышеупомянутый человек. Если у вас что-то работало и вдруг перестает работать с 2.7, вы должны открыть отчет об ошибке в соответствии с нашей Политикой поддержки:

Если вы обнаружили ошибку или получили запрос функции , мы убедительно просим вас создать проблему в нашем репозитории GitHub по адресу https://github.com/pods-framework/pods/issues/new. Укажите конкретные шаги, которые вы предприняли для создания возникшей проблемы, и включите снимки экрана или другие параметры конфигурации, которые помогут нам воссоздать или изолировать проблему.

Перед тем, как сделать проблему, решил немного отладить и в результате нашел, в чем проблема.В поле «Обычный текст» установлен флажок « Разрешить короткие коды» на вкладке «Дополнительные параметры поля». Это никогда не проверялось на нашем сайте и хорошо работает до того, как мы обновили ветку до 2.7.x. После установки этой опции все стало работать нормально. Спасибо

Похоже, он раньше его игнорировал, что было бы очень странно. Рад, что ты понял это @krombox.

.

Шорткод не работает | WordPress.org

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

Привет, @dantianhealth & @codeepiphany,

Может ли кто-нибудь из вас создать пробную копию вашего сайта и поделиться со мной учетными данными? Я не мог воспроизвести это даже после нескольких попыток.Вы можете связаться со мной через меня [at] joelsays [dot] com.

@ joelcj91 Я написал вам

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

@ joelcj91 Несколько месяцев назад я отправил вам пробную копию по тем же вопросам. Я думаю, ты это пропустил. Я немедленно отправляю вам по электронной почте еще одну пробную копию.Мои проблемы следующие:

1. Как и другие, у меня не было уведомлений об обновлении плагинов, пока я не переустановил комментарии DCL.
2. Поток DISQUS не загружает сообщения, пока у меня активен другой плагин под названием CM Table Of Contents Pro. Однако пользовательский текст, который я добавил над цепочкой, действительно загружается внизу моих сообщений. Как только я деактивирую плагин, поток снова загружается нормально для сообщений.
3. В любом случае шорткод на страницах не работает. Пользовательский текст над цепочкой также не отображается ни на каких страницах.Я пробовал несколько команд шорткода, которые вы упомянули в других обсуждениях.

Официальный плагин DISQUS не конфликтует с другим моим плагином. DCL-комментарии раньше не конфликтовали с другим плагином. Если DCL не удается исправить, знаете ли вы, как я могу заставить официальный плагин DISQUS загружать комментарии на страницы?

Спасибо,
Дэвид

@ joelcj91 Обновление: я нашел, как исправить часть проблемы. Если я перейду на свои страницы на панели инструментов WordPress, а затем быстро отредактирую страницу, у меня будет возможность установить флажок «Разрешить комментарии».Если я это сделаю, цепочка комментариев снова появится на странице. Итак, шорткод работает. Возможно, одно из обновлений плагина DCL отключило этот параметр на всех страницах, поскольку раньше он работал.

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

Обновление: я нашел, как исправить часть проблемы. Если я перейду на свои страницы на панели инструментов WordPress, а затем быстро отредактирую страницу, у меня будет возможность установить флажок «Разрешить комментарии».Если я это сделаю, цепочка комментариев снова появится на странице. Итак, шорткод работает. Возможно, одно из обновлений плагина DCL отключило этот параметр на всех страницах, поскольку раньше он работал.

Это полностью устранило мою проблему. Мои комментарии теперь загружаются на нужную мне страницу, как и мои сообщения. Вот ссылка, чтобы увидеть страницу, о которой я говорю. https://www.hwhound.com/finding-the-best-cpu-cooler-comparisons/

@ Metallikat36 Вы пробовали отключать плагины один за другим, чтобы узнать, есть ли какой-то конкретный, вызывающий вашу проблему? Я предполагаю, что да, но не повредит спросить.

Извините, ваша проблема все еще существует. Спасибо вам огромное за то, что вы получили исправление для одного из нас. = D

@hardwarehound Рад помочь. По крайней мере, сейчас, если я использую официальный плагин DISQUS, все работает. Это будет мое исправление, пока кто-нибудь не выяснит другую проблему.

Да, я обнаружил, что существует конфликт с подключаемым модулем CM Table of Contents. Если я отключу его, загрузится DCL. Этот конфликт появился после обновления DCL.

  • Этот ответ был изменен 1 год, 1 месяц назад пользователем metallikat36.

Ах да! Если бы я прочитал ваш предыдущий ответ, я бы увидел, что вы это уже сказали. Извините, что заставил вас напечатать его снова.

Я использую Easy Table of Contents, и это не вызывает никаких проблем с DCL. Не знаю, подойдет ли Easy ToC для вашей среды, но вот ссылка на плагин.

Easy Table of Contents

.

шорткодов не работают | WordPress.org

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

1. встроен в тему (что является плохим способом предоставления шорткодов)
2. или плагином

Я просто скопировал короткие коды, включая мои рецепты, как они показаны на https://en.support.wordpress.com/recipes/. Раньше это работало в моем предыдущем блоге.Я просто начал все сначала с новой темой и новым хозяином, я просто не знаю, что изменилось сейчас. Следует ли мне сейчас установить для этого плагин для шорткодов?

А, вот и все. Спасибо за ссылку и извиняюсь за плохие новости. Есть две версии WordPress:

1. Хостинг — WordPress.com
2. Самостоятельный хостинг — wordpress.org

То, что вы мне только что показали, относится к WordPress.com (размещенная версия WP и эти шорткоды предлагаются там, но не здесь, где wordpress.org является самостоятельной версией и не включает шорткоды, кроме галереи).

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

Лучше использовать «плагин» для шорткодов, потому что, если вы измените тему, вы не потеряете свои шорткоды.Если шорткоды встроены в тему или, в данном случае, в сам wordpress.com, а затем переключаются на автономную версию WP, вы их потеряете.

Дополнительная информация о сравнении wordpress.com и wordpress.org

Хорошо, я понял, это объясняет почему. Я думал, они такие же … Похоже, мне придется снова их записать … Спасибо за ответ, я думал, что это я ошибся. Хорошего дня. G

Не беспокойтесь… надеюсь, у вас все получится 🙂

Полагаю, мы можем установить эту тему как «Решенная»?

Ура,
Андре

Да, можно, решено! Нашел отличный плагин под названием WP ultimate recipe, я скопировал и вставил свои рецепты, и он отлично сработал.Еще раз спасибо. 🙂

.
Бланк диплома бакалавра Баяндай. Купила http://oreginaldiplom.com/ диплом магистра Амзя. Вы только что закончили колледж и собираетесь устроиться на свою первую настоящую работу. После длительного периода безработицы

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *