簡體   English   中英

Wordpress-在帖子編輯頁面內添加表單

[英]Wordpress - Add form inside post edit page

我想在帖子編輯頁面中創建一個新的metabox,其中包含一個按鈕,該按鈕應提交帶有隱藏字段的表單。

問題在於后期編輯頁面本身就是表單-因此從技術上講,我正在嘗試在表單內部創建表單,而HTML規范無法做到這一點。

另外,我也不想通過GET(簡單鏈接)提交,因為它不能被緩存。

這是代碼:

function meta_box_html()
{
    ?>
    <form action="..." method="post">
        <input type="hidden" name="name" value="value">
        <input type="submit">
    </form>
    <?php
}

add_action("add_meta_boxes", function () {
    add_meta_box("id", "title", "meta_box_html", "post", "side", "high", null);
});

當我單擊按鈕時-什么也沒有發生,並且頁面僅被重新加載。

有什么想法如何添加表單到發布編輯頁面?

我遇到過同樣的問題。 這是我解決的方法。

首先,為方便起見,我在管理員警報中生成了表單,如下所示。 如果僅希望將其顯示在“編輯帖子”頁面上,則可以將其放在if()中,該命令檢查當前頁面的ID是否為“ post”,parent_file是否為“ edit.php”。

function myform_custom_box_html($post)
{
    ?>
    <div id="myform_holder">
     <form action="<?php echo admin_url('admin-post.php'); ?>" method="post" id="myform" >
        <input type="hidden" name="action" value="myform">
        <input id="myform_fname" type="text" name="myform_fname" value="" placeholder="Recipient name" /><br />
        <input type="submit" name="myform_submit" id="rejecter_submit" class="button button-primary" value="Submit Form">
    </form>
    </div>
    <?php
}

add_action( 'admin_notices', 'myform_custom_box_html' );

然后,我使用了一些js將其移動到頁面中想要的位置。 在這種情況下,它會將其附加在“發布”按鈕的正下方,但是您可以定位所需DOM中的任何元素。 您必須將其放入正確排隊到wordpress admin的文件中:

$(document).ready(function() {
  var myform =  $('#myform_holder').remove();
  myform.appendTo('#major-publishing-actions');
});

兩種形式都可以使用這種方法正常工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM