Intereting Posts
Единый центральный вход для конечных пользователей с любого сайта Структура файла WordPress Есть ли способ перечислить все действия, зарегистрированные плагином или темой? Используйте галерею изображений, такую ​​как woocommerce, в пользовательском типе сообщений Добавить пользовательские кнопки с настраиваемыми действиями в окне «Редактировать сообщение» в WordPress? Удаление категории по умолчанию в wordpress Добавьте некоторые файлы в таблицу wp_posts Как добавить пользовательские радио-боксы на страницу оплаты WooCommerce и изменить общую цену в этом поле? Установить формат публикации, если найти строку в заголовке или в сообщении Плагины и резервное копирование не работают корректно на новом сервере Digital Ocean Многопользовательский виджет WordPress print_media_templates не применяется в плагине медиа-менеджера Разбиение на две петли Как правильно использовать partials в functions.php? Проблема с использованием role_has_cap hook

Как я могу вызвать функции из пользовательского плагина?

Я хотел бы назвать некоторую функцию из плагина, который я пишу. Я вызываю код плагина через короткий код на моей странице wordpress. Для начала я просто пытаюсь открыть окно «предупреждение», скажем, если мне удастся подключиться к базе данных. В конце концов, в плагине будут отображаться выпадающие списки ниже, а более поздние – на основе выбора в предыдущем. Цените помощь! Код в моем плагине выглядит следующим образом:

<?php /* Plugin Name: Custom program graphs Plugin URI: localhost/test/ Description: Creates graphs Version: 0.1.0 Author: My Cars */ require_once("dbcontroller.php"); # Instantiate DB Controlling - WORKS WELL functions function vc_connect_to_database() { $db_handle = new DBController(); $connection = $db_handle->connectDB(); if (!$connection) { return '<h6>' . "Unable to connect to database." . '</h6>'; } # WORKS WELL IN THE CONDITION ABOVE THIS else { # FAILS HERE!! HOW CAN I CALL A FUNCTION LIKE alert FROM HERE? return window.alert("Connected to the database successfully."); } } add_shortcode('connect_database', 'vc_connect_to_database'); 

Вы не знаете, это функция javascript, которая работает в браузере. PHP работает на сервере, два – разные языки, которые работают в разных местах.

Вместо этого рассмотрите теги скриптов:

 return '<script>window.alert("Connected to the database successfully.")</script>';` 

console.log("") может быть более подходящим методом, чем alert("") для отладки

Я также хотел бы отметить, что короткие коды вставляют контент и должны представлять что-то. Ваш плагин, похоже, создает графики, поэтому я бы предположил, что ваш [vivek_graph] должен быть чем-то вроде [vivek_graph] . Внутри этого короткого кода вы можете подключиться к базе данных, вместо того, чтобы требовать подключения к короткому коду db, случается перед каждым использованием