Nicolas Lagios

Lead Developer & Intergrations Specialist

and

Nicolas Lagios

Lead Developer & Intergrations Specialist

and

Nicolas Lagios

Lead Developer & Intergrations Specialist

  and  

maxservicescanva
Κατηγορίες Blog

WP All Import Συνάρτηση PHP: Ανέβασμα εικόνων και επιστροφή id των εικόνων

Κοινοποίηση σε facebook
Κοινοποίηση σε twitter
Κοινοποίηση σε pinterest
Κοινοποίηση σε linkedin
Κοινοποίηση σε reddit
Κοινοποίηση σε vk
Κοινοποίηση σε odnoklassniki
Κοινοποίηση σε tumblr
Κοινοποίηση σε digg
Κοινοποίηση σε skype
Κοινοποίηση σε stumbleupon
Κοινοποίηση σε mix
Κοινοποίηση σε telegram
Κοινοποίηση σε pocket
Κοινοποίηση σε xing
Κοινοποίηση σε whatsapp
Κοινοποίηση σε email

Δωράκι για τους φίλους του WordPress που κάνουν Import με WP All Import 😉

Για την περίπτωση που χρησιμοποιείτε κάποιο theme ή πρόσθετο το οποίο δεν παίρνει τις επιπλέον εικόνες με τον κλασικό τρόπο (εκτός από την featured εικόνα), τότε κατά πάσα πιθανότητα θα πρέπει με κάποιο τρόπο να αποθηκεύσετε τα id των εικόνων ή ίσως και όλοκληρο το ανεβασμένο url.

Χρησιμοποιώντας την παρακάτω συνάρτηση που έχω φτιάξει, μπορείτε να ανεβάσετε τις εικόνες κατά το import και να επιστρέψετε στο ειδικό πεδίο τα id των εικόνων χωρισμένα με “|”.

Η συνάρτηση είναι πολύ εύκολη και μπορείτε να την αλλάξετε όπως επιθυμείτε, ακόμα και να σας επιστρέφει κάτι άλλο.

Εάν χρειαστείτε βοήθεια, επικοινωνήστε μαζί μου.

Συνάρτηση:


//Synarthsh upload eikonwn gallery kai epistrofhs id gia eidiko pedio
function imageids($url,$url2,$url3,$url4,$url5,$url6,$url7,$url8,$url9,$url10,$url11, $url12,$url13,$url14,$url15,$url16,$url17,$url18,$url19,$url20,$url21,$url22,$url23,$url24,$url25,$url26,$url27,$url28,$url29,$url30){

require_once(ABSPATH . 'wp-admin/includes/media.php');
require_once(ABSPATH . 'wp-admin/includes/file.php');
require_once(ABSPATH . 'wp-admin/includes/image.php');

$urls = array_filter(array($url,$url2,$url3,$url4,$url5,$url6,$url7,$url8,$url9,$url10,$url11, $url12,$url13,$url14,$url15,$url16,$url17,$url18,$url19,$url20,$url21,$url22,$url23,$url24,$url25,$url26,$url27,$url28,$url29,$url30));

if(empty($urls)){
//tipota
}elseif(sizeof($urls) > 1) {
foreach ($urls as $url){
$src = media_sideload_image( $url, null, null, 'src' );
$image_id = attachment_url_to_postid( $src );
$apotelesma .= $image_id."|";
}
return substr($apotelesma,0,-1);
}else{
foreach ($urls as $url){
$src = media_sideload_image( $url, null, null, 'src' );
$image_id = attachment_url_to_postid( $src );
$apotelesma = $image_id;
}
return $apotelesma;
}
}

Update!!!
Μπορεί να αντιμετωπίσετε το εξής πρόβλημα: Όταν ενημερώνετε ήδη ανεβασμένα post, ακόμα και αν επιλέξετε να μην ενημερωθεί το custom field με τις εικόνες, ο κώδικας θα τρέξει κανονικά και θα κατεβάσει τις εικόνες ξανά και ξανά. Γι’ αυτό τον λόγο πρόσθεσα έναν επιπλέον έλεγχο.
Η συνάρτηση που ακολουθεί ελέγχει στην βάση δεδομένων αν υπάρχει το αναγνωριστικό του post ήδη στην βάση και αν ναι, τότε δεν προχωράει με την εκτέλεση της υπόλοιπης συνάρτησης:

</pre>
//Synarthsh upload eikonwn gallery kai epistrofhs id gia eidiko pedio -- ARXH
function imageids($elegxos,$url,$url2,$url3,$url4,$url5,$url6,$url7,$url8,$url9,$url10,$url11,$url12,
$url13,$url14,$url15,$url16,$url17,$url18,$url19,$url20,$url21,$url22,$url23,$url24,$url25,$url26,$url27,$url28,$url29,$url30){
global $wpdb;

$metas = $wpdb->get_results(
$wpdb->prepare("SELECT post_id FROM $wpdb->postmeta WHERE meta_key = 'real_estate_property_identity' AND meta_value = %s", $elegxos)
);

if(empty($metas)){
require_once(ABSPATH . 'wp-admin/includes/media.php');
require_once(ABSPATH . 'wp-admin/includes/file.php');
require_once(ABSPATH . 'wp-admin/includes/image.php');
$urls = array_filter(array($url,$url2,$url3,$url4,$url5,$url6,$url7,$url8,$url9,$url10,$url11,$url12,
$url13,$url14,$url15,$url16,$url17,$url18,$url19,$url20,$url21,$url22,$url23,$url24,$url25,$url26,$url27,$url28,$url29,$url30));
if(empty($urls)){
//tipota
}elseif(sizeof($urls) > 1) {
foreach ($urls as $url){
$src = media_sideload_image( $url, null, null, 'src' );
$image_id = attachment_url_to_postid( $src );
$apotelesma .= $image_id."|";
}
return substr($apotelesma,0,-1);
}else{
foreach ($urls as $url){
$src = media_sideload_image( $url, null, null, 'src' );
$image_id = attachment_url_to_postid( $src );
$apotelesma = $image_id;
}
return $apotelesma;
}
}else{
//tipota
}

}
//Synarthsh upload eikonwn gallery kai epistrofhs id gia eidiko pedio -- TELOS

Δεν υπάρχουν σχόλια on WP All Import Συνάρτηση PHP: Ανέβασμα εικόνων και επιστροφή id των εικόνων

Γράψτε ένα σχόλιο ή ερώτηση