رفتن به مطلب

مشکل با دستور is_page و if


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

درود

دوستان من با دستور is_page به مشکل خوردم. نمی دونم چرا شرط رو اجرا نمی کنه باید success رو چاپ کنه ولی not work برام چاپ میشه.

<?php
  if (is_page( 'blog' )) {
    echo "success";
  }
  else {
    echo "not work";
  }
?>

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

ممنون و سپاسگزار

ویرایش شده توسط unid_user
لینک به ارسال
در هم اکنون، mehran-b گفته است :

سلام و درود @unid_user

 

یعنی الان توی یه برگه که نامکش blog ئه success چاپ نمیشه؟

بله

لینک به ارسال
در هم اکنون، mehran-b گفته است :

آیدی برگه رو بنویسی چی؟

بازم نمیشه. امتحان کردم.

لینک به ارسال
در 3 دقیقه قبل، mehran-b گفته است :

آیدی برگه رو بنویسی چی؟

این صفحه باید آخرین نوشته ها رو نمایش بده ولی اصلا به جز هدر و فوتر چیزی رو نمایش نمیده. کد بالا رو هم توی هدر گذاشتم.

لینک به ارسال
در 2 دقیقه قبل، unid_user گفته است :

این صفحه باید آخرین نوشته ها رو نمایش بده ولی اصلا به جز هدر و فوتر چیزی رو نمایش نمیده. کد بالا رو هم توی هدر گذاشتم.

add_action('template_redirect', function() {
	
	if(is_page('blog')) {
		echo "Blog Page";
		exit;
	}
	
});

کد بالا رو بذار توی functions.php بعد صفحه blog رو باز کن ببین چی میاد.

لینک به ارسال
در 2 دقیقه قبل، mehran-b گفته است :

کد بالا رو بذار توی functions.php بعد صفحه blog رو باز کن ببین چی میاد.

هیچی عوض نشد.

لینک به ارسال

برگه ای که به نام blog.php هست توش یه سری کدهای html هست که استایل صفحه وبلاگ رو مشخص کرده. بعد اومدم توی تنظیمات خواندن برگه ای که به اسم وبلاگ ساختم رو به آخرین نوشته ها تغییر دادم. توی صفحه blog.php هم فقط get_header() و get_footer() رو گذاشتم. شاید این توضیحات بتونه کمک کنه تا شما راهنمایی بهتری بفرمایید.

لینک به ارسال
در 3 دقیقه قبل، unid_user گفته است :

برگه ای که به نام blog.php هست توش یه سری کدهای html هست که استایل صفحه وبلاگ رو مشخص کرده. بعد اومدم توی تنظیمات خواندن برگه ای که به اسم وبلاگ ساختم رو به آخرین نوشته ها تغییر دادم. توی صفحه blog.php هم فقط get_header() و get_footer() رو گذاشتم. شاید این توضیحات بتونه کمک کنه تا شما راهنمایی بهتری بفرمایید.

بعد قالب برگه Blog رو برای صفحه ای انتخاب کردید که آدرسش

http://www.example.com/blog/

ئه؟

لینک به ارسال
در هم اکنون، mehran-b گفته است :

بعد قالب برگه Blog رو برای صفحه ای انتخاب کردید که آدرسش


http://www.example.com/blog/

ئه؟

منظورتون استفاده از کد زیره که قالب رو به یک صفحه نسبت میده؟

<?php /* Template Name: مقالات */ ?>

 

لینک به ارسال
در هم اکنون، unid_user گفته است :

منظورتون استفاده از کد زیره که قالب رو به یک صفحه نسبت میده؟

اینو که حتما گذاشتید.

منظور اینه که شما توی blog.php اومدید کدی که در ابتدا دادید رو گذاشتید اون کد در صورتی کار میکنه که فایل blog.php رو به یه page توی وردپرس نسبت بدید که اون page ئه slug اش یا اصطلاحا همون نامکش blog باشه.

لینک به ارسال
در 5 دقیقه قبل، mehran-b گفته است :

اینو که حتما گذاشتید.

منظور اینه که شما توی blog.php اومدید کدی که در ابتدا دادید رو گذاشتید اون کد در صورتی کار میکنه که فایل blog.php رو به یه page توی وردپرس نسبت بدید که اون page ئه slug اش یا اصطلاحا همون نامکش blog باشه.

راستش کاملا گیج شدم. اگه ممکنه لیست وار بفرمایید من باید چکار کنم. که اول آخرین پست هام رو توی یه صفحه با استایل خاص نمایش بدم. بعد با نوشتن یه دستور شرطی بتونم با استفاده از header.php به هر صفحه خاص یک عنوان یا متن خاصی رو نمایش بدم. .واقعا ازتون ممنونم. و خیلی سر در گم شدم و سرم درد گرفته.:blink::wacko:

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

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

مرحله خاصی که نداره یه فایل اضافه میکنید به روت قالبتون مثلا با عنوان lastpost.php

بعدش داخلش اینا رو میذارید.

<?php /* Template Name: Last Post */

get_header();

$my_query = new WP_Query(array(
	'post_status' => 'publish',
	'posts_per_page' => 10
));

if($my_query->have_posts()) :

	while($my_query->have_posts()) :
	
		$my_query->the_post();
		
		the_title();
	
	endwhile;
	
	wp_reset_postdata();

endif;

get_footer();

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

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

لینک به ارسال

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

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

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

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

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

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

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

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

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