Добавить пользовательский плагин только на одну страницу в WordPress - PullRequest
0 голосов
/ 10 января 2020

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

Добавленная мною страница называется «бронирование», и на данный момент она содержит только верхний и нижний колонтитулы.

Плагин - это папка, которая будет возвращать процесс бронирования.

В файле php есть следующее:

function sc_booking_process() {
    if ( is_page( 'booking' ) ) {
        add_action( 'wp_enqueue_scripts', 'include_regForm_validation' );
    }


    return '<div id="choices">
    <h2>Ticket Purchase</h2>
    <h3> Select Ticket Types</h3>
   <form id="form1" action="" method="post" onsubmit="return calcTotal(this)">
      <table id="tickets" style="float:left">
        <thead>
            <th>Ticket Type</th>
            <th>Price</th>
            <th class="Quantity">Quantity</th>
        </thead>
     <tbody>
        <tr>
            <td>Adult <span class = "small-text">18 +</span></td>
            <td>&#128;10.00</td>
            <td class="Quantity">
                <select name="select1">
                <option value="0">0</option>
                <option value="10">1</option>
                <option value="20">2</option>
                 <option value="30">3</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>Child <span class = "small-text">12 years and under</span></td>
            <td>&#128;6.00</td>
            <td class="Quantity">
                <select name="select1">
                    <option value="0">0</option>
                    <option value="6">1</option>
                    <option value="12">2</option>
                    <option value="18">3</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>Teen <span class = "small-text">13 - 17 years</span></td>
            <td>&#128;7.00</td>
            <td class="Quantity">
                <select name="select1">
                    <option value="0">0</option>
                    <option value="7">1</option>
                    <option value="14">2</option>
                    <option value="21">3</option>
                </select>
            </td>
        </tr>
            <td><input name="" type="submit" value="Proceed" onclick = "hide()"/></td>
        </tbody>
        </table>
    </form>
}```
I assume the add_action is done wrong as I'm not sure what function I should have instead of wp_enqueue_scripts.

Any advice on how to fix this would be really appreciated. Thanks!

1 Ответ

0 голосов
/ 10 января 2020

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

Оформить заказ API шорткода WP: https://codex.wordpress.org/Shortcode_API

Редактировать: Я только что увидел конец примера кода Вы отправили. Похоже, что некоторые из ваших вопросов все еще были включены в стилизацию кода. В любом случае, вы хотите поставить сценарий в очередь только на странице бронирования? Если да, то условная проверка у вас должна сработать.

Если вы хотите визуализировать html, я все же предлагаю шорткод. Вот фрагмент кода, который вы могли бы использовать для вызова вашей функции sc_booking_process с использованием шорткода.

добавьте

add_shortcode('name_of_shortcode', 'sc_booking_process');

в ваш файл функций и затем вызовите функцию, используя

[name_of_shortCode][/name_of_shortCode]

в редакторе WYIWYG или

<?php echo do_shortcode('[name_of_shortcode]'); ?>

в файлах вашей темы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...