在wp-admin中添加调用wp函数的按钮或图像按钮

时间:2012-12-03 作者:ItsPronounced

我有一个自定义的post类型的产品,我已经设置为使用metaboxes上传PDF。当我在wp admin上生成元数据库时,我会查看元数据库是否已经上传了pdf。如果有,我会生成一个指向pdf的链接。如果没有,我会生成一个文件上载控件,他们可以根据需要选择要上载的文件。下面是生成此元数据的函数的外观。

function products_pdf_uploads_show_meta() {
    global $meta_box_pdf_uploads, $post, $prefix;

    echo \'<table class="form-table">\';
    echo \'<p class="description">Upload your PDFs here </p>\';
    foreach ($meta_box_pdf_uploads[\'fields\'] as $field) {       

        //Get current PDF meta
        $pdf_array = get_post_meta($post->ID, $field[\'id\'], true);
        //Grab the filename from the end of the path
        $pdf_filename = substr(strrchr($pdf_array[\'url\'], "/"), 1);

        echo \'<tr>\',
                \'<td>\';                     
                    //If Empty, show file upload dialog
                    if(empty($pdf_array)) { 
                        echo \'<input type="file" style="width: 700px;" name="\', $field[\'id\'], \'" id="\', $field[\'id\'], \'" />\';

                    } else {  //Else if pdf exists, show link to pdf and add DELETE button
                        echo \'<li><a href="\' . $pdf_array[\'url\'] . \'" target=_blank">\'. $pdf_filename . \'</a></li>\';
                    }

        echo    \'</td>\',
             \'</tr>\';
    }
    echo \'</table>\';
我想做的是,如果有PDF元数据(意味着已经上传了PDF),我想在PDF链接旁边放置一个删除按钮。

 } else {  //Else if pdf exists, show link to pdf and add DELETE button
      echo \'<li><a href="\' . $pdf_array[\'url\'] . \'" target=_blank">\'. $pdf_filename . \'</a></li>\' ;
      //I Want to add a delete button after the above echo
     }
delete按钮将从PRODUCT post类型中删除所有元数据,并从服务器上删除该文件。所以我想我的问题是,我如何制作一个按钮,将其与wordpress函数挂钩,例如delete_post_meta ? 我正在使用wp_upload_bits() 上载pdf主要是因为我不想将pdf添加到媒体库,只想将其上载到服务器并获得路径。

谢谢

1 个回复
最合适的回答,由SO网友:brasofilo 整理而成

您正在搜索Ajax
此问题(&;A可能会给你一个想法:Unattaching images from a post.

WPSE有很多这方面的专家,看看这个search query.

结束

相关推荐

WP-ADMIN不重定向到仪表板

我有一个奇怪的问题,我还不能解决。我安装了wordpress 3.4.1并制作了自己的模板。我使用一个插件-qTranslate。在我的本地副本和dev copy dev.mysite上,一切都很好。捷克。当我复制wordpress并登录主站点时,http://www.mysite.cz, 仪表板不显示。取而代之的是,我只在主页的顶部有一个管理面板。到目前为止,我唯一能说的区别是wp配置。php文件。在生产模式中,我还有另外两条指令:/** debugging mode */ define(\'W