Milad123

انتخاب عکس داخل پست بعنوان تصویر شاخص (عکس در رسانه نیست)

6 پست در این موضوع قرار دارد

سلام به همگی

عکسای داخل پست های ما چون از طریق FTP آپلود میشه، داخل رسانه ی وردپرس نیست

برای همین وردپرس نمیتونه تشخیص بده که اون عکس رو بعنوان اولین عکس بصورت اتوماتیک برای تصویر شاخص انتخاب کنه!

راهی هست برای رفع این مشکل؟

میخوام اولین عکس داخل هر پست اتوماتیک بعنوان تصویر شاخص انتخاب بشه

برای پست های قدیمی میخوام ست بشه...

0

به اشتراک گذاری این پست


لینک به پست

ابتدا کد زیر را در آخر فایل functions.php قالب خود قرار دهید :

<?php
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Defines a default image
$first_img = "http://www.iranwebsv.net/img/no-thumbnail.png";
}
return $first_img;
}
?>

و این هم آدرس تصویر شاخص شما میشه :

<?php echo catch_that_image(); ?>

و در واقع به این صورت :

<img src="<?php echo catch_that_image(); ?>"......

موفق باشید .

1

به اشتراک گذاری این پست


لینک به پست

ابتدا کد زیر را در آخر فایل functions.php قالب خود قرار دهید :

<?php
function catch_that_image() {
global $post, $posts;
$first_img = '';
ob_start();
ob_end_clean();
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $post->post_content, $matches);
$first_img = $matches [1] [0];
if(empty($first_img)){ //Defines a default image
$first_img = "http://www.iranwebsv.net/img/no-thumbnail.png";
}
return $first_img;
}
?>

و این هم آدرس تصویر شاخص شما میشه :

<?php echo catch_that_image(); ?>

و در واقع به این صورت :

<img src="<?php echo catch_that_image(); ?>"......

موفق باشید .

داخل کدهای قالب در جاهای مختلف از تصویر شاخص استفاده شده برای همین باید پست بصورت عادی تصویر شاخص بگیرن

بصورت معمول، این تکه کد وقتی در فانکشن قالب قرار میگیره میاد اتوماتیک اولین تصویر آپلود شده در هر پست رو بعنوان تصویر شاخص اون پست انتخاب میکنه :


<?php
function autoset_featured() {
global $post;
$already_has_thumb = has_post_thumbnail($post->ID);
if (!$already_has_thumb) {
$attached_image = get_children( "post_parent=$post->ID&post_type=attachment&post_mime_type=image&numberposts=1" );
if ($attached_image) {
foreach ($attached_image as $attachment_id => $attachment) {
set_post_thumbnail($post->ID, $attachment_id);
}
}
}
} //end function
add_action('the_post', 'autoset_featured');
add_action('save_post', 'autoset_featured');
add_action('draft_to_publish', 'autoset_featured');
add_action('new_to_publish', 'autoset_featured');
add_action('pending_to_publish', 'autoset_featured');
add_action('future_to_publish', 'autoset_featured');
?>

منتها الان چون تصاویر ما از طریق اف تی پی آپلود میشن و رسانه خالیه، این کد عمل نمیکنه!

امکانش هست این کد رو بصورتی اصلاح کنید که هر تصویری داخل پست هست صرف نظر از اینکه داخل رسانه هستش یا خیر، بذارتش توی تصویر شاخص؟

0

به اشتراک گذاری این پست


لینک به پست

منتها الان چون تصاویر ما از طریق اف تی پی آپلود میشن و رسانه خالیه، این کد عمل نمیکنه!

امکانش هست این کد رو بصورتی اصلاح کنید که هر تصویری داخل پست هست صرف نظر از اینکه داخل رسانه هستش یا خیر، بذارتش توی تصویر شاخص؟

دقیقا بنده نیز همین کد رو بهتون دادم !

اولین تصویری که داخل متن قسمت ارسال مطلب قرار بگیره ، به عنوان تصویر شاخص انتخاب میشه .

موفق باشید .

1

به اشتراک گذاری این پست


لینک به پست

دقیقا بنده نیز همین کد رو بهتون دادم !

اولین تصویری که داخل متن قسمت ارسال مطلب قرار بگیره ، به عنوان تصویر شاخص انتخاب میشه .

موفق باشید .

من این کد رو داخل فانکشن قالب قرار دادم اما نه برای پست های قبل تصویر شاخص انتخاب شد و نه وقتی با وجود اون کد پست جدید زدم!

یعنی در واقع هیچ عملکردی نداشت!

0

به اشتراک گذاری این پست


لینک به پست

من این کد رو داخل فانکشن قالب قرار دادم اما نه برای پست های قبل تصویر شاخص انتخاب شد و نه وقتی با وجود اون کد پست جدید زدم!

یعنی در واقع هیچ عملکردی نداشت!

فقط با قرار دادن کد درون فانکشن که مشکل شما حل نمیشه !

کد آدرس تصویر رو هم قرار بدید :


<img src="<?php echo catch_that_image(); ?>">

0

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

دارای حساب کاربری هستید؟ از اینجا وارد شوید


ورود به حساب کاربری