Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用FOREACH保存post meta并实现操作crud_Php_Wordpress_Wordpress Theming - Fatal编程技术网

Php 使用FOREACH保存post meta并实现操作crud

Php 使用FOREACH保存post meta并实现操作crud,php,wordpress,wordpress-theming,Php,Wordpress,Wordpress Theming,我在数据库中手动注册了两张照片,并在“meta_key”栏中添加了“我的帖子图片”和帖子id 在部分下面的完整代码中,$url=get\u post\u meta($post->ID,'my-image-for-post',false)我可以用foreach打印ULR 我无法保存多个图像,我有两个疑问: 1-如何用在图像管理器中选择的另一个url替换数据库中的当前url?如果单击“保存帖子”时没有url,如何使用foreach注册新url 2-如何在每个图像中添加删除和编辑按钮?因为我希望在保存

我在数据库中手动注册了两张照片,并在“meta_key”栏中添加了“我的帖子图片”和帖子id

在部分下面的完整代码中,
$url=get\u post\u meta($post->ID,'my-image-for-post',false)我可以用foreach打印ULR

我无法保存多个图像,我有两个疑问:

1-如何用在图像管理器中选择的另一个url替换数据库中的当前url?如果单击“保存帖子”时没有url,如何使用foreach注册新url

2-如何在每个图像中添加删除和编辑按钮?因为我希望在保存帖子和永久注册ULR之前,用户可以更新、删除或添加新图像

    add_action('plugins_loaded', function(){ 
        if($GLOBALS['pagenow']=='post.php'){
            add_action('admin_print_scripts', 'my_admin_scripts');
            add_action('admin_print_styles',  'my_admin_styles');
        }
    });

    function my_admin_scripts() { wp_enqueue_script('jquery');    wp_enqueue_script('media-upload');   wp_enqueue_script('thickbox'); }   //  //wp_register_script('my-upload', WP_PLUGIN_URL.'/my-script.js', array('jquery','media-upload','thickbox'));  wp_enqueue_script('my-upload');
    function my_admin_styles()  { wp_enqueue_style('thickbox'); }


    add_action('add_meta_boxes', function(){  add_meta_box('my-metaboxx1', 'Galery','func99999', get_post_types(),'normal'); }, 9);
    function func99999($post){ 
        $url =get_post_meta($post->ID,'my-image-for-post', false); ?>

        <input id="my_upl_button" type="button" value="Upload Image" /><br/>
            <?php foreach ($url as $field) { 
             ?>

             <img src="<?php echo $field;?>" style="width:200px;" />

             <?php
             };
            ?>

            <div id="display">

            </div>

            <script>
        jQuery(document).ready( function( $ ) {

            var custom_uploader;
              $('#my_upl_button').click(function(e) {
                e.preventDefault();
                //If the uploader object has already been created, reopen the dialog
                if (custom_uploader) {
                  custom_uploader.open();
                  return;
                }
                //Extend the wp.media object
                custom_uploader = wp.media.frames.file_frame = wp.media({
                  title: 'Choose Image',
                  button: {
                    text: 'Choose Image'
                  },
                  multiple: true
                });
                custom_uploader.on('select', function() {
                  var selection = custom_uploader.state().get('selection');
                  selection.map( function( attachment ) {
                    attachment = attachment.toJSON();
                    $("#display").after("<input id='upload_image' type='text' size='36' name='upload_image' value= " +attachment.url+ " /></br><img src=" +attachment.url+" class='my_image_URL' src=''  width='80px'></br>");

                  });
                });
                custom_uploader.open();
              });

        });
        </script>
<?php
}

add_action( 'save_post', function ($post_id) {
   // foreach here I tried but I could not 
});
二,

在jquery代码中,您使用名称='my\u image\u URL'正确创建输入

$("#show").after("<input class='upload_image' type='text' size='36' name='my_image_URL' value= " +attachment.url+ " /></br><img src=" +attachment.url+" class='my_image' src='' width='80px'></br>");
$(“#show”)。在(“

”)之后;
有人能帮我解答这个问题吗?实际上,我已经尝试了几天使用foreach保存所有选定的图像,但是我无法解决这个问题。有人能帮我解决这个问题吗?实际上,我已经尝试了几天使用foreach保存所有选定的图像,但我无法解析
 add_action( 'save_post', function ($post_id) {

            if (isset($_POST['my_image_URL'])){
            $urls = $_POST['my_image_URL'];

             Foreach ($urls as $url){
                update_post_meta($post_id, 'my-image-for-post',$url);
            }
        }

    });
$("#show").after("<input class='upload_image' type='text' size='36' name='my_image_URL' value= " +attachment.url+ " /></br><img src=" +attachment.url+" class='my_image' src='' width='80px'></br>");