创建多个短代码

时间:2016-03-15 14:53:11

标签: php wordpress wordpress-plugin

我正在创建一个创建短代码的Wordpress插件。我想通过我的插件加载具有给定名称的那些短代码。

喜欢这个[name]

但是当我保存我的短代码时,会生成短代码但不会保存

我做错了什么。

这是我的表单

<form method="post" enctype="multipart/form-data">
<table>
    <tr>
        <td>
            Naam:
        </td>
        <td>
            <input name="naam" type="text" placeholder="Geef hier een unieke naam op" required/>
        </td>
    </tr>
    <tr>
        <td>
            Site URL:
        </td>
        <td>
            <input name="url" type="text" placeholder="Site URL" required/>
        </td>
    </tr>
    <tr>
        <td>
            Breedte:
        </td>
        <td>
            <input name="breedte" type="text" placeholder="Breedte in pixels" required/>
        </td>
    </tr>
    <tr>
        <td>
            Bevestig:
        </td>
        <td>
            <?php submit_button('Upload') ?>
        </td>
    </tr>
</table>
</form>

发帖:

if(isset($_POST['naam'])) {
    $naam = $_POST['naam'];
    $url = $_POST['url'];
    $breedte = $_POST['breedte'];
    createShortcode($naam, $url, $breedte);
    add_shortcode($naam, 'createShortcode');
}

创建短代码功能

function createShortcode($naam, $url, $breedte){
    echo 'Naam: ' . $naam . ' ';
    echo 'URL: ' . $url . ' ';
    echo 'Breedte: ' . $breedte . ' ';
}

1 个答案:

答案 0 :(得分:0)

你误解了add_shortcode的工作原理。它只会在表单提交时添加,如果在add_shortcode之后调用短代码,它将是唯一可以工作的地方。 add_shortcode的工作方式与add_action类似,页面上的实际短代码类似于do_action,即触发提供给add_shortcode的挂钩。它没有保存在任何地方。此外,您传递给add_shortcode的功能不正确。