رفتن به مطلب

نمایش یک برگه به صورت نمایش یک پست


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

سلام دوستان،

یه سوالی برام پیش اومده : من یه برگه ی جدید اضافه کردم که تو فهرست بالای سایت نشون میده اما این برگه ی جدید خیلی مهمه، میخوام مثل یه پست جدید به حساب بیاد.

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

خلاصه میخوام اون صفحه کاملا تو چشم باشه.

امیدوارم منظورمو خوب توضیح داده باشم.

لینک به ارسال

سلام

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

لینک به ارسال

خب کوئری بگیرید و در صفحه اول و یا هر صفحه ایی دیگه لازم هست نمایشش بدین !

لینک به ارسال

اینطوری هم میشه


<?php
$home_page_post_id = ***;
$home_page_post = get_post( $home_page_post_id, ARRAY_A );
$content_home = $home_page_post['post_content'];
echo $content_home;
?>

جلوی id به جای *** آیدی page رو بگذارید

لینک به ارسال

برای اینکه مجموعه ای از برگه هاتون رو به صورت مطالب در صفحه اول نمایش بدید (مثلا سه یا یک برگه آخر را همیشه در صفحه اول داشته باشید) بهترین راه استفاده از زمینه دلخواهه به این ترتیب که برای این قبیل برگه ها یک زمینه دلخواه مشخص تعریف می کنید و برای زمینه مورد نظر یک کوئری می سازید

لینک به ارسال

برای اینکه مجموعه ای از برگه هاتون رو به صورت مطالب در صفحه اول نمایش بدید (مثلا سه یا یک برگه آخر را همیشه در صفحه اول داشته باشید) بهترین راه استفاده از زمینه دلخواهه به این ترتیب که برای این قبیل برگه ها یک زمینه دلخواه مشخص تعریف می کنید و برای زمینه مورد نظر یک کوئری می سازید

این لینکی که واسه کوئری دادید رو دیدم، ممنون

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

لینک به ارسال

همونجایی که میخواین نشون داده بشه

مثلا :

اگه صفحه اصلی هست index.php

اگه ستون کناریه داخل sidbare.php

....

لینک به ارسال
  • 3 هفته بعد...

دوستان دوباره سلام،

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


<?php
$out = "";
$number = 10; //حداکثر تعداد عناوین
// save wp_query object
$tmp_query = $wp_query;
// Reset Post Data
wp_reset_postdata();
// Reset Query
wp_reset_query();
// The Query
$the_query = new WP_Query( 'post_type=interview&showposts='.$number );
if ($the_query->have_posts()) :
$out = "<ul>";
// The Loop
while ( $the_query->have_posts() ) : $the_query->the_post();



$out .= '<li class="item-list"><a href="'.get_permalink().'">'.get_the_title().'</a><br/></li> <hr />' ;

endwhile;
$out .= "</ul>";
echo $out;
else:
echo "مطلبی وجود ندارد!";
endif;
// Reset Post Data
wp_reset_postdata();
// Reset Query
wp_reset_query();
// load tmp_query
$wp_query = $tmp_query;
?>

</div>

<br/>
<div class="stripe-line"></div>
<br/>

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

خودم کد the_excerpt() رو که اضافه کردم متن نوشته رو بالای لینک و غیر مرتبط با تیتر نوشته میاره، کد خروجی رو چه جوری تغییر بدم ؟ در ضمن میخوام تصویر شاخص هم نمایش داده بشه کنار پست سفارشیم اونو چه جوری اضافه کنم؟؟

یه مشکل هم دارم اونم اینه که وقتی روی لینک تیتر پست سفارشیم کلیک می کنم متن نوشته رو نشون نمیده و میره به صفحه ی "چیزی یافت نشد" مشکل چیه ؟

لینک به ارسال

حلقه رو به این تغییر بدید:


if ($the_query->have_posts()) :
while ( $the_query->have_posts() ) : $the_query->the_post();

?>

<li class="item-list"><?php the_excerpt(); the_post_thumbnail();?><a href="<?php get_permalink() ?>"><?php get_the_title() ?></a><br/></li> <hr />
<?php
endwhile;
else:
echo "مطلبی وجود ندارد!";
endif;

http://forum.wp-parsi.com/tutorials/article/14-%D9%BE%D8%B3%D8%AA-%D8%B3%D9%81%D8%A7%D8%B1%D8%B4%DB%8C-%D9%BE%DB%8C%D9%88%D9%86%D8%AF-%DB%8C%DA%A9%D8%AA%D8%A7/

لینک به ارسال

برای نمایش خلاصه مطلب


$out .= '<li class="item-list"><a href="'.get_permalink().'">'.get_the_title().'</a><br/>' ;
$out .= the_excerpt;
$out .= '</li><hr/>'

برای نمایش پیوند یکتای صحیح بعد از ایجاد پست تایپ به پیشخوان - تنظیمات - پیوند یکتا برید و ساختار را برای نام مطلب ذخیره کنید (اگر در حال حاضر هم نام مطلب است مجددا ذخیره سازی کنید

کد جناب پارسا را هم می تونید اینجوری استفاده کنید


if ($the_query->have_posts()) :
while ( $the_query->have_posts() ) : $the_query->the_post();
?>

<li class="item-list"><?php the_excerpt(); the_post_thumbnail();?><a href="<?php the_permalink() ?>"><?php the_title() ?></a><br/></li> <hr />
<?php
endwhile;
else:
echo "مطلبی وجود ندارد!";
endif;

لینک به ارسال

درست شد، واقعاً ممنونم آقای imanfakhar... :)

حالا یه سؤال دیگه : ببخشیدا چون مرحله به مرحله میرم جلو، سؤالامم یکی یکی در میاد.

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

واسه بخش مطالبم صفحه بندی میشه ، میهوام اینم اون شکلی شه. :)

پیشاپیش ممنونم

ویرایش شده توسط Saragh
لینک به ارسال

تعداد را که در کدتون نوشته برای صفحه بندی باید از offset استفاده کنید و برای هر سری صفحه جدید با کوئری جدید بسازید یا تاتبعی بنویسید که خودش شماره آخرین مطلب صفحه رو بخونه و با زدن دگمه next مطالب بعدی را احضار کنه

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

لینک به ارسال

این یک نمونه شرط برای صفحه بندیه


<?php if(isset($_GET['pn'])) {
$pn = $_GET['pn'];
$npn = $pn+5;
$mpn = $pn-5;

}
else {
$pn = 0;
$npn = 5;
$mpn = -1;
};?>
<div class="nav">
<?php $recent = new WP_Query("post_type=interview&showposts=1&offset=".$npn);if ($recent->have_posts()) :?>

<a class="next" href="<?php bloginfo('url'); ?>/POST/?pn=<?php echo $npn;?>">صفحه بعد</a>
<?php endif; wp_reset_query();?>
<?php if($mpn >0) : ?>
<a class="pre" href="<?php bloginfo('url'); ?>/POST/?pn=<?php echo $mpn;?>">صفحه قبل</a>
<?php elseif($mpn == 0) :?>
<a class="pre" href="<?php bloginfo('url'); ?>/POST/">صفحه قبل</a>
<?php endif;?>
</div>

و در کدهاتون بجای


$number = 10;

می نویسید


$number = 5;

و بجای


$the_query = new WP_Query( 'post_type=interview&showposts='.$number );


$the_query = new WP_Query( 'post_type=interview&showposts='.$number.'&offset='.$pn );

در کد بالا بجای POST باید نامک صفحه ای قرار بگیره که کوئری توش اجرا می شه

لینک به ارسال

مربوط به نمایش پست به همراه صفحه بندی میشه

اگر لازم ندارید نیاز به استفاده نیست

هر جای صفحه میتوانید تست کنید

لینک به ارسال

کدتون را در چه صفحه ایاجرا می کنید

هر جا کد کوئری را گذاشته بودید و می خواهید پیوندهای صفحه بندی را آنجا نمایش بدید


<?php if(isset($_GET['pn'])) {
$pn = $_GET['pn'];
$npn = $pn+5;
$mpn = $pn-5;
}
else {
$pn = 0;
$npn = 5;
$mpn = -1;
};?>
<div class="nav">
<?php $recent = new WP_Query("post_type=interview&showposts=1&offset=".$npn);if ($recent->have_posts()) :?>
<a class="next" href="<?php echo urlencode(get_permalink(); ?>/?pn=<?php echo $npn;?>">صفحه بعد</a>
<?php endif; wp_reset_query();?>
<?php if($mpn >0) : ?>
<a class="pre" href="<?php echo urlencode(get_permalink(); ?>/?pn=<?php echo $mpn;?>">صفحه قبل</a>
<?php elseif($mpn == 0) :?>
<a class="pre" href="<?php bloginfo('url'); ?>/POST/">صفحه قبل</a>
<?php endif;?>
</div>

را بگذارید در کوئری خودتون هم تغییراتی که گفته شد را انجام بدید

لینک به ارسال

از پاسختون ممنونم، متاسفانه درست جواب نداد.

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

من الان یه دسته بندی جدید با عنوان interview تعریف کردم که رو هر مطلب پست سفارشی که کلیک میشه میره به آدرس www.site/interview/postname . حالا میخوام لینک نمایش که زده میشه بره به یه صفحه با عنوان interview یا مصاحبه و تمام پست های سفارشیمو شبیه صفحه ی آخرین پست ها که یه نوع قالب تعریف شده در سایت هست ، نشون بده.

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

post-2358-0-37369900-1385570209_thumb.jp

بفرمایید باید چیکار کنم؟

لینک به ارسال

خوب لینکی که می خواهید را دستی بسازید بگذارید خارج از حلقه کوئری یعنی


<?php endwhile;?>
<li><a href="site.com/cat/">نمایش همه مطالب این دسته </a></li>

لینک به ارسال

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

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

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

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

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

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

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

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

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