طاها

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

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

با سلام

این اولین پست من در انجمن وردپرس فارسی است.

سوال من اینه: چطور میتونم با استفاده از زمینه های دلخواه، لینک بعضی از مطالب دلخواه رو در صفحه اصلی سایت قرمز (اصطلاحا داغ) کنم

مثل این نمونه:

r8m_redtitr.jpg

0

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


لینک به پست

سلام ، به انجمن خوش اومدید

لطفاً قبل از ارسال تاپیک قوانین رو بخونین

بار ها توی انجمن توضیح دادیم! یه دسته بندی ، برچسب یا زمینه دلخواه درست کنید و با یه کد شرطی چک کنید اگر اون برچسب رو خورده بود ، توی اون دسته بندی بود یا اون زمینه دلخواه رو داشت بنویسه جدید یا یه عکسی رو بذاره.

خودم توی انجمن توی یه تاپیک یادم هم برچسب رو گفتم هم دسته بندی هم زمینه دلخواه + گذاشتن متن ، عکس و... + نمایش خبر داغ یا جدید

که البتّه متأسفانه لینکش رو پیدا نکردم

یه نمونه ای که یکی از دوستان در مورد زمینه دلخواه توضیح داده:

بازم اگر بگردید فکر کنم بتونید اون تاپیک جامع تر رو پیدا کنید...

2

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


لینک به پست

ارسال شده در (ویرایش شده)

با تشکر از خوشآمدگویی و هم چنین پاسخ شما

لینکی که فرمودید رو من قبلا مطالعه کرده بودم ولی یک ایراد اساسی داشت و اون هم این که این کدها برای "حلقه وردپرس" جواب میده نه در جای دیگه (هرچند بعضی از دوستان اونجا گفتن که اصلا جواب نگرفتن)

و دوم این که نحوه انجام کار رو اصلا نگفتن.

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

ویرایش شده در توسط طاها
0

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


لینک به پست
با تشکر از خوشآمدگویی و هم چنین پاسخ شما لینکی که فرمودید رو من قبلا مطالعه کرده بودم ولی یک ایراد اساسی داشت و اون هم این که این کدها برای "حلقه وردپرس" جواب میده نه در جای دیگه (هرچند بعضی از دوستان اونجا گفتن که اصلا جواب نگرفتن) و دوم این که نحوه انجام کار رو اصلا نگفتن. برای اون پستی هم که گفتید جامع هست خیلی گشتم ولی پیدا نکردم. شاید تیتر عنوانش متفاوت باشه

شما توی چه کدی میخواین ایجادش کنین دقیقاً که نمیشه؟

کدتون رو بدید لطفاً.

0

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


لینک به پست

در یک کوئری هست


<?php
$my_query = new WP_Query('showposts='.$tab_num.'&cat='.$tab_cat1);
while ($my_query->have_posts()):
$my_query->the_post();
?>
<li class="right"><a href="<?php the_permalink(); ?>" target="_blank" ><?php the_title(); ?></a></li>

0

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


لینک به پست

:| انشاءالله حتماً بعداً یادمون بدید که فرق حلقه وردپرس و کوئری شما چیه دقیقاً...

یه زمینه دلخواه بسازید به نام mohem اگر هر مقداری واردش بشه کلاس mohem رو چاپ میکنه ، حالا میخواین استایل background:Red بدید یا هرچیز دیگه با خودتون هست...


<?php
$my_query = new WP_Query('showposts='.$tab_num.'&cat='.$tab_cat1);
while ($my_query->have_posts()):
$my_query->the_post();
?>
<li class="right <?php if(get_field('mohem')) { echo 'mohem'; } ?>"><a href="<?php the_permalink(); ?>" target="_blank" ><?php the_title(); ?></a></li>

یا یه دسته بندی بسازید با اسلاگ mohem و شرط رو تغییر بدید به in_category

2

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


لینک به پست

دست شما درد نکنه

:| انشاءالله حتماً بعداً یادمون بدید که فرق حلقه وردپرس و کوئری شما چیه دقیقاً...

آقا با ناشی ها مهربون باشین

بازم ممنون

0

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


لینک به پست

ارسال شده در (ویرایش شده)

آقای زینلی عزیز

احتراما اگر از زمینه دلخواه شرطی استفاده کنم چطوری میشه؟؟؟

به این صورت که مثلا اگر نام زمینه دلخواه "mohem" و مقدار "1" باشه تیتر رو قرمز کنه و در غیر این صورت تیتر رو دستکاری نکنه. ("در غیر این صورت" یعنی وقتی هیچ نام و مقداری وارد نشه)

اینجا دیگه نباید چیزی به استایل اضافه کرد؟؟

ویرایش شده در توسط طاها
0

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


لینک به پست

دست شما درد نکنه

آقا با ناشی ها مهربون باشین

بازم ممنون

خواهش میکنم عزیز ، جهت کنجکاوی خودم گفتم ، در کل هرجایی شما با هر چیزی فراخوانی کنین کدتون رو این شرطی ها روش عمل میکنن

آقای زینلی عزیز

احتراما اگر از زمینه دلخواه شرطی استفاده کنم چطوری میشه؟؟؟

به این صورت که مثلا اگر نام زمینه دلخواه "mohem" و مقدار "1" باشه تیتر رو قرمز کنه و در غیر این صورت تیتر رو دستکاری نکنه. ("در غیر این صورت" یعنی وقتی هیچ نام و مقداری وارد نشه)

اینجا دیگه نباید چیزی به استایل اضافه کرد؟؟

ببینید به استایل ها شما باید یه mohem حتماً اضافه کنید در هر صورت ، یادتون هم باشه که بعد از اعمال تغییرات باید حتماً دکمه F5 رو بزنید تا تغییرات روی مرورگرتون اعمال بشه.

اگر میخواین مقدار به عنوان مثال 1 رنگ پس زمینه اتون رو قرمز کنه شرط بالا رو باید تغییر بدید به


<?php
$my_query = new WP_Query('showposts='.$tab_num.'&cat='.$tab_cat1);
while ($my_query->have_posts()):
$my_query->the_post();
?>
<li class="right <?php if(get_post_meta($post->ID, 'mohem', true) == 1) { echo 'mohem'; } ?>"><a href="<?php the_permalink(); ?>" target="_blank" ><?php the_title(); ?></a></li>

اگر هم میخواین توی استایل تغییرات ایجاد نکنید بهتره که بعد از echo بذارید: style="background:red;"

موفّق باشید.

2

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


لینک به پست

ارسال شده در (ویرایش شده)

الان کدی که فرمودید رو به صورت زیر وارد کردم ولی اتفاقی نیفتاد:


<li class="right<?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { echo 'style="background:red;"'; } ?>">

به صورت زیر هم وارد کردم ولی باز هیچ اتفاقی نمی افته.


<li class="right<?php
$hotnews = get_post_meta($post->ID, "hotnews", true);
if( $hotnews == '1' ) {echo 'style="background:red;"';} ?>">

توی زمینه های دلخواه هم اسم رو "hotnews" و مقدار رو 1 قرار دادم

ویرایش شده در توسط طاها
0

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


لینک به پست

:| برای اینکه به کدتون یکم دقّت کنید که اگر صحیح جور بشه چه اتفّاقی میفته:


<li class="rightstyle="background:red;"">

اینجوری باید باشه:


<li class="right" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { echo 'style="background:red;"'; } ?>> بقیه کد </li>

موفّق باشید.

1

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


لینک به پست

ارسال شده در (ویرایش شده)

بله درسته الان متوجهش شدم. ممنون از لطف شما

الان کد رو اعمال کردم و درست شد.

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


style="background:red;"

این کدرو قرار دادم


style="color:red;"

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


<li class="right" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { echo 'style="color: red;"'; } ?>>

ولی رنگ تیتر تغییری نمیکنه. شرمنده دیگه قول میگم آخرین مزاحمت باشه براتون.

ویرایش شده در توسط طاها
0

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


لینک به پست
بله درسته الان متوجهش شدم. ممنون از لطف شما الان کد رو اعمال کردم و درست شد. فقط اگر یه راهنمایی دیگه بکنید ممنون میشم. الان این استایل مربوط به بکگرانده و پس زمینه تیتر رو قرمز میکنه. به جای
 style="background:red;" 

این کدرو قرار دادم

 style="color:red;" 

ولی رنگ تیتر تغییری نمیکنه. شرمنده دیگه قول میگم آخرین مزاحمت باشه براتون.

خواهش میکنم مطمئن باشید مزاحمتی نیست... خوشحال میشم کمکتون میکنم

دلیلش اینکه یه استایل دیگه به صورت !important بهش داده شده

یا !important اون رو پاک کنید یا به این !important بدید ، به این صورت:

style="color:red !important;

0

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


لینک به پست

ارسال شده در (ویرایش شده)

الان استایل پوسته رو نگاه کردم فکر کنم مشکل مربوط به اینه که رنگ تیترها دو رنگی هستن یعنی وقتی موس روش نیست یه رنگه ولی وقتی موس میاد روش یه رنگ دیگه میشه

ویرایش شده در توسط طاها
0

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


لینک به پست
الان استایل پوسته رو نگاه کردم فکر کنم مشکل مربوط به اینه که رنگ تیترها دو رنگی هستن یعنی وقتی موس روش نیست یه رنگه ولی وقتی موس میاد روش یه رنگ دیگه میشه

اینجوری دیگه هرچی نوشته باشه قرمز میشه:


<li style="color:red !important;" onmouseover="this.style.color='red'" onmouseout="this.style.color='red'">بقیه کد</li>

1

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


لینک به پست

این خطا رو میده

syntax error, unexpected 'red' (T_STRING), expecting ',' or ';' in

...\left-sidebar.php

on line 18

0

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


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

کد رو اشتباه ادغام کردید:

<li class="right" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { ?> style="color:red !important;" onmouseover="this.style.color='red'" onmouseout="this.style.color='red'" <?php } ?>>بقیه کد</li>

0

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


لینک به پست

اتفاقی نیفتاد. من زیاد یا php وارد نیستم ولی الان به نظر میرسه کد یه اشتباه داره


<li class="right" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { ?> style="color:red !important;" onmouseover="this.style.color='red'" onmouseout="this.style.color='red'" <?php } ?>>بقیه کد</li>

یه دقت کنید که


?>

کجا قرار داره و اون یکی


?php

کجاس.

بعد الان این دستور echo کجا رفت؟

0

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


لینک به پست

آقا مشکل رو پیدا کردم

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

کد رو اینطور اصلاح کردم و درست شد:


<li class="right" ><a href="<?php the_permalink(); ?>" target="_blank" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { echo
'style="color: red;"'; } ?>><?php the_title(); ?></a></li>

1

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


لینک به پست

اتفاقی نیفتاد. من زیاد یا php وارد نیستم ولی الان به نظر میرسه کد یه اشتباه داره


<li class="right" <?php if(get_post_meta($post->ID, 'hotnews', true) == 1) { ?> style="color:red !important;" onmouseover="this.style.color='red'" onmouseout="this.style.color='red'" <?php } ?>>بقیه کد</li>

یه دقت کنید که


?>

کجا قرار داره و اون یکی


?php

کجاس.

بعد الان این دستور echo کجا رفت؟

کد کاملاً درسته ، برای PHP فرقی نمیکنه که زمانی که دارین دستور رو وارد میکنین بسته شده باشه یا باز ، این کد همونه ، میشد جور های دیگه هم نوشتش ولی این آسون ترین راهش هست ، میاد اگر شرطتون درست بود اون تیکه HTML رو وارد میکنه و اگرم نبود که هیچی...

1

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


لینک به پست

خوب شد این تاپیکو دیدم ، من این کدها رو قبلا هم اضافه کردم ، اما فقط روی تیتر اصلی صفحه داخلی تاثیر گذاره ، وقتی رو صفحه اول تیتر ها فراخونی میشه ، این کد عمل نمیکنه! میدونید علت چیه؟

0

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


لینک به پست

نمی دونم اخرش به نتیجه رسیدید یا نه. ولی این کدی است که من در سایتم استفاده می کنم البته با امکاناتی بیشتر


<ul>
<?php
global $post;
$myposts = get_posts(array('numberposts' => 35, 'offset' => 0,'post_status'=>'publish'));
foreach($myposts as $post) :
setup_postdata($post);?>
<li class="post_format_<?php echo get_post_format( get_the_ID() ) ?>" >
<a href="<?php the_permalink(); ?>" title="<?php the_title(); ?>">
<?php $radio = get_field('radio');
if($radio == 'Yes') {?>
<div class="red-link"><?php the_title(); ?></div>
<?php } else{?>
<p><?php the_title(); ?></p>
<?php } ?>
</a>
</li>
<?php endforeach; ?>
<?php wp_reset_query(); ?>
</ul>

شما کافی است یک دکمه رادیویی با نام radio درست کنید بعد از این کد استفاده کنید(این کد مربوط به آخرین اخبار سایت می باشد.)

البته یک ویژگی دیگر هم دارد، آن هم به عهده خود دوستان که کد نویسی استایل را باید خودشان انجام دهند.

وقتی شما یک نوع از فرمت های پست را انتخاب می کنید مثل گفتاورد یا عکس یا ویدیو استایل li هم تغییر می کند.دقت کنید:


<li class="post_format_<?php echo get_post_format( get_the_ID() ) ?>" >

که می توانید با آن کنار لینک عکس ویدیو یا عکس بگذارید.مثل خبرگزاری ایرنا

1

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


لینک به پست

ارسال شده در (ویرایش شده)

کدهاتون امکانات بیشترو اضافه میکنه ، اما قسمت مهمش که بحث رادیو هست چطور عمل میکنه ؟ یعنی یه زمینه دلخواه به اسم radio با مقدار 1 بسازم! اینطوری کلاس تغییر میکنه

1- اضافه کردم ارور میده ، رو خط رادیو ایراد میگیره

2- فک کنم دکمه رادیویی رو تو قسمت ارسال مطلب باید ایجاد کرد و با فعال بودنش کلاس red-link در تیتر مطالب اعمال بشه.. اما ظاهر این کد اینطوری نیست!

ویرایش شده در توسط silver21
0

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


لینک به پست

بله یک رادیو با دو اپشن Yes و No در قسمت مطالب با افزونه advance custom field باید ایجاد کنید.

اون کلاس را با !important چک کنید ببنید درست میشه یا نه

1

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


لینک به پست

ارسال شده در (ویرایش شده)

سلام

من به این صورت کدها رو در پوسته 2015 وردپرس استفاده می کنم:

PHP:


<header class="entry-header">
<?php
if ( get_field('redtitle') ) :
the_title( sprintf( '<h2 class="red-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' );
else :
the_title( sprintf( '<h2 class="black-title"><a href="%s" rel="bookmark">', esc_url( get_permalink() ) ), '</a></h2>' );
endif;
?>
</header>

CSS:


.black-title a {color:black}
.red-title a {color:red}

توی افزونه Advanced Custom Fields یک زمینه با مشخصات زیر بسازید:

برچسب زمینه: اسم دلخواه خودتون

نام زمینه: redtitle

نوع زمینه: جعبه انتخاب (چک باکس)

در قسمت انتخاب ها هم این رو وارد کنید:

red : آیا این نوشته مهم است؟

post-3225-0-83303500-1443538943_thumb.pn

ویرایش شده در توسط Ghaem
1

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


لینک به پست

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

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

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

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


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

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

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


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

  • مطالب مشابه

    • توسط Cinema
      سلام بر همه !
      مشکل بنده این هستش که :
      فک کنم از وقتی که وردپرس رو به 4.2 ارتقاء دادم این مشکل به وجود اومده !
      وقتی که پست ارسال میکنم , اندازه متن , از heading 5 بزرگتر نمیشه !
      یعنی متن رو در ورد پرس با heading 1 ارسال میکنم اما در قالب بیشتر از heading 5 بزرگتر نمیشه !
      مشکل از چیه ؟
      اینم مثال :
      مشکل چیه ؟ با heading 5
      مشکل چیه ؟ با heading 2
      مشکل چیه ؟ با heading 1
      همشون به اندازه heading 5 هستن !