Disable Set first image as post’s featured image.

This topic contains 5 replies, has 3 voices, and was last updated by  Alex Rollin 6 years, 3 months ago.

We have moved to a support ticketing system and our forums are now closed.

Open Support Ticket
  • Author
    Posts
  • #421062

    TomFox
    Expired Member
    Post count: 41

    Hello,

    how can I disable saving the first image as a featured image?
    Is there a hook to it?

    Best Regards

    Fox

    #421063

    TomFox
    Expired Member
    Post count: 41

    It’s done. I’m using it as a solution:
    add_filter(‘geodir_action_get_request_info’,’avr_geodir_edit_save_request’);

    Thx

    #421078

    Guust
    Moderator
    Post count: 29970

    Thanks for letting us know.

    #421107

    TomFox
    Expired Member
    Post count: 41

    I’m sorry, but I can’t do that the way I was thinking about it.

    Actually, I would have to overload the geodir_set_wp_featured_image () function, but without a function_exists this is not possible.

    I’m still looking for a solution.

    #421108

    TomFox
    Expired Member
    Post count: 41

    This Work’s

    
    
    add_action( 'save_post', 'set_featured_image' );
    function set_featured_image( $post_id )
    {
        global $wpdb, $plugin_prefix;
        $post_type = get_post_type($post_id);
        $table_name = $plugin_prefix . $post_type . '_detail';
        $obj_geodir_profilbild = $wpdb->get_results(  $wpdb->prepare(     "SELECT geodir_profilbild FROM " . $table_name . " WHERE post_id = %d   ", array($post_id) ));
    
          if (count($obj_geodir_profilbild)>0)
        {
              $geodir_profilbild  =$obj_geodir_profilbild[0]->geodir_profilbild;
        }
    // todo Check if featured image exists
       Generate_Featured_Image( $geodir_profilbild,   $post_id );
    }
    
    function Generate_Featured_Image( $image_url, $post_id  )
    {
    
        $upload_dir = wp_upload_dir();
        $image_data = file_get_contents($image_url);
        $filename = basename($image_url);
        if(wp_mkdir_p($upload_dir['path']))     $file = $upload_dir['path'] . '/' . $filename;
        else                                    $file = $upload_dir['basedir'] . '/' . $filename;
        file_put_contents($file, $image_data);
    
        $wp_filetype = wp_check_filetype($filename, null );
        $attachment = array(
            'post_mime_type' => $wp_filetype['type'],
            'post_title' => sanitize_file_name($filename),
            'post_content' => '',
            'post_status' => 'inherit'
        );
        $attach_id = wp_insert_attachment( $attachment, $file, $post_id );
        require_once(ABSPATH . 'wp-admin/includes/image.php');
        $attach_data = wp_generate_attachment_metadata( $attach_id, $file );
        $res1= wp_update_attachment_metadata( $attach_id, $attach_data );
        $res2= set_post_thumbnail( $post_id, $attach_id );
    }
    #421137

    Alex Rollin
    Moderator
    Post count: 27815

    Thanks for sharing, glad you were able to find something that works for you

Viewing 6 posts - 1 through 6 (of 6 total)

We have moved to a support ticketing system and our forums are now closed.

Open Support Ticket