Запуск одноразового скрипта, вызывающего функции плагина

Вопрос или проблема

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

Я нашел это:
Какая у вас лучшая практика для выполнения одноразовых скриптов?

Единственная проблема, с которой я столкнулся, это как вызвать функции из плагина в этом скрипте? Больше всего меня интересует, какой путь к .php файлам плагина я должен передать в include()? Пример был бы отличным.

Я бы придерживался методов babixeddu, Amit Sukapure или tf из упомянутого вами вопроса. Поскольку WordPress загружается обычно с этими решениями, вы можете использовать функции ядра для манипуляции данными. В вашем случае вам понадобится plugin_dir_path().

В моем случае у меня есть очень простой плагин, который создает страницу администратора с одной кнопкой “выполнить”. Я вставляю код, загружаю плагин, захожу в систему и нажимаю. Этот метод предотвращает случайное повторное выполнение кода. После этого я могу удалить плагин.

Ответ или решение

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

  1. Создайте простой плагин: Для начала, создайте папку для вашего плагина в директории wp-content/plugins/, например, назовем ее my-product-adder. Внутри этой папки создайте файл my-product-adder.php.
<?php
/**
 * Plugin Name: My Product Adder
 * Description: Плагин для однократного добавления продуктов.
 */

function add_my_product() {
    $post = array(
        'post_title'   => 'Мой новый продукт',
        'post_content' => 'Описание продукта.',
        'post_status'  => 'publish',
        'post_type'    => 'product',
    );

    // Вставляем продукт в базу данных
    $post_id = wp_insert_post($post);

    // Устанавливаем цену для продукта
    if ($post_id) {
        update_post_meta($post_id, '_price', '10.00');
        update_post_meta($post_id, '_regular_price', '10.00');
    }
}

// Проверка, был ли вызван наш скрипт
if (isset($_GET['action']) && $_GET['action'] === 'run') {
    add_my_product();
    echo 'Продукт добавлен!';
    exit;
}
  1. Активируйте плагин: Перейдите в административную панель WordPress, перейдите в раздел «Плагины» и активируйте ваш плагин.

  2. Запустите скрипт: Чтобы выполнить скрипт, введите в адресной строке вашего браузера следующий URL, заменив ваш_сайт на ваш фактический домен:

http://ваш_сайт/wp-content/plugins/my-product-adder/my-product-adder.php?action=run

Это вызовет функцию add_my_product(), которая добавит ваш продукт в базу данных.

  1. Удалите или отключите плагин: Чтобы предотвратить повторное выполнение кода, по завершении вы можете удалить плагин или временно отключить его.

Важно:

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

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

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

Капча загружается...