برگزیده های پرشین تولز

محدود کردن کاراکترهای عنوان مطالب

وضعیت
موضوع بسته شده است.

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
سلام.چگونه می توانم هر مطلبی که در سایتم انتشار یافت،طول کاراکترهای آن از 50حرف بیشتر نشود؟
چندین افزونه و اموزش در نت وجود دارد که عملی نیستند.اگر کسی کد یا ترفندی بلده لطفا همین جا اعلام کنه.
ممنون میشم جواب بدید.
 

MOHAMMAD026_1

مدیر بخش ویژه وب مستر
مدیر انجمن
تاریخ عضویت
16 ژوئن 2014
نوشته‌ها
5,056
لایک‌ها
8,688
محل سکونت
ROOT
این افزونه رو تست کردید؟
https://wordpress.org/plugins/limit-post-titles/

پست رو خودتون ارسال میکنید یا توسط ربات ارسال میشه؟
اگه توسط ربات هست، کد های ربات می بایست ویرایش بشه
 

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
این افزونه رو تست کردید؟
https://wordpress.org/plugins/limit-post-titles/

پست رو خودتون ارسال میکنید یا توسط ربات ارسال میشه؟
اگه توسط ربات هست، کد های ربات می بایست ویرایش بشه
مطالب توسط ربات در سایت انتشار میشه.
این افزونه رو تست کردم ولی جواب نداد البته با توجه به گفته شما،کد ربات ویرایش نشده است.
شما راه حل عملی دارید؟
 

MOHAMMAD026_1

مدیر بخش ویژه وب مستر
مدیر انجمن
تاریخ عضویت
16 ژوئن 2014
نوشته‌ها
5,056
لایک‌ها
8,688
محل سکونت
ROOT
مطالب توسط ربات در سایت انتشار میشه.
این افزونه رو تست کردم ولی جواب نداد البته با توجه به گفته شما،کد ربات ویرایش نشده است.
شما راه حل عملی دارید؟
چون مطالب توسط ربات ارسال میشه و دستی نیست، خب مشخص هست افزونه کار نمیکنه!
محدود کردنش چیز خاصی نداره، یکم php وارد باشید میتونید اوکی کنید
این فانکشن ب کارتون میاد:
PHP:
function LimitTitle($Title) {
    $title = mb_substr($Title, "UTF-8");
    $limit = "40";
    $pad="...";

    if(strlen($title) >= ($limit+3)) {
        $title = substr($title, 0, $limit) . $pad;
    }
    echo $title;
}

این فانکشن محدودیت 40 کارکتر داره + اگه بیشتر از 40 کارکتر بشه، بقیه متن رو سه نقطه (...) میزاره
 

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
به آخر فانکشن اضافه کردم قالب و پنل بهم ریخت.
 

MOHAMMAD026_1

مدیر بخش ویژه وب مستر
مدیر انجمن
تاریخ عضویت
16 ژوئن 2014
نوشته‌ها
5,056
لایک‌ها
8,688
محل سکونت
ROOT
فانکشن رو میبایست ابتدا جایی از فایل بزارید و سپس تایتل ارسال ربات رو از فانکشن فوق رد کنید!
به آخر فانکشن اضافه کردم قالب و پنل بهم ریخت.
فانکشن اصلا ربطی ب لود نشدن قالب نداره!
 

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
هر چند متوجه نشدم ولی ممنون از کمک شما
 

mahdi.b20

Registered User
تاریخ عضویت
10 ژانویه 2013
نوشته‌ها
1,175
لایک‌ها
1,406
محل سکونت
سانتیاگو
به جای تابع
کد:
<?php the_title(); ?>
کد زیر را قرار بده
کد:
<?php if (strlen($post->post_title) > 35) {
echo substr(the_title($before = '', $after = '', FALSE), 0, 35) . '...'; } else {
the_title();
} ?>

منبع
 

MOHAMMAD026_1

مدیر بخش ویژه وب مستر
مدیر انجمن
تاریخ عضویت
16 ژوئن 2014
نوشته‌ها
5,056
لایک‌ها
8,688
محل سکونت
ROOT
به جای تابع
کد:
<?php the_title(); ?>
کد زیر را قرار بده
کد:
<?php if (strlen($post->post_title) > 35) {
echo substr(the_title($before = '', $after = '', FALSE), 0, 35) . '...'; } else {
the_title();
} ?>

منبع
در این صورت فقط موقع نمایش مطلب تو قالب سایت، تایتل کوتاه میشه
تایتل اصلی همچنان بلند هست + تو url، rss و... همچنان تایتل اصلی با کارکتر زیاد هست.
 

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
کل فانکشن قالب سایت را قرار دادم
<?php
add_theme_support('post-thumbnails');
set_post_thumbnail_size('120, 120');
?>
<?php
add_filter('post_thumbnail_html','add_post_thumbnail_title_attribute',10,3);
function add_post_thumbnail_title_attribute($html, $post_id, $post_thumbnail_id) {
if( $html == '' ) {
return $html;
} else {
$out = $html;
$thumbnail_image = get_posts(array('p' => $post_thumbnail_id, 'post_type' => 'attachment'));
if ($thumbnail_image && isset($thumbnail_image[0])) {
$title = $thumbnail_image[0]->post_title;
if($title) {
$output = ' title="' . esc_attr($title) . '" ';
$out = str_replace( 'class=', $output . 'class=', $html );
}
}
}
return $out;
}
?>
<?php
remove_filter('get_the_excerpt', 'wp_trim_excerpt');
add_filter('get_the_excerpt', 'improved_trim_excerpt');
function improved_trim_excerpt($text) {
global $post;
if ( '' == $text ) {
$text = get_the_content('');
$text = apply_filters('the_content', $text);
$text = str_replace(']]>', ']]&gt;', $text);
$text = preg_replace('@<script[^>]*?>.*?</script>@si', '', $text);
$text = strip_tags($text, '<p>');
$excerpt_length = 25;
$words = explode(' ', $text, $excerpt_length + 1);
if (count($words)> $excerpt_length) {
array_pop($words);
array_push($words, '[...]');
$text = implode(' ', $words);
}
}
return $text;
}
?>
<?php
function wp_get_postcount($id)
{
//return count of post in category child of ID 15
$count = 0;
$taxonomy = 'category';
$args = array(
'child_of' => $id,
);
$tax_terms = get_terms($taxonomy,$args);
foreach ($tax_terms as $tax_term) {
$count +=$tax_term->count;
}
return $count;
}
?>

اگر ممکن هست کمک کنید.اون تابع اولی پیدا نیست.
 

hossein454545

Registered User
تاریخ عضویت
1 فوریه 2015
نوشته‌ها
647
لایک‌ها
142
سن
29
به جای تابع
کد:
<?php the_title(); ?>
کد زیر را قرار بده
کد:
<?php if (strlen($post->post_title) > 35) {
echo substr(the_title($before = '', $after = '', FALSE), 0, 35) . '...'; } else {
the_title();
} ?>

منبع

در این صورت فقط موقع نمایش مطلب تو قالب سایت، تایتل کوتاه میشه
تایتل اصلی همچنان بلند هست + رو url، rss و... همچنان تایتل اصلی با کارکتر زیاد هست!
فانکشن قالبمو اضافه کردم لطفا نگاه کنید.
 

achardownload

Registered User
تاریخ عضویت
2 مارس 2015
نوشته‌ها
470
لایک‌ها
96
سلام
اگه فقط اندازه عنوان تو قالب مهمه از طریق استایل درستش کنید. اگر نه کد زیر رو امتحان کنید :
کد:
<?php the_title_rss(”,TRUE,”,35); ?>
 
وضعیت
موضوع بسته شده است.
بالا