رفتن به مطلب

مشکل در قالب وردپرس


پست های پیشنهاد شده

یه توضیح کامل:

من تو وردپرس چند تا دسته ایجاد کردم تا مطالب رو سازماندهی کنم.(دسته قالب های ویژه، قالب های رایگان، افزونه های ویژه، افزونه های رایگان). بعد 5 صفحه ایجاد کردم از طریق وردپرس (1 صفحه فروشگاه که تمامی مطالب 4 دسته توش قرار میگیره + 4 صفحه قالب های ویژه، قالب های رایگان، افزونه های ویژه، افزونه های رایگان که مطالب داخل هر صفحه از دسته مربوط به اون دریافت میشه و نمایش داده میشه). من برای اینکه مطالب رو جدا نمایش بدم تنها یه راه داشتم که از صفحه فروشگاه که قبلا کد نویسی کرده بودم 4 تا کپی بگیرم و تو کد هر صفحه از

<?php query_posts(' cat = x      '); while ( have_posts() ) : the_post(); ?>

استفاده کنم و همچنین کد



<?php
/*
Template Name: نام برگه
*/
?>

رو اضافه کنم. حالا وقتی این 5 صفحه رو باز میکنم مطالب مربوط به دسته خودشون رو نمایش میدن.

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

28934975208729499347.png

ولی وقتی صفحه shop.php رو به index.php تغییر میدم و از کد زیر به جای کد قبلی استفاده میشه این مشکل حل میشه

کد قبلی:



<?php query_posts('cat=3'); while ( have_posts() ) : the_post(); ?>
<div class="post">
<!-- post title -->
<div class="post-t">
<!-- post title text -->
<div class="post-tt">
<a href="<?php the_permalink() ?>"><h2><?php the_title(); ?></h2></a>
</div>
</div>
<div class="post-content">
<!-- post content image -->
<div class="post-content-image">
<center><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?> </center>
</div>
<div class="post-content-text">
<?php the_content(); ?>
</div>
<!-- read more button -->
<a id="btn" href="<?php the_permalink() ?>"><div class="read-more-btn"><b>ادامه مطلب ...</b></div></a>
</div>

کد جدید


<?php while ( have_posts() ) : the_post(); ?>
<div class="post">
<!-- post title -->
<div class="post-t">
<!-- post title text -->
<div class="post-tt">
<a href="<?php the_permalink() ?>"><h2><?php the_title(); ?></h2></a>
</div>
</div>
<div class="post-content">
<!-- post content image -->
<div class="post-content-image">
<center><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?> </center>
</div>
<div class="post-content-text">
<?php the_content(); ?><br>
</div>
<!-- read more button -->
<a id="btn" href="<?php the_permalink() ?>"><div class="read-more-btn"><b>ادامه مطلب ...</b></div></a>
</div>

</div>
<?php endwhile; ?>

لطفا راهنمایی کنید.

لینک به ارسال

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

لینک به ارسال

بله، مشکل اصلی کار نکردن تگ بیشتر در برگه های وردپرس هست در حالی که اگه از تگ بیشتر تو پست هایی که تو صفحه اصلی نمایش داده میشن استفاده میکنم اون پست ها بدون مشکل نمایش داده میشن. تو همین فروم قبلا این سوال رو مطرح کردم و دوستان گفتند که به جای تابع the_content از تابع the_excerpt استفاده کنم. تابع the_excerpt میاد به تعداد کاراکتر هایی که قبلا مشخص شده پست رو خلاصه میکنه ولی من میخوام خودم مشخص کنم مثلا پست 1 رو سه خط ازش نمایش بده ولی پست 2 رو دو خط(مانند تگ بیشتر که هر کجای متن قرار بدی بقیه رو تو ادامه مطلب نمایش میده).

لینک به ارسال

شما همون content استفاده کنید اما <--more--> برای ادامه مطلب قرار بدید

آموزش داده شده است

لینک به ارسال

کی کار نمی کنه ؟

اگر منظورتون آموزشه که کار می کنه


<?php query_posts('cat=3'); while ( have_posts() ) : the_post(); ?>
<div class="post">
<!-- post title -->
<div class="post-t">
<!-- post title text -->
<div class="post-tt">
<a href="<?php the_permalink() ?>"><h2><?php the_title(); ?></h2></a>
</div>
</div>
<div class="post-content">
<!-- post content image -->
<div class="post-content-image">
<center><?php if ( has_post_thumbnail()) the_post_thumbnail('home-thumb'); ?> </center>
</div>
<div class="post-content-text">
<?php
$content_arr = get_extended (get_the_content() );
echo $content_arr['main']; ?>
</div>
<!-- read more button -->
<a id="btn" href="<?php the_permalink() ?>"><div class="read-more-btn"><b>ادامه مطلب ...</b></div></a>
</div>

لینک به ارسال

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

من وقتی صفحه page.php رو جایگزین index.php میکنم. و صفحه index.php رو مشاهده میکنم پست ها بدون مشکل نمایش داده میشن(تگ بیشتر عمل میکنه)

تشکر از پاسخ شما

لینک به ارسال

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

در ضمن اگر این تابع کار نکنه کوئریتون اصلا نباید نمایش داده بشه و باید بجاش ارور دریافت کنید ولی این ممکن نیست که این تابع را در جای درست بگذارید و مطالب را شبیه قبل ببینید

به جز این تابع راه های دیگه ای هم دارید ولی پیچیده تر از اینند

لینک به ارسال

دوست عزیز با استفاده از the_excerpt در بخش ارسال نوشته گزینه چکیده مطلب رو فعال کنید و در کادر متن : به اندازی که مد نظرتون هست خلاصه مطالب وارد کنید و مطالبتون رو منتشر کنید

لینک به ارسال

تشکر. مشکل حل شد.

قبلا از the_excerpt استفاده کرده بودم ولی نمیدونستم گزینه چکیده مطلب هست.

لینک به ارسال

بالاخره این مشکل از پایه حل شد.

تگ بیشتر به طور پیشفرض تو custom page template عمل نمیکنه برای حل مشکل باید از این کد استفاده کنیم:


<?php
global $more;
$more = 0;
?>
<?php the_content('Continue Reading'); ?>

لینک منبع:http://www.wpbeginner.com/wp-themes/fixing-the-read-more-tag-problem-in-wordpress-static-pages/

ویرایش شده توسط mehdi.jalali96
لینک به ارسال

به گفتگو بپیوندید

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

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...