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


Я использую шорткод плагина для входа в социальную сеть WordPress [wordpress_social_login]. Я хочу поместить его в файл пользовательского шаблона внутри каталога тем.

Пример:

<?php 
/*
Template Name: Social Login Page
*/
echo do_shortcode('[wordpress_social_login]');

Поэтому я создаю пустую страницу с помощью этого шаблона, рендеринг в порядке, но кнопка href становится javascript:void(0);, и она не перенаправляется.

Я не могу в этом разобраться, поэтому, пожалуйста, помогите..

Спасибо

Author: Hend Ry, 2017-08-09

2 answers

Вы не включили get_header() или get_footer() в свой шаблон. Они будут загружаться header.php и footer.php который должен включать wp_head() и wp_footer(). Эти последние две функции важны, потому что именно там загружаются сценарии.

Если ваш шорткод зависит от сценария, загружаемого в верхний или нижний колонтитул, то вам необходимо wp_head() или wp_footer(), вот где плагины загружают свои скрипты. Глядя на код для этого плагина (скажите мне, если это не так), то скрипт для него загружается в wp_head().

Поэтому, по крайней мере, ваш шаблон должен выглядеть так:

<?php 
/*
Template Name: Social Login Page
*/
?>
<!DOCTYPE html>
<html>
<head>
    <?php wp_head(); ?>
</head>
<body>
    <?php echo do_shortcode('[wordpress_social_login]'); ?>
</body>
</html>

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

Кроме того, даже если вы не используете wp_head(), вам все равно нужно <html>,<head>, и <body> теги должны быть допустимыми HTML.

 1
Author: Jacob Peattie, 2017-08-09 12:10:18

Вы используете неправильный синтаксис do_shortcode(). Проверить do_shortcode() страница для получения дополнительной информации.

echo do_shortcode['wordpress_social_login'];

Замените его следующим:

echo do_shortcode('[wordpress_social_login]');

Попробуйте. Я надеюсь, что это полезно.

 1
Author: Jignesh Patel, 2017-08-09 11:23:49